-*- coding: utf-8 -*- commit 4491bb740a9506d76391ac44bb2fe6e483fec952 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-04-12 20:11:15 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-04-12 20:11:15 +0900 teenyup commit 8d142ecff9af7d60728b8cfa9138e8623985c428 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-04-12 19:54:07 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-04-12 19:54:07 +0900 Fix dtoa buffer overrun commit 73f45e5e96ccc13a131f7c0122cf8600ce5b930f Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-04-12 19:53:43 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-04-12 19:53:43 +0900 Just free compiled pattern if no space is used commit 53f5fc4236a754ddf94b20dbb70ab63bd5109b18 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-02-18 18:42:25 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-02-18 18:42:25 +0900 teenyup commit 7fe0ebc4e7abd78501094cbb2d47918c8ff29f60 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-02-17 12:19:17 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-02-17 12:19:17 +0900 merge revision(s) 496591de96b261b8789332c7f8b2bfbd17658955: [Backport #18578] st.c: Do not clear entries_bound when calling Hash#shift for empty hash tab->entries_bound is used to check if the bins are full in rebuild_table_if_necessary. Hash#shift against an empty hash assigned 0 to tab->entries_bound, but didn't clear the bins. Thus, the table is not rebuilt even when the bins are full. Attempting to add a new element into full-bin hash gets stuck. This change stops clearing tab->entries_bound in Hash#shift. [Bug #18578] --- st.c | 1 - test/ruby/test_hash.rb | 13 +++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) commit 8a0dfd4a4ddd63c130298e97a4e04284d0743ff9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2022-02-14 13:57:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2022-02-14 13:57:02 +0900 * 2022-02-14 [ci skip] commit c8b5d7031ebd6bbc0f51582d51a4b47ccd9b0138 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2022-02-14 13:56:43 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2022-02-14 13:56:43 +0900 Merge RubyGems-3.3.7 and Bundler-2.3.7 (#5543) commit 36fa57fca0d5ecb317de8dba616a2225f3cac27a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2022-02-08 15:53:29 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2022-02-08 15:53:29 +0900 Fixed path for ipaddr.rb (#5533) commit bb4d9f82499bf252345e47498d32a2b280342b9f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2022-02-08 00:14:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2022-02-08 00:14:44 +0900 * 2022-02-08 [ci skip] commit 73159727ed88a8f739038984c847bb7313336450 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2022-02-08 00:14:27 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2022-02-08 00:14:27 +0900 Merge ipaddr-1.2.4 (#5526) [Bug #18570] commit 807dd0479267a067e8208a2053b446fa13a2e66f Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-02-07 20:08:50 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-02-07 20:08:50 +0900 merge revision(s) c79d2e54748f52c5023b0a1ee441561df9826c17: [Backport #18562] Fix TAG_THROW through require [Bug #18562] Previously this was being incorrectly swapped with TAG_RAISE in the next line. This would end up checking the T_IMEMO throw_data to the exception handling (which calls Module#===). This happened to not break existing tests because Module#=== returned false when klass is NULL. This commit handles throw from require correctly by jumping to the tag retaining the TAG_THROW state. --- load.c | 2 +- test/ruby/test_exception.rb | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) commit 86c8e15170484fe23b311e567717053f147ffd9c Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-02-07 19:58:46 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-02-07 19:58:46 +0900 merge revision(s) 2a76440fac62b: [Backport #18501] [Bug #18501] Fire write barrier after hash has been written Before this change the write barrier was executed before the key and value were actually reachable via the Hash. This could cause inconsistencies in object coloration which would lead to accidental collection of dup'd keys. Example: 1. Object O is grey, Object P is white. 2. Write barrier fires O -> P 3. Write barrier does nothing 4. Malloc happens, which starts GC 5. GC colors O black 6. P is written in to O (now we have O -> P reference) 7. P is now accidentally treated as garbage --- hash.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) commit e54289bb632047b750f9c9371410d1adff2a740a Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-02-07 19:55:44 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-02-07 19:55:44 +0900 merge revision(s) 67f4729: [Backport #18556] [Bug#18556] Fallback `MAP_ ANONYMOUS` Define `MAP_ANONYMOUS` to `MAP_ANON` if undefined on old systems. --- gc.c | 4 ++++ 1 file changed, 4 insertions(+) commit 6728f692e027ff8ffcfdfb144a54ebf59df8e05f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2022-02-03 08:05:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2022-02-03 08:05:20 +0900 * 2022-02-03 [ci skip] commit 42c9ef769f210d88241a114395dd5ffc27b2fb87 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-02-03 08:04:57 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-02-03 08:04:57 +0900 merge revision(s) 7ff1bf317887c0d7b21e91ad548d07b9f05c540c,e89d80702bd98a8276243a7fcaa2a158b3bfb659: [Backport #18516] An alias can suppress method redefinition warning --- test/ruby/test_alias.rb | 11 +++++++++++ 1 file changed, 11 insertions(+) Fix memory leak at the same named alias [Bug #18516] When aliasing a method to the same name method, set a separate bit flag on that method definition, instead of the reference count increment. Although this kind of alias has no actual effect at runtime, is used as the hack to suppress the method re-definition warning. --- method.h | 1 + test/ruby/test_alias.rb | 18 ++++++++++++++++++ vm_method.c | 9 ++++++++- 3 files changed, 27 insertions(+), 1 deletion(-) commit 7bef8ed183a336b040f051d7c2133b93364920c6 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2022-02-02 17:53:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2022-02-02 17:53:26 +0900 Update bundled gems list at 2022-02-02 commit 6794f8cf928ab8c009b301ec49a5a81e97e6eb2f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2022-02-02 16:57:34 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2022-02-02 16:57:34 +0900 Merge pull request #5482 from hsbt/rubygems-3-3-bundler-2-3 Merge RubyGems 3.3.x and Bundler 2.3.x commit 69463805f0722d90a2049f43e852539b4532bf2e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2022-02-02 13:30:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2022-02-02 13:30:02 +0900 * 2022-02-02 [ci skip] commit 270462103f7885e17d3c9d928d8fcabb4480bcbb Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-02-02 13:29:21 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-02-02 13:29:21 +0900 Remove "Miscellaneous checks" from CI It is expected to use on master branch commit cd4aae430da8303dac9f1be2d1e1b7ce1bc8a458 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-02-01 21:56:08 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-02-01 21:56:08 +0900 merge revision(s) f27eb8148f5a72bbacfebfecc7de9305471bb5c9,d75f7078c831d45ab5ba2fae4fbb308d01a21e46,d5836db1b398a7936b0461b3011db66f6cc8c490: [Backport #18443] Sync io-console gem. --- ext/io/console/console.c | 8 ++++++-- test/io/console/test_io_console.rb | 8 ++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) [ruby/io-console] bump up to 0.5.11 https://github.com/ruby/io-console/commit/ad3805200c --- ext/io/console/io-console.gemspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Fix `Leaked file descriptor: TestIO_Console#test_console_kw` ``` Leaked file descriptor: TestIO_Console#test_console_kw: 10 : #<File:/dev/tty> ``` --- test/io/console/test_io_console.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 8177e3b8d323c3e5d897a8c8239be5f1e9f8f11d Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-02-01 21:53:43 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-02-01 21:53:43 +0900 Revert "Fix console.c usage of `rb_io_wait`." This reverts commit aa3b2c81c8de2e70bd100e92436f15c03523eaf7. commit 1f17463dec2ab1535096cb56005a840eae4fea5b Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-02-01 21:41:56 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-02-01 21:41:56 +0900 merge revision(s) 6a6227e0168b059c3ed34c9f0ace2e5dc2364221: [Backport #18517] Shifting zero always results in zero [Bug #18517] --- numeric.c | 2 ++ 1 file changed, 2 insertions(+) commit 1c426ddb25e2ccb169720e4f9894605596fe594d Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-01-31 19:22:28 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-01-31 19:22:28 +0900 merge revision(s) 5c7af72304d0ad33cd3f21b24a4bc44e8acd5b2c,d650b17686d49c2ce8e6a87039861154e93d4621: [Backport #18497] Assuming EXIT_SUCCESS equals 0 is not portable --- test/ruby/test_fiber.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) `rb_fiber_terminate` must not return [Bug #18497] In a forked process from a fiber, the fiber becomes the only fiber, `fiber_switch` does nothing as there is no other fibers, `rb_fiber_terminate` does not terminate the fiber. In that case, reaches the end of `fiber_entry` finaly, which is declared as "COROUTINE" and should never return. --- cont.c | 3 ++- eval_intern.h | 2 +- test/fiber/test_process.rb | 15 +++++++++++++++ test/ruby/test_fiber.rb | 5 +++++ 4 files changed, 23 insertions(+), 2 deletions(-) commit 629b9da7dbdcaff04d6dde70f2431396f66e03e5 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-01-31 18:15:30 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-01-31 18:15:30 +0900 merge revision(s) f3c77bd480834f2835fe6fef5c0475336248dbde: [Backport #18489] Fix the placeholder subclass entry skipping [Bug #18489] --- class.c | 3 +-- test/ruby/test_module.rb | 9 +++++++++ 2 files changed, 10 insertions(+), 2 deletions(-) commit 5b0c7b4ad00cd2ada282ea1aa03f0c1a75b0df77 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-27 13:08:35 +0900 Commit: NARUSE, Yui <nurse@users.noreply.github.com> CommitDate: 2022-01-31 15:35:55 +0900 Prefer `wait_readable` rather than `IO.select`. commit bdd3cf00370c0e56187f81159565f555c5eb9b6a Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-27 13:06:00 +0900 Commit: NARUSE, Yui <nurse@users.noreply.github.com> CommitDate: 2022-01-31 15:35:55 +0900 Fix incorrect minimum read length. commit aa3b2c81c8de2e70bd100e92436f15c03523eaf7 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-27 13:05:42 +0900 Commit: NARUSE, Yui <nurse@users.noreply.github.com> CommitDate: 2022-01-31 15:35:55 +0900 Fix console.c usage of `rb_io_wait`. commit 8e3bce0841497fc00ccdaf45f6583c25720a2d3f Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-01-31 11:16:52 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-01-31 11:16:52 +0900 merge revision(s) ae5458f228a5477383e9c00425d85d50a3867817: [Backport #18475] thread.c: Convert TAG_BREAK to a normal exception at thread top-level [Bug #18475] --- test/ruby/test_enum.rb | 11 +++++++++++ thread.c | 3 +++ 2 files changed, 14 insertions(+) commit abdd655afd6f3f36553e6bb0d6b3e3eac09ae977 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-01-31 11:15:50 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-01-31 11:15:50 +0900 merge revision(s) 92630e2346a221fdfeaa484632938a06765bc6e5: [Backport #18468] [ruby/optparse] Fix links to the page directory files [Bug #18468] https://github.com/ruby/optparse/commit/dab72c543d --- doc/optparse/creates_option.rdoc | 4 ++-- doc/optparse/option_params.rdoc | 2 +- doc/optparse/tutorial.rdoc | 4 ++-- lib/optparse.rb | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) commit 28ec24db4a8201fa624692cdc1cbef9b00489412 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-01-30 19:08:49 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-01-30 19:08:49 +0900 merge revision(s) a79c59472df38297c246b27713c277f2edaefa7a: [Backport #18292] Allow include before calling Module#initialize This is to allow Module subclasses that include modules before calling super in the subclass's initialize. Remove rb_module_check_initializable from Module#initialize. Module#initialize only calls module_exec if a block is passed, it doesn't have other issues that would cause problems if called multiple times or with an already initialized module. Move initialization of super to Module#allocate, though I'm not sure it is required there. However, it's needed to be removed from Module#initialize for this to work. Fixes [Bug #18292] --- class.c | 1 + object.c | 1 - test/ruby/test_module.rb | 10 ++++++++++ 3 files changed, 11 insertions(+), 1 deletion(-) commit 1a1737530bff683041b8f45e7acac8c5c85c4163 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-01-30 19:07:47 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-01-30 19:07:47 +0900 merge revision(s) c764e368bd9c0487e6cc97f8a62e0e0e99a0d7c5: [Backport #18469] Fix default --jit-max-cache in `ruby --help` changed at 028f1887c2bfa50dcfc1b623470d6ab1b880fdde --- ruby.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit e75246c287436621658bc2b8a5f999d8991e7d1d Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-01-30 19:06:55 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-01-30 19:06:55 +0900 merge revision(s) 5917f49ad03cd3b2c13d3eea85c969a113b83bf8: [Backport #18436] Fix documentation for Dir.glob Dir.glob("*", File::FNM_DOTMATCH) no longer includes ".." in the returned array as of Ruby 3.1. Fixes [Bug #18436] --- dir.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d3a2a3c5420fecfee54cbf3fbdd9287bc6c58f03 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-01-30 19:02:23 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-01-30 19:02:23 +0900 merge revision(s) 9e0a91d0640600f2dfd7fc1d5fae6667019c9ca5: [Backport #18458] Don't segfault if Warning.warn is undefined Check that there is a method entry for the method before passing it to rb_method_entry_arity. Fixes [Bug #18458] --- error.c | 3 ++- test/ruby/test_exception.rb | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) commit 2640161df5cf18d08ec86a0c1b913d4ee99e102a Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-01-30 19:01:49 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-01-30 19:01:49 +0900 merge revision(s) 5414de4b6e4372af832e338f8eb7a9fe8de17c84: [Backport #18453] YJIT: Fix SP index with optarg and unordered kwarg Previously when we were calling a method with an optional argument and multiple keywords arguments which weren't in the order the receiver expected we would use the wrong SP index to rearrange them. Fixes Bug #18453 --- bootstraptest/test_yjit.rb | 16 ++++++++++++++++ yjit_codegen.c | 7 +++++-- 2 files changed, 21 insertions(+), 2 deletions(-) commit 20091ccad34904cb5ded13a8787f6662a8e2df68 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2022-01-30 18:57:52 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2022-01-30 19:01:11 +0900 merge revision(s) 0dc7816c4350683ccd020f5759eee4914de0085d: [Backport #18434] Make RubyVM::AST.of work with code written in `-e` command-line option [Bug #18434] --- ast.c | 11 +++++++---- test/ruby/test_ast.rb | 5 +++++ 2 files changed, 12 insertions(+), 4 deletions(-) commit fb4df44d1670e9d25aef6b235a7281199a177edb Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-12-25 21:22:02 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 21:23:14 +0900 Revert "Do not include external library sources into packages" This reverts commit a042043487eb4c7d39307b8e784ede1856455c3e. (cherry picked from commit 8325094177de60d365b2b5507488f0b53d11c736) commit 1636612cc1c1f624dfcd9d4251b83d460abba1e9 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-12-25 20:59:55 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 21:06:10 +0900 Prevent installing zlib library (cherry picked from commit 82c8acbcfd3197e19620dc6024d08c85ea99a05b) commit 4bb3d4f6761d14e804a908481b7327821065c3c0 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-12-25 20:59:20 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 21:06:10 +0900 Revert "make-snapshot: add -extlibs option" This reverts commit afa9d65d61857792508b1405835b07b78e24449c. It prevents installing libffi. (cherry picked from commit 1cc02078e503a18f6d1fcbd3e4d29c574895957d) commit 0381df9a8f54afb52c7cb253b35524b0341b2a33 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-12-25 20:57:11 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 21:06:10 +0900 fix tool/format-release Pass ruby directory path (cherry picked from commit 05faa36028a0a00788e2416a91e0bba21bd6f6ad) commit ecba970f62809c88315b22eb9bfefdab367a10cd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-25 18:43:37 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 18:55:32 +0900 Update default gems list at 8247b193c0dd06db9ea56812954dda [ci skip] (cherry picked from commit 1ad42f8a761b1f22464d5b15aac7ce994ecffc4b) commit e748dfb9a08935a13defb4646259ea4ca1480c53 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-25 00:18:25 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 18:55:32 +0900 [ruby/io-console] bump up to 0.5.10 https://github.com/ruby/io-console/commit/806c65e22b (cherry picked from commit 8247b193c0dd06db9ea56812954dda8fed89458d) commit f5ddb96c49f6d542b96486e4ad332246ee62d01c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-25 00:18:04 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 18:55:32 +0900 [ruby/io-console] No longer support dead versions https://github.com/ruby/io-console/commit/e9478509e9 (cherry picked from commit 9368fa6c3073d5fe4380a5e84eb59f7cec2ce62c) commit 80917ccbf88a938a1240848a0e1dba31d1ad1c91 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-25 18:24:39 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 18:55:32 +0900 NEWS: mention Time.new argument error more Show an example of Time.new with perhaps unexpected results in earlier versions. (cherry picked from commit 14e550052be73ed35bfcbb0b6be696519ad7e092) commit 12bbae2d4e8dc9cadeb69bf9a2459c510fa2bba5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-25 17:09:19 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 18:39:24 +0900 Suppress undef warnings for USE_RUBY_DEBUG_LOG (cherry picked from commit 975a6efd7ea144275d4774d18ff0f568c1a1dc97) commit 17b48db00f6248fcd42ced7b398f1dcc36ec4dca Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-25 16:50:14 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 18:39:24 +0900 Define fallback RUBY_DEVEL to suppress undef warnings (cherry picked from commit 566bdaef318674c416494786da551021afb1b5d7) commit cd50457455a7a1af5e0bcf896ce019b891038708 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-25 16:19:33 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 18:39:24 +0900 Raise proper exception when month argument is not a name https://bugs.ruby-lang.org/issues/17485#change-89871 (cherry picked from commit 0867b638aff9ec192ca420a44ffa5a77c892e8f2) commit e6e24ee502714b80723d81b3bc555a707747fda3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-25 17:44:23 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 18:39:24 +0900 Fix the names of Thread::Queue and method for the cross-reference (cherry picked from commit 42eb9bf37ac42cc792d619e28d153c164a5e6604) commit fe064b130f1d146159ad43ab4df8ff9c9d2ebf32 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-25 17:42:27 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 18:39:24 +0900 NEWS: Put spaces to make Method and UnboundMethod links (cherry picked from commit 30374b4fb77a1407e5ba8e98be03a92c4a317495) commit 3079bffb8db6e637b7025cedf19d44a00727543c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-25 17:05:39 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 18:38:58 +0900 Add IRB Improvements section to NEWS.md (cherry picked from commit dba24e6a1ae0d7dba313bb5f65a4be927bd6f236) commit 0699f310972e843232889ca8c5f12463dfaaaa48 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-12-25 15:25:41 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-12-25 15:25:41 +0900 v3.1.0p0 commit 0abf781ab431f44c054523a3ab8f2b1c3768c898 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-25 13:14:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-25 13:14:54 +0900 NEWS: Mention about more strict conversions for [Feature #17485] commit 70aa7734e9c9c01b9ce3e4070a551d0334593907 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-25 13:13:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 13:13:21 +0900 Update default gems list at 0f1fbc6421641d80a03f0b72e3d775 [ci skip] commit 0f1fbc6421641d80a03f0b72e3d775a5f35360d0 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-25 12:57:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 12:57:28 +0900 [ruby/irb] Version 1.4.1 https://github.com/ruby/irb/commit/b1d9c34441 commit ddf0cdee4f449c2b71910357183d1ff9ed19e1ea Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-25 12:56:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 12:56:40 +0900 [ruby/irb] Support showing doc by dialog in iTerm2 https://github.com/ruby/irb/commit/a4b95d6634 commit 63d75d38cb3205eb1e005204beb18002beb37643 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-25 11:04:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 11:04:23 +0900 Update default gems list at 40c20110d5791e26e5edaddb6a77cf [ci skip] commit 40c20110d5791e26e5edaddb6a77cf51c1efdede Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-25 00:39:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 10:58:44 +0900 [ruby/reline] Version 0.3.0 https://github.com/ruby/reline/commit/3f6ea92268 commit 04f07713d19cbde1f2d23d7f3b2318a0a84bab5b Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-25 10:33:49 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-25 10:33:49 +0900 Fix typos [ci skip] commit d100c91445529395d208bb8ff46914670935afa9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-25 07:45:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 07:45:36 +0900 Update default gems list at da6a5e3ed16ab0cdda7546dd9caf55 [ci skip] commit da6a5e3ed16ab0cdda7546dd9caf55c59be7b86f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-25 06:27:56 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-25 07:40:52 +0900 Merge RubyGems-3.3.3 and Bundler-2.3.3 Notes: Merged: https://github.com/ruby/ruby/pull/5342 commit 2b2115318b4ee236ef61a3450bf85b16e591006d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-25 03:38:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 03:38:28 +0900 Update default gems list at efce9ecf72842fd2109a34a89b4293 [ci skip] commit efce9ecf72842fd2109a34a89b42933f8c841d93 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-12-25 03:01:01 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-25 03:31:59 +0900 [ruby/openssl] Ruby/OpenSSL 3.0.0 https://github.com/ruby/openssl/commit/bff4080091 commit 44bfe72892a5a07040d806c2aee89ee52955d86d Author: Yusuke Nakamura <yusuke1994525@gmail.com> AuthorDate: 2021-12-21 17:14:30 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-25 03:31:59 +0900 [ruby/openssl] Add test cases to OpenSSL::BN using ractor OpenSSL::BN has been make ractor-safed in 9e7cf9e , but there was no test. And to use 'ractor' annotation, update test-unit to v3.4.6 or higher. https://github.com/ruby/openssl/commit/7541a66911 commit cab8b88a16c4fbc9c95ebebbe2774feee8f7a408 Author: Alan Wu <alanwu@ruby-lang.org> AuthorDate: 2021-12-25 02:35:24 +0900 Commit: Alan Wu <alanwu@ruby-lang.org> CommitDate: 2021-12-25 02:35:24 +0900 NEWS: Adapt YJIT support status to include OpenBSD We don't run YJIT CI checks on OpenBSD so can't claim that we provide first-class maintenance support. However, as of 3b2b28d035c9635b9473c7a03ede04fa6ac57a34, YJIT can at least boot on OpenBSD. commit b81faf4b1fc0e3373596e667084e5c5d54779375 Author: Alan Wu <alanwu@ruby-lang.org> AuthorDate: 2021-12-25 01:59:57 +0900 Commit: Alan Wu <alanwu@ruby-lang.org> CommitDate: 2021-12-25 01:59:57 +0900 Less bravado in YJIT performance claims YJIT can't improve performance of non Ruby software of course. commit 628e84584399f1ddaaf7bee8cba73132e421f703 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-25 00:47:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 00:47:38 +0900 Update default gems list at 90239c4163e0a9aec7add714eb5ad6 [ci skip] commit 90239c4163e0a9aec7add714eb5ad6e6fb246660 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-25 00:41:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 00:41:04 +0900 [ruby/irb] Version 1.4.0 https://github.com/ruby/irb/commit/b80ec5821e commit 214b6128aebba384f62ab8d90cb63654ea5dfe28 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-25 00:41:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 00:41:03 +0900 [ruby/irb] Update dependency, reline >= 0.3.0 https://github.com/ruby/irb/commit/f36ad549c4 commit c815c0be46b83c1c5c50a88cd1452635208fbee4 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 20:07:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 00:32:58 +0900 [ruby/reline] Escape newline(s) in dynamic prompt https://github.com/ruby/reline/commit/9b209ee1ea commit b0db420b0e70753986d42579439acdd7ff0d9e95 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 20:06:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 00:32:57 +0900 [ruby/reline] Escape newline(s) in prompt https://github.com/ruby/reline/commit/b545459fca commit 22cc2243f92ef09c10534412511a02ca8ccd45cb Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 19:57:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 00:32:56 +0900 [ruby/reline] Remove unnecessary parameter https://github.com/ruby/reline/commit/20fcd22564 commit 20dae14ba92c0adf1e47ab4df1a92416d27f35db Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-25 00:20:29 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-25 00:20:53 +0900 Increase wait time commit a88169bbe94f3ee767ae59a3af3038987204b21e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-25 00:20:11 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-25 00:20:53 +0900 Wait for output results to test correctly commit 969bdc6f0701bb7e6149877378ddf906d60dc72f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-25 00:01:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-25 00:01:59 +0900 * 2021-12-25 [ci skip] commit 38b3adc4cb8c40bdbcd0ac8989e4ecb6c03080e9 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-25 00:01:21 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-25 00:01:21 +0900 add a NEWS entry about cvar inline cache commit 03c54a09ecaacb37ddc85d8ca74dc5f57b49aef1 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-24 23:21:41 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-24 23:21:55 +0900 Revert "Revert "Replace an deprecated constant with a new one in did_you_mean"" This reverts commit 1527f7569b0412f3bc7ac98a3461e59a4891ed96. commit 4767cf0cb542e0ac9aea5b97ae1dc6af9d46e603 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-24 23:21:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 23:21:17 +0900 Update default gems list at f9712b029bb6c34a2cf4131f8a5432 [ci skip] commit f9712b029bb6c34a2cf4131f8a54328740fd149f Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-24 21:04:49 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-24 23:20:30 +0900 Sync did_you_mean commit 8d940e3032055faa7271fc517c8f66ea34084542 Author: Soutaro Matsumoto <matsumoto@soutaro.com> AuthorDate: 2021-12-24 22:54:45 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-24 22:54:45 +0900 Bundle RBS 2.0.0 (#5330) * Bundle RBS 2.0.0 * Update NEWS.md Notes: Merged-By: soutaro <matsumoto@soutaro.com> commit 0aca70e559566a9e834ae7bfcd7f8a06bfd9376b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 22:28:57 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 22:29:06 +0900 Output log after loading class to test commit 548c8f5f7aa743ae05610ed372f857a6b488e89c Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-24 22:26:06 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-24 22:26:06 +0900 Prefer to use RTEST when checking result of `rb_io_wait`. (#5341) * Prefer to use RTEST when checking result of `rb_io_wait`. * Consistently use false for signifying no events ready. Notes: Merged-By: ioquatix <samuel@codeotaku.com> commit 4f74153846d951dd8ec66017f4e8e286df8ea925 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-24 19:52:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-24 21:17:27 +0900 Adjust styles [ci skip] commit 0fbf1f193a863a2aa2d69621b530668a268e539a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 20:55:59 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 20:55:59 +0900 Add logging about timeout commit 5138ef3875ca3ee7fc94cea536cb4f9cb50ea3fd Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 20:42:09 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 20:44:02 +0900 Kill process before assertion fails commit f279d41847e07949ca7ad3f2d3d5cbe9fa3aabf5 Author: manga_osyo <manga.osyo@gmail.com> AuthorDate: 2021-12-06 10:04:12 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 20:44:02 +0900 Fix warning in `Lexer::Elem#[]` Changed to use `#pos` `#event` `#tok` `#state` since using Lexer::Elem#[0~4] now gives a warning. see: https://github.com/ruby/ruby/commit/8944009be7418614ce7d4077807ac2b60d4d5d85 https://github.com/ruby/reline/commit/9adbb9af32 commit babc200ee89e9f7329d167b2f725a51486a7f6aa Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-24 20:10:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 20:10:13 +0900 Update default gems list at 67aab88a22bad23cb43058caee6fc0 [ci skip] commit 67aab88a22bad23cb43058caee6fc012265aee3b Author: Akinori MUSHA <knu@idaemons.org> AuthorDate: 2021-12-24 20:06:23 +0900 Commit: Akinori MUSHA <knu@idaemons.org> CommitDate: 2021-12-24 20:06:23 +0900 Import digest v3.1.0 from ruby/digest commit c87c027f18c005460746a74c07cd80ee355b16e4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-21 16:31:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-24 19:11:10 +0900 configure.in: unexpand exec_prefix in includedir Replace `exec_prefix` in includedir as well as bindir, libdir, and so on. [Bug #18373] Notes: Merged: https://github.com/ruby/ruby/pull/5318 commit acfe2f2655ab25d52c4347783c4de99fa2daaf62 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-24 19:11:02 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-24 19:11:02 +0900 Improvements to `rb_io_wait` return value handling and internal implementation. (#5340) Notes: Merged-By: ioquatix <samuel@codeotaku.com> commit 4fccefef052fb042659fe4237d3c2d5d0446dcea Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-03 18:31:36 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 18:23:28 +0900 [ruby/reline] Revert "Change aliased methods to be private" Ruby 2.5 doesn't support "private alias_method" idiom but Ruby on Rails 6.x still support 2.5. 😢 This reverts commit https://github.com/ruby/reline/commit/0f075f562b9b. https://github.com/ruby/reline/commit/4ecaa63b26 commit fc5bc378e54bebc4ef254fa36c3736fbe2e17c43 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-03 15:25:25 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 18:23:28 +0900 [ruby/reline] Change aliased methods to be private https://github.com/ruby/reline/commit/0f075f562b commit a9c59b13da161eec3b7a1b028f83af142509d802 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-27 04:24:26 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 18:23:28 +0900 [ruby/reline] Add doc about em-kill-line macro https://github.com/ruby/reline/commit/2e46493aff commit bad1e153d485cf7b68981a78e78e23c3f118c5a8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-27 04:24:06 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 18:23:28 +0900 [ruby/reline] Implement em_kill_line https://github.com/ruby/reline/commit/9fca6ceb45 commit 6c3cc9c58ab95e963d6255d719e2248cafef7b49 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-27 03:58:19 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 18:23:28 +0900 [ruby/reline] Rename the wrong name "em-kill-line" with the correct name "unix-line-discard" https://github.com/ruby/reline/commit/da7af35d1f commit fd60a235f5feeb2fa63d8e9ebb54e2236c16ce90 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-27 02:32:12 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 18:23:28 +0900 [ruby/reline] Add doc about ed-kill-line, kill-line, em-kill-line, and unix-line-discard https://github.com/ruby/reline/commit/586a48ffe0 commit 9de42d3b347a2576eba81676cab6027b3c03dda7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-27 02:49:30 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 18:23:28 +0900 [ruby/reline] Bind ed-kill-line to C-u on emacs mode https://github.com/ruby/reline/commit/9ab99574f5 commit 15fab6fb17f011dcd2661d961ac3ece1f6a88c88 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-19 22:24:43 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 18:23:28 +0900 [ruby/reline] Support S-Tab to move up completion cursor in vi-mode on Unix https://github.com/ruby/reline/commit/ff278cdc88 commit f2592f281286cbe50587333ab7d94f9137763e64 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-24 18:04:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 18:04:07 +0900 Update default gems list at 35d779c57b266953a93c2f89487e91 [ci skip] commit 1706d1a7f3abd3ed1259607a05f0de1ee85e23c2 Author: Victor Shepelev <zverok.offline@gmail.com> AuthorDate: 2021-12-24 17:55:09 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-24 17:55:09 +0900 [DOC] Document Marshal#load parameter freeze: (#5332) Notes: Merged-By: byroot <jean.boussier@gmail.com> commit 35d779c57b266953a93c2f89487e913d00a40458 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-24 17:53:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-24 17:54:09 +0900 [ruby/readline] Bump version to 0.0.3 https://github.com/ruby/readline/commit/996af225ad commit 106a0e519568ba821b55adc8cf4439507cdaeaac Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-24 17:51:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-24 17:53:52 +0900 [ruby/readline-ext] Bump version to 0.1.4 https://github.com/ruby/readline-ext/commit/6f86713b19 commit 517964d57b9340fc1e0525da56dcd567050e8537 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-09 23:11:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-24 17:33:45 +0900 Move embedded lines outside the here document So that the actually run test code corresponds to the source file line-by-line. commit d81046b2d607d7a87ce3f05ce9239c0ca1104448 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-24 17:12:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 17:12:56 +0900 Update default gems list at 03f16d37bfaae86efe9633843bd26c [ci skip] commit f8a0ef30b20207aa57cce9537babcc283d8f6a4d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 16:26:17 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 17:12:01 +0900 Set time limit for waiting for terminating process within a test Notes: Merged: https://github.com/ruby/ruby/pull/5339 commit 03f16d37bfaae86efe9633843bd26c3bfb9731fb Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 17:01:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 17:04:11 +0900 [ruby/rdoc] Version 6.4.0 https://github.com/ruby/rdoc/commit/4797f28df8 commit 61ca29be1bff5409188ce28a8ca339b96e314f91 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 15:54:18 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-24 16:55:09 +0900 Use UTF-8 for lib/reline on AppVeyor Notes: Merged: https://github.com/ruby/ruby/pull/5338 commit 71e85ec9b5944238e14ac4e651247ecd0a98d27b Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-24 14:24:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-24 16:04:29 +0900 [rubygems/rubygems] Do not use IO#flock on Solaris `io.flock(File::LOCK_EX)` fails on Solaris when the io is opened as read-only. Due to this issue, `make install` of the ruby package failed on Solaris. https://github.com/rubygems/rubygems/commit/5905d17ab2 commit 424800f70711433534d9669cb891dc828e7c7001 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-24 14:46:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 15:01:17 +0900 [ruby/reline] Fix test input_keys to handle "hankaku" characters correctly on Windows The method "input_keys" in test/reline/helper.rb handles a single-byte and 8-bit character as an input with the meta key. However, "test_halfwidth_kana_width_dakuten" in test/reline/test_key_actor_emacs.rb uses a string that contains "hankaku" characters. A "hankaku" character is not with the meta key, but it is a single-byte and 8-bit character on Windows-31J encoding, which confused "input_keys" method. This caused the following error. https://ci.appveyor.com/project/ruby/ruby/builds/41997092/job/ejm77qxgvnlpdwvg ``` 1) Failure: Reline::KeyActor::Emacs::Test#test_halfwidth_kana_width_dakuten [C:/projects/ruby/test/reline/test_key_actor_emacs.rb:2311]: <"\xB6\xDE\xB7\xDE\xB9\xDE\xBA\xDE" (#<Encoding:Windows-31J>)> expected but was <"\e^\e^\e^\e:\e^" (#<Encoding:Windows-31J>)> in <Terminal #<Encoding:Windows-31J>> . <8> expected but was <10>. Finished tests in 1045.472722s, 19.3922 tests/s, 2609.4320 assertions/s. ``` This change introduces "input_raw_keys" that does not convert a single-byte and 8-bit character to "with the meta key", and use it in the test in question. https://github.com/ruby/reline/commit/f6ae0e5d19 commit 167dd73c6c90a79af6e6e14c33e4b2743de866e5 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-24 14:41:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 14:41:11 +0900 Update default gems list at 1a1550ba5d6f2f7631cb69a76e78f9 [ci skip] commit 1a1550ba5d6f2f7631cb69a76e78f9ed31ac30fb Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-12-24 10:55:10 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-12-24 14:35:33 +0900 [ruby/csv] test: reduce size for stability on GitHub Actions https://github.com/ruby/csv/commit/68461aead5 Notes: Merged: https://github.com/ruby/ruby/pull/5336 commit 22ef4f6445376b992b2725124594dad1c77a185e Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-12-24 10:44:11 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-12-24 14:35:33 +0900 [ruby/csv] Revert "parser: fix a keep bug that some texts may be dropped unexpectedly" This reverts commit https://github.com/ruby/csv/commit/5c6523da0a61. This introduces another pbolem. We should try again later. https://github.com/ruby/csv/commit/43a1d6fff1 Notes: Merged: https://github.com/ruby/ruby/pull/5336 commit 002ce9f515d984aa0fe43c51448b36ea3651a395 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-12-24 10:18:35 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-12-24 14:35:33 +0900 [ruby/csv] parser: use row separator explicitly It will improve performance a bit. (But I haven't confirmed it yet...) https://github.com/ruby/csv/commit/06a65b0302 Notes: Merged: https://github.com/ruby/ruby/pull/5336 commit 4a5d372ca8902a649928eb0689aca7edcfaa07b6 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-12-24 10:18:18 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-12-24 14:35:33 +0900 [ruby/csv] parser: fix a keep bug that some texts may be dropped unexpectedly Ruby: [Bug #18245] [ruby-core:105587] Reported by Hassan Abdul Rehman. https://github.com/ruby/csv/commit/5c6523da0a Notes: Merged: https://github.com/ruby/ruby/pull/5336 commit 56a5ae9f52920982a2f1571a57090772c94c8243 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-12-03 06:30:01 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-12-24 14:35:33 +0900 [ruby/csv] Fix a bug that all of ARGF contents may not be consumed GitHub: fix GH-228 Reported by Rafael Navaza. Thanks!!! https://github.com/ruby/csv/commit/81f595b6a1 Notes: Merged: https://github.com/ruby/ruby/pull/5336 commit d137ce50a1fb438b1fa078f5c54a72b7be30c52a Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-12-03 06:29:57 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-12-24 14:35:33 +0900 [ruby/csv] Bump version https://github.com/ruby/csv/commit/e32b666731 Notes: Merged: https://github.com/ruby/ruby/pull/5336 commit c70dc3cafb29d89d0377677ead346495183db47e Author: adamroyjones <10088591+adamroyjones@users.noreply.github.com> AuthorDate: 2021-11-19 06:20:09 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-12-24 14:35:33 +0900 [ruby/csv] Add handling for ambiguous parsing options (https://github.com/ruby/csv/pull/226) GitHub: fix GH-225 With Ruby 3.0.2 and csv 3.2.1, the file ```ruby require "csv" File.open("example.tsv", "w") { |f| f.puts("foo\t\tbar") } CSV.read("example.tsv", col_sep: "\t", strip: true) ``` produces the error ``` lib/csv/parser.rb:935:in `parse_quotable_robust': TODO: Meaningful message in line 1. (CSV::MalformedCSVError) ``` However, the CSV in this example is not malformed; instead, ambiguous options were provided to the parser. It is not obvious (to me) whether the string should be parsed as - `["foo\t\tbar"]`, - `["foo", "bar"]`, - `["foo", "", "bar"]`, or - `["foo", nil, "bar"]`. This commit adds code that raises an exception when this situation is encountered. Specifically, it checks if the column separator either ends with or starts with the characters that would be stripped away. This commit also adds unit tests and updates the documentation. https://github.com/ruby/csv/commit/cc317dd42d Notes: Merged: https://github.com/ruby/ruby/pull/5336 commit 47c53af16872d61576184b0d6935fcf531564cc4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-04 09:02:47 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-12-24 14:35:33 +0900 [ruby/csv] Fix typos [ci skip] (https://github.com/ruby/csv/pull/224) https://github.com/ruby/csv/commit/27c0b66c8f Notes: Merged: https://github.com/ruby/ruby/pull/5336 commit 083cf6a577f12ddf5c850303a08583599400d92d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-24 14:24:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-24 14:34:14 +0900 sync_default_gems.rb: Expand GH-xxxx style GitHub links [ci skip] commit 097c4a2adf6ed640bd5c89653e591a674acd4c6e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-24 14:12:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-24 14:27:03 +0900 sync_default_gems.rb: GitHub links at word boundary only [ci skip] commit 3a59abab0875ef734311a6f74de10dc480445e4a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 13:58:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 13:57:46 +0900 [ruby/reline] Determine 1st char or 2nd char of surrogate pair correctly https://github.com/ruby/reline/commit/182606c847 commit 6050e3e2a6ce2269c56fa74bc5b75a94d064b61f Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-24 12:26:21 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-24 13:52:02 +0900 @@cv is not accessible from non-main ractors Class variables (@@cv) is not accessible from non-main ractors. But without this patch cached @@cv can be read. fix [Bug #18128] Notes: Merged: https://github.com/ruby/ruby/pull/5335 commit e029560b22fef5dd665495a2af01c11ffcd33e12 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-24 11:20:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 11:20:07 +0900 Update default gems list at b0ad6cb371747a04eb12580e74c731 [ci skip] commit ae770cc372cd475f66c8eedea583e8437f7ab92c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 11:04:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 11:03:34 +0900 [ruby/reline] Add encoding info to an assertion of editing line https://github.com/ruby/reline/commit/22d9262d79 commit cf83ba1da777a9bfc26949afdeabf38e2789060d Author: zverok <zverok.offline@gmail.com> AuthorDate: 2021-12-20 16:20:55 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-24 10:36:29 +0900 [DOC] Make sure new GC methods are documented Notes: Merged: https://github.com/ruby/ruby/pull/5306 commit b0ad6cb371747a04eb12580e74c73179173cc89d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-24 09:32:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-24 10:35:31 +0900 Merge RubyGems-3.3.2 and Bundler-2.3.2 Notes: Merged: https://github.com/ruby/ruby/pull/5334 commit de0523feddf740d28fe772f3a22ff9907f88bf69 Author: YO4 <ysno@ac.auone-net.jp> AuthorDate: 2021-12-24 01:54:09 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 10:32:14 +0900 [ruby/irb] irb_info codepage mismatch `chcp` returns different encoding https://github.com/ruby/irb/commit/f80971994a commit 34deea3b42189cd46e88f4a459bd4fc58940aa60 Author: zverok <zverok.offline@gmail.com> AuthorDate: 2021-12-15 07:08:36 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-24 10:31:04 +0900 Add docs for Refinement class Notes: Merged: https://github.com/ruby/ruby/pull/5272 commit fed1629adab07f99b00316cb3ce3ae1ab17f99b5 Author: zverok <zverok.offline@gmail.com> AuthorDate: 2021-12-16 06:59:33 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-24 10:29:31 +0900 Fix StructClass:: class method docs Notes: Merged: https://github.com/ruby/ruby/pull/5279 commit 9ccfc78346436ee1ea79c9ce8b2815320e4fe867 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-12-24 09:43:22 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 09:44:23 +0900 [ruby/bigdecimal] Remove unused variable https://github.com/ruby/bigdecimal/commit/ac7daa5f15 commit 69380c60ce2ddc3c7b6d9987f82f499d63c4b18f Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-24 09:05:12 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-24 09:05:12 +0900 Update badges from README.md [ci skip] commit 0b999bef29ead1faeefd7a034dac435795c9fe1a Author: Victor Shepelev <zverok.offline@gmail.com> AuthorDate: 2021-12-24 05:58:13 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-24 05:58:13 +0900 [DOC] Fix String#unpack and #unpack1 docs (#5331) Notes: Merged-By: byroot <jean.boussier@gmail.com> commit eba05029b0069ee63ac7e93139d5d4de38c25efb Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-24 02:30:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 02:30:04 +0900 Update default gems list at 65d35502bdaa2834934c8952a9eac8 [ci skip] commit 65d35502bdaa2834934c8952a9eac86816a10d14 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-12-24 01:20:15 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:29:02 +0900 [ruby/bigdecimal] Version 3.1.1 https://github.com/ruby/bigdecimal/commit/2ef67c2cc7 commit a1d9fbef05fbf507b4c68cf3fbc50c6e27a3293e Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-12-24 00:26:34 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:29:01 +0900 [ruby/bigdecimal] Fix the result precision of BigDecimal#divmod https://github.com/ruby/bigdecimal/commit/a32f6cb9e2 commit 680a4ebb3ce7a3028b897204c2f0d3a546194eb8 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-12-21 18:40:45 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:29:01 +0900 [ruby/bigdecimal] Version 3.1.0 https://github.com/ruby/bigdecimal/commit/c3453d2b97 commit 0262f34905848c2d5ca4ff680094b8a669775b80 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-21 17:17:16 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:29:01 +0900 [ruby/bigdecimal] Enhanced RDoc for BigDecimal (https://github.com/ruby/bigdecimal/pull/209) * Enhanced RDoc for BigDecimal * Update ext/bigdecimal/bigdecimal.c Remove the instance number of `Float::DIG`. * Update ext/bigdecimal/bigdecimal.c Add BigDecimal call-seq without ndigits. * Update ext/bigdecimal/bigdecimal.c Replace the word sum with value or result in the description of BigDecimal(). * Update ext/bigdecimal/bigdecimal.c Remove the instance value of Float::DIG. * Update ext/bigdecimal/bigdecimal.c Fix mis-description of precision * Update ext/bigdecimal/bigdecimal.c Fix the description of precision determination * Update ext/bigdecimal/bigdecimal.c Add the description of the precision in the Rational case. https://github.com/ruby/bigdecimal/commit/acabb132a4 Co-authored-by: Kenta Murata <3959+mrkn@users.noreply.github.com> commit 79712fc083f483b3ef174f6ab457f8b63b87c43e Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-12-09 22:24:12 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:29:00 +0900 [ruby/bigdecimal] Let BigDecimal#quo accept precision Fix GH-214. https://github.com/ruby/bigdecimal/commit/13e0e93f37 commit 0b8638cd7439570bc553ed1684a9f59da7d9c103 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-12-09 21:50:46 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:29:00 +0900 [ruby/bigdecimal] Add TODO comment https://github.com/ruby/bigdecimal/commit/ef9cf4e69e commit 98918209b7260b4ecb7ea503728ae3f0853866e0 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-12-09 21:35:33 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:29:00 +0900 [ruby/bigdecimal] Allow passing both float and precision in BigDecimal#div Fix GH-212. https://github.com/ruby/bigdecimal/commit/900bb7fcf5 commit d0897e3f3afdc6d1fdb0fa60bdf4b0cb80c7de03 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-12-02 20:02:21 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:59 +0900 [ruby/bigdecimal] Improve extconf to allow using bigdecimal as a git gem e.g. ``` gem "bigdecimal", github: "ruby/bigdecimal" ``` It would fail because bundler regenerates the `gemspec`, so `bigdecimal_version` is gone. https://github.com/ruby/bigdecimal/commit/bccaa66f2c commit 84ae7a5df9aac2dce406e88ece04e839073b461b Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-12-02 17:06:52 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:59 +0900 [ruby/bigdecimal] Add BigDecimal#precision_scale https://github.com/ruby/bigdecimal/commit/c019caeaba commit ea713009ba72a2bfd6929145df40386cf59de2d7 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-12-02 17:03:33 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:59 +0900 [ruby/bigdecimal] [Doc] Add documentation of BigDecimal#n_significant_digits https://github.com/ruby/bigdecimal/commit/ceaf16b03e commit aca96f7ec7899da98df7ece5831730bcf013a76f Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-11-25 14:51:13 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:58 +0900 [ruby/bigdecimal] Add BigDecimal#scale Fixes GH-198. https://github.com/ruby/bigdecimal/commit/4fbec55680 commit 0c63aa11bcbe1d865f9a6ca5e89dfc742bb42f27 Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-26 01:42:34 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:58 +0900 [ruby/bigdecimal] Set rounding mode in example https://github.com/ruby/bigdecimal/commit/8fc83dd2fe commit a8243d07e16cea77dfc9cd323e7cbf8ba478f127 Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-24 04:26:14 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:57 +0900 [ruby/bigdecimal] Set rounding mode in example https://github.com/ruby/bigdecimal/commit/42c999f728 commit de5c14d4d8e5587efceb15f8df416c9d7f3ee216 Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-20 03:07:34 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:57 +0900 [ruby/bigdecimal] Enhanced RDoc for selected methods https://github.com/ruby/bigdecimal/commit/0de9298d15 commit e043829a7f059fe71d389b3aa58326dfe1a69c8e Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-20 02:53:55 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:57 +0900 [ruby/bigdecimal] Enhanced RDoc for selected methods https://github.com/ruby/bigdecimal/commit/6139ea1092 commit d905abb457d7319400f96d83a65de5eb304ab30d Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-11-25 14:55:29 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:56 +0900 [ruby/bigdecimal] Fix BigDecimal#precision for single DECDIG case Fix GH-205 https://github.com/ruby/bigdecimal/commit/7d198394a2 commit 38e98cbdb7c429d0042fd24efd9fec6516fb45f5 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-11-24 00:20:42 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:56 +0900 [ruby/bigdecimal] Keep obj-to-Real link when VpReallocReal returns different pointer https://github.com/ruby/bigdecimal/commit/252748de17 commit 75f552e973ba565ef8615a0c5fd375d3a052b82e Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-22 13:50:26 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:56 +0900 [ruby/bigdecimal] Fix the precision of the adjusted quotient https://github.com/ruby/bigdecimal/commit/8dc8cd339d commit 7b2cfce543b876744544c8b43abdee3c72cab910 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-22 13:49:46 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:55 +0900 [ruby/bigdecimal] Let BigDecimal_DoDivmod use the same precision calculation as BigDecimal_divide https://github.com/ruby/bigdecimal/commit/11cb2c8840 commit e1265c819870c6a4d6763529e9fbd2d70c722fe0 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-22 12:03:37 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:55 +0900 [ruby/bigdecimal] Use larger precision in divide for irrational or recurring results Just in case for irrational or recurring results, the precision of the quotient is set to at least more than 2*Float::DIG plus alpha. [Bug #13754] [Fix GH-94] https://github.com/ruby/bigdecimal/commit/99442c75d3 commit 8ee8ac64239626a9adea4e02ba3f0c4be4895e36 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-11-18 10:59:12 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:55 +0900 [ruby/bigdecimal] Fix trailing zeros handling in rb_uint64_convert_to_BigDecimal Fix GH-192 https://github.com/ruby/bigdecimal/commit/eebc98b85a commit b2a74948b6fe60727235b80ab56b4c701c315aa3 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-10-27 17:31:45 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:54 +0900 [ruby/bigdecimal] Add tests for the issue GH-192 https://github.com/ruby/bigdecimal/commit/e864828b47 commit ed7f4c24d73333a716ce7944a465f430a7f7f910 Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-13 00:52:10 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:54 +0900 [ruby/bigdecimal] Respond to review https://github.com/ruby/bigdecimal/commit/f528a0006e commit ed8ec5dcb3f7fec60cb7fa38a3f1135d50d3bcde Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-13 00:27:52 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:54 +0900 [ruby/bigdecimal] Respond to review https://github.com/ruby/bigdecimal/commit/4eadcdf0a6 commit 44acab76afc46c9276670a47aa0d2813f6d115e4 Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-13 00:14:09 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:53 +0900 [ruby/bigdecimal] Respond to review https://github.com/ruby/bigdecimal/commit/6d69422e37 commit 973e50847248816dea856b48a197320a60f3de2b Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-12 23:46:30 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:53 +0900 [ruby/bigdecimal] Respond to review for #precision https://github.com/ruby/bigdecimal/commit/681cd2d81d commit 5888d3030d822f8554bb2788fc2e8dd24d3afc65 Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-16 02:27:26 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:53 +0900 [ruby/bigdecimal] Enhanced RDoc for bigdecimal.c https://github.com/ruby/bigdecimal/commit/3a35f92f8b commit 01b2ccaa958b7a4a3d38706277045882a509379d Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-15 03:57:36 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:52 +0900 [ruby/bigdecimal] Enhanced RDoc for bigdecimal.c https://github.com/ruby/bigdecimal/commit/31a7a37426 commit 70f2b62dfe91cb7735abd0b6a4b919b6f0ace675 Author: Kenta Murata <3959+mrkn@users.noreply.github.com> AuthorDate: 2021-11-12 23:18:27 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:52 +0900 [ruby/bigdecimal] Use values in RbConfig::LIMITS in test https://github.com/ruby/bigdecimal/commit/14e35f5a70 commit 247d8d2815155467c032dce568d14199028f32ca Author: Kenta Murata <3959+mrkn@users.noreply.github.com> AuthorDate: 2021-11-12 23:08:53 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:51 +0900 [ruby/bigdecimal] Fix the style in test/bigdecimal/test_bigdecimal.rb https://github.com/ruby/bigdecimal/commit/aa31ef2f33 commit ec478d947f218e1b94856941135701fe37e88fbc Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-11-09 20:56:45 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:51 +0900 [ruby/bigdecimal] Fix negative Bignum conversion Introduced in https://github.com/ruby/bigdecimal/commit/4792a917d806 `rb_absint_size` return the number of bytes needed to fit the absolute integer, but negative integers need the sign, so one more bit, and potentially one more byte. https://github.com/ruby/bigdecimal/commit/0f3d5d0eb7 commit c539cfd235b46dfb831fe94b55b547c7ac4a58f6 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-10-27 17:29:40 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:51 +0900 [ruby/bigdecimal] Fix test against #196 https://github.com/ruby/bigdecimal/commit/a834eb92a2 commit 03507498b6be06bea89343fba52f2736de76bd35 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-10-15 21:42:49 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-12-24 02:28:47 +0900 [ruby/bigdecimal] VpCheckException: improve grammar I added a space before the parenthesis, too. https://github.com/ruby/bigdecimal/commit/159af10b17 commit a8f4cc2bfaea2fe37ac6bf99fa1b6c84d7458e1f Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-24 01:27:10 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-24 01:27:10 +0900 [DOC] Enhanced RDoc for IO (#5324) Treats #gets. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 2f2aa21238677db2c4facc85728598e9af4e02e3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-24 00:52:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 00:52:06 +0900 * 2021-12-24 [ci skip] commit 547c27e9e7a37496f1c9cec5de463a3e5d288f4f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 00:41:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 00:51:48 +0900 [ruby/reline] Add a test for halfwidth kana width dakuten https://github.com/ruby/reline/commit/0895a0d4a1 commit 4bb65ee4fec933b87a269edc10e86720f8f24bbe Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-24 00:16:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 00:51:48 +0900 [ruby/reline] Character merging may increase the character width Even if the number of graphemes doesn't change owing to character merging, the character width may increase. https://github.com/ruby/reline/commit/fbcd5f56a7 commit 726cc8122e5abb17a2af156e83ac88c1e4e9a42e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-23 23:08:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 00:51:47 +0900 [ruby/reline] "Halfwidth char + halfwidth (han)dakuten" is a single grapheme. When a halfwidth character is followed by a halfwidth dakuten or a halfwidth handakuten character, it should be treated as a single grapheme. https://github.com/ruby/reline/commit/9f20b9ec28 commit daf4a8884b36f44127fca9d0502080b32eda7f03 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-22 00:01:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-24 00:51:46 +0900 [ruby/reline] Add comment for a following char of combined char https://github.com/ruby/reline/commit/d465667f57 commit 40a1af615197346d423afa38c2854f9faf8ed3f3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-23 20:12:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-23 20:12:45 +0900 Install ruby/digest.h when from ext/digest commit bf1444e5006f18e776a408c01b480884ba01d599 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-23 18:31:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-23 18:43:59 +0900 [DOC] Do not push NEWS update to pull-request commit 1eafa8520669db5796d7a5e89aa490f8c3d5c122 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-23 17:48:32 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-23 18:25:48 +0900 Update bundled gems list at 8f3b5a28d6693277dcdc83f0afb1a1 [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5328 commit 8f3b5a28d6693277dcdc83f0afb1a1a49eef0dd8 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-23 17:47:38 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-23 18:25:48 +0900 Update TypeProf to 0.21.1 Notes: Merged: https://github.com/ruby/ruby/pull/5328 commit c6cf19340a116f21d71ecc218a2e8c31fe2f1d85 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-23 16:09:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-23 18:00:56 +0900 [ruby/pp] [DOC] Update for PP.width_for [Feature #12913] https://github.com/ruby/pp/commit/cad3cc762c commit 2da53b14686d07369486bf435c5de932bf26a9fd Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-23 15:45:09 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-23 16:50:17 +0900 `finalize_deferred` doesn't need VM lock `finalize_list()` acquires VM lock to manipulate objspace state. Notes: Merged: https://github.com/ruby/ruby/pull/5326 commit ca032d5eeaf81692f89f35c55450dcb97df59e16 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-23 15:51:13 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-23 16:49:49 +0900 undef `rb_vm_lookup_overloaded_cme()` Some callable method entries (cme) can be a key of `overloaded_cme_table` and the keys should be pinned because the table is numtable (VALUE is a key). Before the patch GC checks the cme is in `overloaded_cme_table` by looking up the table, but it needs VM locking. It works well in normal GC marking because it is protected by the VM lock, but it doesn't work on `rb_objspace_reachable_objects_from` because it doesn't use VM lock. Now, the number of target cmes are small enough, I decide to pin down all possible cmes instead of using looking up the table. Notes: Merged: https://github.com/ruby/ruby/pull/5327 commit 25e417b773b6f4b78c27a79e06c1277e7a5cf342 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-23 14:49:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-23 14:59:25 +0900 Separate cache key from primary key [ci skip] commit 95da41ee0acfb789ebdd0192eaa8e02f26fe3cc1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-23 14:29:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-23 14:30:12 +0900 Get stdgems JSON files only if modified [ci skip] commit ddfbf531de82916c9f9f684d34f1595aed4a3045 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-23 13:01:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-23 13:01:26 +0900 Update default gems list at d5019949b5c9404d65a1d283375cf9 [ci skip] commit d5019949b5c9404d65a1d283375cf94c0b1b91d4 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-23 12:55:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-23 12:56:07 +0900 [ruby/error_highlight] Bump version https://github.com/ruby/error_highlight/commit/ae3053686f commit 1527f7569b0412f3bc7ac98a3461e59a4891ed96 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-23 10:48:21 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-23 10:48:27 +0900 Revert "Replace an deprecated constant with a new one in did_you_mean" This reverts commit 573d9d3a4a0f112379874cedf4e494515e4b3f15. commit 1f94ae019fa16aefe56f9a8fde9d1a2af08f351e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-23 10:10:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-23 10:10:18 +0900 Update default gems list at de841e2e28a8f721895acb1a76c784 [ci skip] commit de841e2e28a8f721895acb1a76c7847b40cc487a Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-23 10:08:07 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-23 10:09:10 +0900 Revert the commits for did_you_mean This reverts commit feaf4fbc3fa16382fbd07158c448c7b5bdae78b5. This reverts commit 0d4bfbdbe1f880c712b3e60de5fce423e6096f8d. This reverts commit ac4e0978ee4358430396403065eabe1aca05784f. commit c529014b9dc107c2b938f87e13941b6709fc7a76 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-23 09:23:19 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-23 09:44:45 +0900 Update default gems list at 231f2c26b8efd14ce3fd8961292db8 [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5325 commit fb1ab27f535833f1ba1648d7cdce4cc893e36d07 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-23 09:21:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-23 09:44:45 +0900 Merge RubyGems-3.3.1 and Bundler-2.3.1 Notes: Merged: https://github.com/ruby/ruby/pull/5325 commit feaf4fbc3fa16382fbd07158c448c7b5bdae78b5 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-23 09:43:39 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-23 09:43:39 +0900 Remove test that activates Ractor unexpectedly commit bed920f0731a1a89a0e5fc7a7428d21be3ffb8a0 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-23 08:20:09 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-23 08:20:09 +0900 Add fiber scheduler hooks for `pread`/`pwrite`, and add support to `IO::Buffer`. Notes: Merged: https://github.com/ruby/ruby/pull/5249 Merged-By: ioquatix <samuel@codeotaku.com> commit 91c5c1c132994c9ca4540125d462988d83e37a6b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-23 05:41:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-23 05:41:57 +0900 * 2021-12-23 [ci skip] commit 243ecd176d7e9a0a147936d1e02a0452af602ad8 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-23 05:41:39 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-23 05:41:39 +0900 [DOC] Enhanced RDoc for IO (#5321) Treats: #readpartial #read Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 573d9d3a4a0f112379874cedf4e494515e4b3f15 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-22 21:21:25 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-22 21:21:27 +0900 Replace a deprecated constant with a new one in did_you_mean commit 0d4bfbdbe1f880c712b3e60de5fce423e6096f8d Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-22 21:02:00 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-22 21:02:07 +0900 * gems/default_gems: Fix typos commit 2c31f325f59770e8099fcf606a85f26e6fe70f5b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-22 20:30:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-22 20:30:17 +0900 Update default gems list at ac4e0978ee4358430396403065eabe [ci skip] commit ac4e0978ee4358430396403065eabe1aca05784f Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-22 20:29:18 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-22 20:29:18 +0900 * gems/default_gems: Sync did_you_mean commit fdf39963490cf2cf95b30d91bb9b35964c2c2350 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-22 15:33:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-22 15:45:59 +0900 Empty and return the buffer if zero size is given [Bug #18421] In `IO#readpartial` and `IO#read_nonblock`, as well as `IO#read`. Notes: Merged: https://github.com/ruby/ruby/pull/5323 commit 9902398d8613ac4eaf9b90c3d2c1a103a32d61e2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-22 13:13:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-22 14:27:33 +0900 Split too long line I don't have a display enough for 170 columns, and it is hard to use small fonts for my eyes. :( commit c9396a35203fb99e8e6115b36042b2bec116b088 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-12-22 08:59:04 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-12-22 11:10:20 +0900 Show the target Proc on Ractor::IsolationError It's useful for debug. Notes: Merged: https://github.com/ruby/ruby/pull/5320 commit fff9b45fa949f72b5cc6971b54eb3aa384d1d022 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-22 07:52:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-22 07:52:59 +0900 Reverts the accidental commits for rubygems/bundler. We stay to the stable version for releasing Ruby 3.1.0. Revert commits: b86a7ba49252e00e19c22bbcdc821b5acc31ff92 ef973aa7aa65143a4f05d623c016d459426770d0 commit d9570437e296c35c6bce691027530f4d67dd7ef3 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-22 07:03:55 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-22 07:04:27 +0900 Remove incorrectly added `update.rb` file. Notes: Merged: https://github.com/ruby/ruby/pull/5319 commit e30920354f8c4513150c61385220a8e75448d833 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-22 06:57:34 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-22 06:57:34 +0900 Extended interface for IO::Buffer & documentation. Notes: Merged: https://github.com/ruby/ruby/pull/5314 Merged-By: ioquatix <samuel@codeotaku.com> commit b86a7ba49252e00e19c22bbcdc821b5acc31ff92 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-21 03:54:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-22 03:12:57 +0900 [rubygems/rubygems] Fix error when gem specified twice in gemfile under different platforms https://github.com/rubygems/rubygems/commit/83bc87ca98 commit ef973aa7aa65143a4f05d623c016d459426770d0 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-21 03:52:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-22 03:12:56 +0900 [rubygems/rubygems] These commands shouldn't be failing, just warning https://github.com/rubygems/rubygems/commit/04b1ac72b9 commit ad3537738c71ccd62191a7ff79eb720ddef4ea8b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-22 02:49:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-22 02:49:49 +0900 * 2021-12-22 [ci skip] commit 779039a4e00f6d1bd2ccae405fe165ca9026fdc1 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-22 02:49:19 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-22 02:49:19 +0900 add ref to the ticket commit cdb7d699d0641e8f081d590d06d07887ac09961f Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-21 22:09:33 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-21 22:10:03 +0900 Revert commits for did_you_mean This reverts commit 4560091b1c99ab33db0d653b9dd2d977fe4676d5. This reverts commit a6f76122a2395bd914daa0aa04fb5a6ce4e0c045. This reverts commit e59b18a6379c55f15ccda85c27d6997d44ef5293. This reverts commit 505dfae05d56d844ea150676edb87850a406d071. commit 4560091b1c99ab33db0d653b9dd2d977fe4676d5 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-21 22:00:23 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-21 22:00:23 +0900 * gems/default_gems: Make the SPELL_CHECKERS constant as compatible as possible commit a6f76122a2395bd914daa0aa04fb5a6ce4e0c045 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-21 20:03:42 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-21 20:03:47 +0900 * gems/default_gems: Fix CI builds commit e59b18a6379c55f15ccda85c27d6997d44ef5293 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-21 19:08:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-21 19:08:36 +0900 Update default gems list at 505dfae05d56d844ea150676edb878 [ci skip] commit 505dfae05d56d844ea150676edb87850a406d071 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-12-21 19:03:10 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-12-21 19:03:25 +0900 * gems/default_gems: Sync did_you_mean commit 12fa4f2aceff06aeff028a3c72ec8791f78bfdb0 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-21 19:02:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-21 19:02:59 +0900 Added Psych 4 incompatibility to NEWS [Bug #17866][ruby-core:103866] commit 48a0905d25654d2f949ce870a144d8248ccdcf0d Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-21 18:20:21 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-21 18:21:03 +0900 Add missing '%' in format string commit 69470cc5e93781d637726d0ab20a2f46418d3cb6 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-21 17:44:48 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-21 17:44:48 +0900 Fix a typo [ci skip] commit b9aefdfc9f57edbfd286209eca2ab360848f2478 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-21 17:39:43 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-21 17:40:15 +0900 Fix typos commit 1855f901c801a4c21e0d2834da8ef914bf47f3d9 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-21 15:50:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-21 15:50:32 +0900 [ruby/irb] Check colorize option correctly to clear char attr and don't use it for tests https://github.com/ruby/irb/commit/de561cafeb commit 093aaeffbc71cd652393b66f2f6f9b865ab31efd Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-21 15:36:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-21 15:36:28 +0900 [ruby/irb] Add resetting char attr that I forgot https://github.com/ruby/irb/commit/b5f953dc33 commit 10a2273e9951553845212f364172d90c2545c52a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-21 14:57:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-21 15:27:05 +0900 Update default gems list at 69dc2ea46538f47ff5edda3bb16863 [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5317 commit 69dc2ea46538f47ff5edda3bb16863034bd19069 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-21 14:50:44 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-21 15:27:05 +0900 Merge RubyGems-3.3.0 and Bundler-2.3.0 Notes: Merged: https://github.com/ruby/ruby/pull/5317 commit ad450c9fe51c51626dd07f6e766f47d839cae3ba Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-21 14:06:02 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-21 15:21:30 +0900 make `overloaded_cme_table` truly weak key map `overloaded_cme_table` keeps cme -> monly_cme pairs to manage corresponding `monly_cme` for `cme`. The lifetime of the `monly_cme` should be longer than `monly_cme`, but the previous patch losts the reference to the living `monly_cme`. Now `overloaded_cme_table` values are always root (keys are only weak reference), it means `monly_cme` does not freed until corresponding `cme` is invalidated. To make managing easy, move `overloaded_cme_table` to `rb_vm_t`. Notes: Merged: https://github.com/ruby/ruby/pull/5316 commit 3c7e95966d6b9efd201170eb59b0e4a3c4eb6134 Author: Yuta Saito <kateinoigakukun@gmail.com> AuthorDate: 2021-12-18 23:59:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-21 15:14:54 +0900 rbinstall.rb: install ext only when it's configured [Bug #18414] Notes: Merged: https://github.com/ruby/ruby/pull/5297 commit 9b917315f4a5418344df54865cc10bdc7e1f60b7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-21 14:26:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-21 14:26:18 +0900 Make the cache directory [ci skip] commit d58406ffcaa12a4f0b9506293789cc03cd4a6a4f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-21 13:40:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-21 13:40:28 +0900 Ignore hung-ups after success on s390x-linux tentatively [ci skip] commit c29c2afafe5bc550090959af24e7fbedd8e002e9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-23 12:21:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-21 13:34:04 +0900 Refactor setup_narg and extract finish_narg Notes: Merged: https://github.com/ruby/ruby/pull/5020 commit 02a9a72f436c17ce22b990af6379356b331a3039 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-21 12:15:40 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 13:22:55 +0900 Tidy up fiber scheduler interface documentation for `address_resolve` and `timeout_after`. Notes: Merged: https://github.com/ruby/ruby/pull/5315 commit df48db987da2bd623d29d06419f2fbc8b7ecb38a Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-21 06:03:51 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-21 11:03:09 +0900 `mandatory_only_cme` should not be in `def` `def` (`rb_method_definition_t`) is shared by multiple callable method entries (cme, `rb_callable_method_entry_t`). There are two issues: * old -> young reference: `cme1->def->mandatory_only_cme = monly_cme` if `cme1` is young and `monly_cme` is young, there is no problem. Howevr, another old `cme2` can refer `def`, in this case, old `cme2` points young `monly_cme` and it violates gengc assumption. * cme can have different `defined_class` but `monly_cme` only has one `defined_class`. It does not make sense and `monly_cme` should be created for a cme (not `def`). To solve these issues, this patch allocates `monly_cme` per `cme`. `cme` does not have another room to store a pointer to the `monly_cme`, so this patch introduces `overloaded_cme_table`, which is weak key map `[cme] -> [monly_cme]`. `def::body::iseqptr::monly_cme` is deleted. The first issue is reported by Alan Wu. Notes: Merged: https://github.com/ruby/ruby/pull/5311 commit 711342d93565092a8348ac5538bc4b4288d384ba Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-21 08:30:17 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:32:54 +0900 Update cont.c Notes: Merged: https://github.com/ruby/ruby/pull/5280 commit eae5a34be3113120ec17ca87604befaad5ee3fab Author: zverok <zverok.offline@gmail.com> AuthorDate: 2021-12-18 08:01:46 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:32:54 +0900 Add SchedulerInterface#timeout_after and #address_resolve docs Notes: Merged: https://github.com/ruby/ruby/pull/5280 commit 224dfb2d6e95878b70ef76162e51657a5cd3939c Author: zverok <zverok.offline@gmail.com> AuthorDate: 2021-12-16 07:33:25 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:32:54 +0900 Document Fiber::SchedulerInterface#io_read and #io_write Notes: Merged: https://github.com/ruby/ruby/pull/5280 commit 617687df097b8e9646be312c9fdf062090994a37 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-20 19:06:21 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:25:42 +0900 Rename IMMUTABLE to READONLY. Notes: Merged: https://github.com/ruby/ruby/pull/5303 commit 9fbf94ff042f91ecde094ff579784fa52efbc7a1 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-20 17:22:46 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:25:42 +0900 Improve interface for get/set/copy. Notes: Merged: https://github.com/ruby/ruby/pull/5303 commit 2de5dc539b299ae27ea3157ec898a6dba33b6eda Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-20 17:22:28 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:25:42 +0900 Fix handling of clear with offset and without length. Notes: Merged: https://github.com/ruby/ruby/pull/5303 commit c86bcd434da573982ab52522a301ba5499dc13ed Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-20 08:37:05 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:25:42 +0900 Mark non-private mapped files as external. Notes: Merged: https://github.com/ruby/ruby/pull/5303 commit da46b8d8e5d09f896fb1af5dabea12820f02b3d6 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-20 08:17:38 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:25:42 +0900 Default `IO::Buffer#get_string` to use BINARY encoding. Notes: Merged: https://github.com/ruby/ruby/pull/5303 commit c3d8d26ad744d2a2dada135196e7d694d2966008 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-20 08:11:58 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:25:42 +0900 Add tests for `IO::Buffer` `get`/`set`. Notes: Merged: https://github.com/ruby/ruby/pull/5303 commit 71bbc40ffa4bb16ef0fc31f8015f61709fac36ce Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-20 08:11:21 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:25:42 +0900 Rename `to_str` -> `get_string` and add support for encodings. Notes: Merged: https://github.com/ruby/ruby/pull/5303 commit 49166fc74a9cd0bf48baa08d32e020183ad46723 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-20 05:59:45 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:25:42 +0900 Improved exception usage/classes. Notes: Merged: https://github.com/ruby/ruby/pull/5303 commit 71bf5cef75b9d244a06261c9fc0b84fbe5a1592f Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-20 05:43:22 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:25:42 +0900 Fix handling of frozens strings. Notes: Merged: https://github.com/ruby/ruby/pull/5303 commit 9de5c4ec761aad3edc50b38d9824b40665d18911 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-20 05:03:52 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-21 08:25:42 +0900 Fix mapping invalid non-file object. Notes: Merged: https://github.com/ruby/ruby/pull/5303 commit 6ad8cf70713e6ae91a8218d4e0034ebbc1983c69 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-21 07:28:58 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-21 07:28:58 +0900 [DOC] Enhanced RDoc for IO (#5307) Treated: #sync #sync= #fsync #fdatasync #fileno #pid #inspect #to_io Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 7bd25b9753284cf0ea22d9511b55bb2b0da0a3a2 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-20 04:55:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-21 06:48:27 +0900 [rubygems/rubygems] Print warning when running potentially problematic rubygems + ruby combinations https://github.com/rubygems/rubygems/commit/d6df0b7de0 Co-authored-by: André Arko <andre@arko.net> commit 01f95ede0e37cd6a1b7e3db3ed34131c24531210 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-20 06:36:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-21 06:48:27 +0900 [rubygems/rubygems] Rename `BUNDLE_SPEC_RUN` environment variable The `BUNDLE_` prefix should be reserved to first class settings that should be listed when running `bundle config`. This one is just a hacky environment variable that has not corresponding documented setting. https://github.com/rubygems/rubygems/commit/7e255c5058 commit a350ed4123f138866940f7d9be950a2127c7f921 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-20 04:11:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-21 06:48:26 +0900 [rubygems/rubygems] Remove ancient check https://github.com/rubygems/rubygems/commit/d647ab5607 commit 39cf0b5314c206fee5a331dcccd2d80bda11c417 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-21 06:13:34 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-21 06:13:34 +0900 Show whether object is garbage in rb_raw_obj_info() When using `rp(obj)` for debugging during development, it may be useful to know that an object is soon to be swept. Add a new letter to the object dump for whether the object is garbage. It's easy to forget about lazy sweep. Notes: Merged: https://github.com/ruby/ruby/pull/5310 Merged-By: XrXr commit 8b1b4e384f05360b2ca1978b6e5bac54193d7928 Author: Brandon Fish <brandon.j.fish@oracle.com> AuthorDate: 2021-12-21 03:19:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-21 04:57:23 +0900 [rubygems/rubygems] Skip find_in_unresolved_tree test for TruffleRuby due to longer runtime https://github.com/rubygems/rubygems/commit/36b8fbc508 commit 3bd5f27f737c7d365b7d01c43d77a958c224ab16 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-12-21 01:26:14 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-12-21 04:02:15 +0900 Remove Class#descendants Notes: Merged: https://github.com/ruby/ruby/pull/5309 commit c57ac4c6e0acf9b4c1fbb3092eefc89873c5d249 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-21 01:05:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-21 02:01:57 +0900 Fix location of extensions in bundled gems when static-linked-ext Install bundled gem extension files to the gem extension directory under DESTDIR, when static-linked-ext as well as non-static case. Notes: Merged: https://github.com/ruby/ruby/pull/5308 commit 81f08edbd6f1d7c9ebd39dbe6766cde59173e75a Author: zverok <zverok.offline@gmail.com> AuthorDate: 2021-12-20 16:07:25 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-12-21 01:56:03 +0900 [DOC] Document Thread::Backtrace.limit Notes: Merged: https://github.com/ruby/ruby/pull/5305 commit 37aea9d7984d9bf884df121ab0b44168ae1ac0c5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-21 00:16:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-21 00:49:03 +0900 [ruby/reline] Finalize when exception occurred https://github.com/ruby/reline/commit/1f8a3aee43 Co-authored-by: Alex Gittemeier <me@a.lexg.dev> commit c3a3f65b4575898ae2ae457bc4f56d1e6bdb169f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 18:46:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-21 00:13:19 +0900 [ruby/reline] Split off set_signal_handler method In some tests, the LineEditor#reset method is always called, but doesn't need to set the signal handlers there, so cuts it out to a separate method. https://github.com/ruby/reline/commit/b143c4f5f9 commit 95c61c8d827959b30c12b1a5fe32df95cab81cbd Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 18:46:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-21 00:13:18 +0900 [ruby/reline] Remove unnecessary clearing signal handler https://github.com/ruby/reline/commit/7a758e73dc commit e54e99bd163e7cffec227067d5749d0d30c52710 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-21 00:11:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-21 00:11:19 +0900 * 2021-12-21 [ci skip] commit 6b67f0631284b1be8e56e20ec133a1b3386fc090 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-12-20 23:59:34 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-21 00:05:24 +0900 test/fiber/test_io_buffer.rb: fix file descriptor leaks I got the warning while running "make test-all": Leaked file descriptor: TestFiberIOBuffer#test_write_nonblock: 9 : #<UNIXSocket:fd 9> Closed file descriptor: TestFiberIOBuffer#test_read_write_blocking: 9 Leaked file descriptor: TestFiberIOBuffer#test_timeout_after: 10 : #<UNIXSocket:fd 10> Closed file descriptor: TestFiberIOBuffer#test_read_nonblock: 10 commit ac757b218c66569be6789144b149d6d798c72d98 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-12 10:43:46 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:04 +0900 [ruby/openssl] pkey: use EVP_PKEY_CTX_new_from_name() on OpenSSL 3.0 Replace EVP_PKEY_CTX_new_id() with the new EVP_PKEY_CTX_new_from_name() which takes the algorithm name in a string instead of in an NID. https://github.com/ruby/openssl/commit/d6535d13d1 commit 61e426ae059945088b2bf84cdf1c8bdef273f314 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-03-20 23:16:41 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:04 +0900 [ruby/openssl] pkey: assume a pkey always has public key components on OpenSSL 3.0 OpenSSL 3.0's EVP_PKEY_get0() returns NULL for provider-backed pkeys. This causes segfault because it was supposed to never return NULL before. We can't check the existence of public key components in this way on OpenSSL 3.0. Let's just skip it for now. https://github.com/ruby/openssl/commit/ccdb6f7bfa commit 2df917ed4facc67eae50266d711ec50335201bc3 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-12-12 00:47:35 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:04 +0900 [ruby/openssl] ssl: update test_options_disable_versions Use the combination of TLS 1.2 and TLS 1.3 instead of TLS 1.1 and TLS 1.2 so that will the test case will be run on latest platforms. https://github.com/ruby/openssl/commit/e168df0f35 commit 15eefd30add49c9c2c95551791e7bfc189adc46b Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-12-12 00:28:35 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:03 +0900 [ruby/openssl] ssl: update test_accept_errors_include_peeraddr test case Use a different invalid data example to prevent SSLSocket#accept from reaching EOF. https://github.com/ruby/openssl/commit/2e089c1916 commit 0b3482c0e75c26a8388521ad21f3eb013f4a9938 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-11-17 11:39:06 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:03 +0900 [ruby/openssl] ssl: add constants for new SSL_OP_* flags Add all SSL_OP_* constants defined in OpenSSL 3.0.0 which are not specific to DTLS. https://github.com/ruby/openssl/commit/b1ee2f23b2 commit b2fb503dabaf421997f20fa96cbf4e11e5d5206d Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-15 00:51:58 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:03 +0900 [ruby/openssl] engine: disable OpenSSL::Engine on OpenSSL 3.0 The entire ENGINE API is deprecated in OpenSSL 3.0 in favor of the new "Provider" concept. OpenSSL::Engine will not be defined when compiled with OpenSSL 3.0. We would need a way to interact with providers from Ruby programs, but since the concept is completely different from the ENGINE API, it will not be through the current OpenSSL::Engine interface. https://github.com/ruby/openssl/commit/69a27d8de4 commit 79a6f4349d0aebc7ee2141df43d35f17642fc096 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-12-11 16:30:30 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:03 +0900 [ruby/openssl] hmac: skip test_dup on OpenSSL 3.0 for now EVP_MD_CTX_copy() doesn't seem to work as intended on HMAC EVP_MD_CTX on OpenSSL 3.0.0 and causes a double free. I haven't found the root problem yet, but let's skip the test case for now. https://github.com/ruby/openssl/commit/4699581639 commit c1a7c6df18f6d6eb0c701443b1231ea2c0baf6ea Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-12-11 16:27:42 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:02 +0900 [ruby/openssl] hmac: fix wrong usage of EVP_DigestSignFinal() According to the manpage, the "siglen" parameter must be initialized beforehand. https://github.com/ruby/openssl/commit/6a60c7b2e7 commit cfcdd2b4bd6c2420ecc93a8f77e553b53595b7ef Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-24 17:50:18 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:02 +0900 [ruby/openssl] cipher: update test_ciphers Do not attempt to actually use all algorithms. Not all algorithms listed in OpenSSL::Cipher.ciphers are always available. https://github.com/ruby/openssl/commit/91d04f991f commit 8ebf5978852e22358cbcdf74c0eb506f22e2c73f Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-09-21 18:29:59 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:02 +0900 [ruby/openssl] pkey: deprecate PKey#set_* methods OpenSSL 3.0 made EVP_PKEY immutable. This means we can only have a const pointer of the low level struct and the following methods can no longer be provided when linked against OpenSSL 3.0: - OpenSSL::PKey::RSA#set_key - OpenSSL::PKey::RSA#set_factors - OpenSSL::PKey::RSA#set_crt_params - OpenSSL::PKey::DSA#set_pqg - OpenSSL::PKey::DSA#set_key - OpenSSL::PKey::DH#set_pqg - OpenSSL::PKey::DH#set_key - OpenSSL::PKey::EC#group= - OpenSSL::PKey::EC#private_key= - OpenSSL::PKey::EC#public_key= There is no direct replacement for this functionality at the moment. I plan to introduce a wrapper around EVP_PKEY_fromdata(), which takes all key components at once to construct an EVP_PKEY. https://github.com/ruby/openssl/commit/6848d2d969 commit b93ae54258684d0c3d1501400af949c013f44fba Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-12-17 02:21:42 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:02 +0900 [ruby/openssl] pkey/ec: deprecate OpenSSL::PKey::EC#generate_key! OpenSSL::PKey::EC#generate_key! will not work on OpenSSL 3.0 because keys are made immutable. Users should use OpenSSL::PKey.generate_key instead. https://github.com/ruby/openssl/commit/5e2e66cce8 commit 0d698be04f6c76250706e8d56f542c3c7fca0fa7 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-22 16:24:07 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:02 +0900 [ruby/openssl] pkey/dh: deprecate OpenSSL::PKey::DH#generate_key! OpenSSL::PKey::DH#generate_key! will not work on OpenSSL 3.0 because keys are made immutable. Users should use OpenSSL::PKey.generate_key instead. https://github.com/ruby/openssl/commit/8ee6a582c7 commit 50b90c5fc3480d3193c9cf161c2a6e71cc688189 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-12-17 02:22:25 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:01 +0900 [ruby/openssl] pkey/ec: avoid using EC#public_key= in EC#dh_compute_key Similarly to DH#compute_key, work around it by constructing a SubjectPublicKeyInfo. This should be considered as a temporary implementation. https://github.com/ruby/openssl/commit/fc9aabc18d commit dc3f37c6cc64139848c074571707399a225f2efe Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-12-12 01:25:20 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:01 +0900 [ruby/openssl] pkey/dh: avoid using DH#set_key in DH#compute_key DH#set_key will not work on OpenSSL 3.0 because keys are immutable. For now, let's reimplement DH#compute_key by manually constructing a DER-encoded SubjectPublicKeyInfo structure and feeding it to OpenSSL::PKey.read. Eventually, we should implement a new method around EVP_PKEY_fromdata() and use it instead. https://github.com/ruby/openssl/commit/46ca47060c commit df6589e418adb2a4018e40d53dab2fd5556ed41e Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-22 16:33:59 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:01 +0900 [ruby/openssl] pkey: use EVP_PKEY_dup() if available We can use it to implement OpenSSL::PKey::PKey#initialize_copy. This should work on all key types, not just DH/DSA/EC/RSA types. https://github.com/ruby/openssl/commit/66cd8cbaaf commit c1a36ebfda8ba570173e2844bc584786852e6190 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-12 18:32:40 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:01 +0900 [ruby/openssl] pkey: allocate EVP_PKEY on #initialize Allocate an EVP_PKEY when the content is ready: when #initialize or #initialize_copy is called, rather than when a T_DATA is allocated. This is more natural because the lower level API has been deprecated and an EVP_PKEY is becoming the minimum unit of handling keys. https://github.com/ruby/openssl/commit/74f6c61756 commit 02a58fbfd1406acde30bb7ca4d019f2bd09bfacd Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-12 13:55:10 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:00 +0900 [ruby/openssl] pkey: do not check NULL argument in ossl_pkey_new() Passing NULL to ossl_pkey_new() makes no sense in the first place, and in fact it is ensured not to be NULL in all cases. https://github.com/ruby/openssl/commit/316cb2a41f commit 6ef0f272ebb2a4bd95471afcfe5224e72d2dad62 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-03-20 23:16:16 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:00 +0900 [ruby/openssl] pkey: use OSSL_DECODER to load encrypted PEM on OpenSSL 3.0 OpenSSL 3.0 has rewritten routines to load pkeys (PEM_read_bio_* and d2i_* functions) around the newly introduced OSSL_DECODER API. This comes with a slight behavior change. They now decrypt and parse each encountered PEM block, then check the kind of the block. This used to be the reverse: they checked the PEM header to see the kind, and then decrypted the content. This means that the password callback may now be called repeatedly. Let's use the OSSL_DECODER API directly on OpenSSL 3.0 so that the return value from the password callback will be reused automatically. https://github.com/ruby/openssl/commit/a84ea531bb commit 582606dc58d51d333e30860c1f2cea7a6774c7f8 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-11-03 23:31:29 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-12-20 23:42:00 +0900 [ruby/openssl] pkey: test parsing concatenated PEM string PEM-encoded private keys are sometimes stored together with irrelevant PEM blocks, such as the corresponding X.509 certificate. PEM_read_bio_*() family automatically skips unknown PEM blocks, but on OpenSSL 3.0 we will be using the new OSSL_DECODER API instead due to some breaking changes around the password callback. Let's add a test case so that we won't break the current behavior. https://github.com/ruby/openssl/commit/8c185e0ae5 commit 1c72c95d999040dbe9399d3687d8e52f654aa5bf Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-20 19:44:56 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-20 19:45:25 +0900 test/ruby/test_ast.rb: Avoid a "method redefined" warning commit 26c9ef6a890f0d4e51caefd303fd93356bb4d596 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-20 19:25:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-20 19:33:58 +0900 [DOC] Skip tests if only NEWS.md changed commit 7700e9a5cc617db9c283a8b409faffab98e2d602 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-20 18:50:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 18:50:16 +0900 Update bundled gems list at 2021-12-20 commit d2e63af474e437fdaa32ca86d7968619cc334184 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-20 18:36:31 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-20 18:36:50 +0900 Update TypeProf to 0.21.0 commit 87b968c9037be507267dbd2e94a74c3074bca826 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-16 14:29:10 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-20 18:26:58 +0900 [ruby/psych] psych depends stringio only CRuby https://github.com/ruby/psych/commit/e7bbf26cb2 commit 4db88173d88225b26fdb793be4acae9d2d7e1a24 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-20 18:26:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 18:26:42 +0900 Update default gems list at 706c7a27fa00f72ec4f5d2f3af8151 [ci skip] commit 706c7a27fa00f72ec4f5d2f3af8151ebbc2743f2 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-20 18:22:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 18:25:50 +0900 [ruby/psych] Bump version to 4.0.3 https://github.com/ruby/psych/commit/75ab76e788 commit 24f7a41aed3e9b753142e4d460039e05828f408c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-20 18:02:19 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-20 18:02:19 +0900 Update logger version on NEWS commit e22c8e63e1b841355edb0782f76eaeefb815598c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-20 18:01:19 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-20 18:01:50 +0900 [ruby/logger] Bump version to 1.5.0 https://github.com/ruby/logger/commit/cdeddb2f67 commit 7b0f2d618e322ed75a3c242307b3690e2f8b837c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 16:08:03 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 16:19:37 +0900 [ruby/irb] Remove unnecessary space in regexp https://github.com/ruby/irb/commit/c24a8e2483 commit b96ef7684c45ea1959c6f2bdad125b4a073419a4 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 16:06:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 16:19:36 +0900 [ruby/irb] Add East Asian Ambiguous Width to irb_info command https://github.com/ruby/irb/commit/4cade4b7e5 commit 145f7c094f4eb25d7fe39b60276222109afad1d1 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-20 16:05:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 16:05:44 +0900 Update bundled gems list at 2021-12-20 commit 6ccc15c2abbc0e96fb2e4d02a584819116743b44 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 15:53:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 15:52:51 +0900 [ruby/reline] Rename an unused variable name for CI https://github.com/ruby/reline/commit/ba97f3bd87 commit 7572e0c6eca8930c875073ff944d5729f3b7a160 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 14:44:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:54:45 +0900 [ruby/reline] Add a test for dialog proc with context https://github.com/ruby/reline/commit/2ce2696d6e commit bb122811640db5ab307805f81cf6b5ccdd6a2f4d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 14:44:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:54:44 +0900 [ruby/reline] Add an assertion for overwriting dialog proc with the same name https://github.com/ruby/reline/commit/96067bc13c commit cc072899a116198d4045a031c21110b61b5f6844 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 14:39:27 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:54:43 +0900 [ruby/reline] Rename the variable "p" because it overlaps with the "p" method https://github.com/ruby/reline/commit/9bf2ca692e commit 145c1e0691d4a6ca8eda40a42e584a1f6899fae2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 14:36:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:54:42 +0900 [ruby/reline] Add support for overwriting dialog proc with the same name https://github.com/ruby/reline/commit/16aa20c380 commit c462e07a5c9cf80227926de40c00917445f5b53e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 14:34:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:54:42 +0900 [ruby/reline] Add Reline.dialog_proc(name_sym) https://github.com/ruby/reline/commit/7e5dbe4750 commit ec517d60b06069b7de6ac63cb284745a5c827bbd Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-17 14:16:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:54:41 +0900 [ruby/reline] Add a test for Reline.add_dialog_proc https://github.com/ruby/reline/commit/c4bb1bfd79 commit cf508d4db9cfcec27d1e01e051aff1f3101766b4 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 14:54:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:53:45 +0900 [ruby/reline] Add space https://github.com/ruby/reline/commit/4b7fa6b213 commit 2a8ff602e0a6302faef92d554fc809aef3b71212 Author: YO4 <ysno@ac.auone-net.jp> AuthorDate: 2021-12-17 18:22:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:51:52 +0900 [ruby/reline] windows jruby issue jruby needs terminal control with Windows API on classic console https://github.com/ruby/reline/commit/b61bc43374 commit 65cb250cb15f8b93cee8a1a7c1e8adb1b2e6e95e Author: YO4 <ysno@ac.auone-net.jp> AuthorDate: 2021-12-11 23:40:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:51:52 +0900 [ruby/reline] windows clear screen with \e 2 J Windows Terminal does smart screen clearing when \e 2 J (not clear entire screen but scrolls down just needed) On consoles not support sequences, ruby still converts it to API call. https://github.com/ruby/reline/commit/c00930dab9 commit 2c415cda854ab02f8341428b5346a115d3648a48 Author: YO4 <ysno@ac.auone-net.jp> AuthorDate: 2021-12-11 23:04:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:51:51 +0900 [ruby/reline] windows improve scrolling ScrollConsoleScreenBuffer can't scroll window of Windows Terminal. Use LF to sctoll. Microsoft says ```In the virtual terminal sequences world, the size of the window and the size of the screen buffer are fixed to the same value. ``` https://docs.microsoft.com/en-us/windows/console/window-and-screen-buffer-size https://github.com/ruby/reline/commit/9ff3c70732 commit a856489be63f78b137cb2517c9d812a911d58fbe Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 14:51:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:50:41 +0900 [ruby/reline] Revert "Add a space after a comma" This reverts commit https://github.com/ruby/reline/commit/6009b3ef7ab7. To merge a Pull Request... https://github.com/ruby/reline/commit/83021f4267 commit 7dd0e91cac44a2bee298892c4f647675d6a22d5d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-20 14:46:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 14:46:35 +0900 [ruby/reline] Revert "Add space" This reverts commit https://github.com/ruby/reline/commit/1bb071bcf5a9. To merge a Pull Request... https://github.com/ruby/reline/commit/e9fe1b1305 commit 3bb6e4f641223c8573d2735e179f6822bc79cc33 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-20 13:04:47 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-20 13:04:47 +0900 [DOC] Enhanced RDoc for IO (#5304) Treated: ::try_convert #write #<< #flush #tell #seek #pos= #rewind #eof Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 7867a76e69b2343691cfcd7522dd17bc39b67c56 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-20 12:46:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-20 12:46:11 +0900 Update pp version on NEWS commit 0a198e42386ba6797dcc734548924726ffe6c7fd Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-20 12:43:49 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-20 12:44:31 +0900 [ruby/pp] Bump version to 0.3.0 https://github.com/ruby/pp/commit/c66d1b9cdc commit 1976b38f7a4e1884852653508ec1160c8b581363 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-13 04:43:09 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 07:42:53 +0900 [rubygems/rubygems] Add support in binstubs for trampolining bundler If `bundler _<version>_` is given, I guess the most reasonable approach is to completely skip version switching, because the user is technically opting out of it. But since binstubs completely remove this argument from `ARGV` after processing it, we have no way of detecting that it was actually passed in the first place in order to skip the feature. So we set `BUNDLER_VERSION` explicitly in this case. https://github.com/rubygems/rubygems/commit/e0f360d6d7 commit 72db2e00d4edb7a0e316a5979316595a67069d97 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-19 23:31:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 06:49:49 +0900 [rubygems/rubygems] Error tracing should be printed to stderr https://github.com/rubygems/rubygems/commit/23178f7d7b commit a0f10a973fb94a0ee73da7cab792128cdf601783 Author: Victor Shepelev <zverok.offline@gmail.com> AuthorDate: 2021-12-20 01:09:52 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-20 01:09:52 +0900 [DOC] Add documentation for hash value omission syntax Notes: Merged: https://github.com/ruby/ruby/pull/5244 Merged-By: nobu <nobu@ruby-lang.org> commit 1dd10e189274546689c0b59f6a76849b2808f255 Author: Chris AtLee <chris.atlee@shopify.com> AuthorDate: 2021-11-09 23:57:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-20 00:50:46 +0900 [DOC] Add documentation for Random.rand and Random.seed Notes: Merged: https://github.com/ruby/ruby/pull/5098 commit 12ad53f41ff7956d12bd96ee2145355d11232a70 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-20 00:37:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-20 00:37:20 +0900 * 2021-12-20 [ci skip] commit f44367effe07e7e7c7b4117624e04b9f62329ea0 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-20 00:37:06 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-20 00:37:06 +0900 [DOC] Addition to IO introduction (#5299) Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit ae58b71eebf774d826bf3cde2b1844358eafde34 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-19 23:43:39 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-19 23:43:39 +0900 Sort URLs by issue numbers [ci skip] commit 3f2b58184060b9f0c93327ccb422686368930d33 Author: Kazuki Tsujimoto <kazuki@callcc.net> AuthorDate: 2021-12-19 21:37:08 +0900 Commit: Kazuki Tsujimoto <kazuki@callcc.net> CommitDate: 2021-12-19 21:37:08 +0900 Add news about allowing omission of parentheses in one-line pattern matching commit e2ec97c4b823a0b2e0c31e7a6d77b1dcdc0dfada Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-19 20:12:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-19 20:27:31 +0900 [DOC] How to get the longest last match [Bug #18415] commit 0eb1c4ea3afa92c9e538551eb344ce1770cac092 Author: Kaíque Kandy Koga <kaiquekandykoga@gmail.com> AuthorDate: 2021-12-16 07:13:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-19 20:26:29 +0900 [ruby/irb] Add information about --extra-doc-dir option in the comments https://github.com/ruby/irb/commit/ac3d4b9e79 commit 56811617ab4b7007aad10c794366115a671e4f29 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-19 13:05:57 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-19 20:17:17 +0900 Improve IO::Buffer resize and introduce ownership transfer. Notes: Merged: https://github.com/ruby/ruby/pull/5301 commit a81e0600a7fa97bc1782de91110c6704a47af419 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-15 22:43:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-19 12:14:10 +0900 [ruby/reline] Load correct version.rb from gemspec When merged to ruby/ruby, reline.gemspec file is located under lib/reline, as the same as reline/version.rb. That is the latter path relative from the former differs from the ruby/reline case, and the reline/version.rb in the default load path will be loaded. Try `require_relative` not to load unexpected files. https://github.com/ruby/reline/commit/54905d0e1b commit 7159af3491763aeeaf7accec426ff228d7dbfa3b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-16 10:19:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-19 11:19:50 +0900 [ruby/reline] Clear dialog in pasting https://github.com/ruby/reline/commit/dabf5313e0 commit f3e30b26c509c6dd707bc07c4a73fbac2576e9e2 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-19 05:56:52 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-19 08:25:38 +0900 Default size for IO::Buffer. Notes: Merged: https://github.com/ruby/ruby/pull/5300 commit 6bef1ac62850be6d83a069ac3d3be0b8e2f3afcf Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-19 06:15:22 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-19 06:15:22 +0900 `rb_iseq_update_references()` cares `script_lines` and it fixes compaction issue: http://rubyci.s3.amazonaws.com/freebsd12/ruby-master/log/20211218T203001Z.fail.html.gz commit 45f2182438a632b1217ca26f3e89860e2ee58357 Author: Daniel Colson <danieljamescolson@gmail.com> AuthorDate: 2021-12-17 09:52:44 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-19 05:59:30 +0900 YJIT: Implement intern `intern` showed up in the top 20 most frequent exit ops (granted with a fairly small percentage) in a benchmark run by @jhawthorn on github/github. This implementation is similar to gen_anytostring, but with 1 stack pop instead of 2. Co-authored-by: John Hawthorn <jhawthorn@github.com> Notes: Merged: https://github.com/ruby/ruby/pull/5291 commit dd29ba076439375c6e235218ce5a0a3f01d41b29 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-19 05:35:16 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-19 05:35:16 +0900 `iseq_type_sym()` -> `iseq_type_id()` `iseq_type_sym()` returns `ID` (surprisingly!) so rename it to `iseq_type_id()`. commit 89a02d8932774f740013fe2a829faa9c40a1cfd1 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-19 03:20:00 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-19 05:16:29 +0900 add `rb_iseq_type()` to return iseq type in Symbol It is shorthand `ISeq#to_a[9]`. Notes: Merged: https://github.com/ruby/ruby/pull/5298 commit 52b1c76534eb5610527be97e8c9e98e46513e48c Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-19 04:13:14 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-19 04:13:14 +0900 Manually sync https://github.com/ruby/error_highlight/commit/d2140d795ad0a06398db81739201877d431755db commit 6a51c3e80c0901851c252ed4d1387e43939a452f Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-19 04:00:51 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-19 04:00:51 +0900 Make AST.of possible even under eval when keep_script_lines is enabled Now the following code works without an exception. ``` RubyVM.keep_script_lines = true eval(<<END) def foo end END p RubyVM::AbstractSyntaxTree.of(method(:foo)) ``` commit acac2b8128980b97c64b4d057acdf2ceffb0b981 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-19 03:40:44 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-19 03:51:37 +0900 Make RubyVM::AbstractSyntaxTree.of raise for backtrace location in eval This check is needed to fix a bug of error_highlight when NameError occurred in eval'ed code. https://github.com/ruby/error_highlight/pull/16 The same check for proc/method has been already introduced since 64ac984129a7a4645efe5ac57c168ef880b479b2. commit 7e0e6f90744ec89a87554d209fb797ddf7919319 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-19 03:32:11 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-19 03:32:11 +0900 What's Here for ENV (#5292) [DOC] What's Here for ENV Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 1ed520a9ef0ceb5fa9f9480505d10a72c7014430 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-19 01:07:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-19 01:07:23 +0900 * 2021-12-19 [ci skip] commit 45de4025f522f5148f0fc730aa0a1695a87daca2 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-19 01:05:17 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-19 01:07:02 +0900 skip -v spec on MJIT fix this failure: ``` configure ... cppflags=-DMJIT_FORCE_ENABLE ... make test-spec 1) The -v command line option when used alone prints version and ends FAILED Expected "ruby 3.1.0dev (2021-12-18T10:10:42Z master 78c175280b) +MJIT [x86_64-linux] " to include "ruby 3.1.0dev (2021-12-18T10:10:42Z master 78c175280b) [x86_64-linux]" /tmp/ruby/v3/src/trunk-mjit-wait/spec/ruby/command_line/dash_v_spec.rb:9:in `block (3 levels) in <top (required)>' /tmp/ruby/v3/src/trunk-mjit-wait/spec/ruby/command_line/dash_v_spec.rb:4:in `<top (required)>' ``` http://ci.rvm.jp/results/trunk-mjit-wait@phosphorus-docker/3759943 commit 235f523a88f0c3733adcb982b8c41fceaac4f9f6 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-18 19:47:10 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-18 20:19:55 +0900 Fix spelling of DECLAIR_TYPE. Notes: Merged: https://github.com/ruby/ruby/pull/5296 commit 78c175280befc8f0078ee037233ce1bb0af80ed6 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-18 17:42:17 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-18 19:10:42 +0900 Fix code formatting. Notes: Merged: https://github.com/ruby/ruby/pull/5295 commit 1560cc16889e1afede66f675c89f9e3962a1e35e Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-18 16:39:57 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-18 19:10:42 +0900 Introduce setup instructions for better parallelism. Notes: Merged: https://github.com/ruby/ruby/pull/5295 commit 75b5a4808fce6e6a11ef43a12c399e4e2eb63e86 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-18 14:17:33 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-12-18 15:15:11 +0900 Initial hacking guide. Notes: Merged: https://github.com/ruby/ruby/pull/5294 commit 42d32311541e58503b885b09b469948922650c66 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-18 14:19:30 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-18 14:19:30 +0900 Introduce io_result wrapper for passing `[-errno, size]` in VALUE. Notes: Merged: https://github.com/ruby/ruby/pull/5287 Merged-By: ioquatix <samuel@codeotaku.com> commit 922a81a99418c992f4039b27a8341f2ee96d2d0c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-18 12:31:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-18 13:06:15 +0900 Skip tests on pull requests labeled as Documentation Notes: Merged: https://github.com/ruby/ruby/pull/5293 commit 629c8f12aec87cc938ae1383b3c8fb449c185b39 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-18 13:05:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-18 13:05:48 +0900 Fix pull_request condition [ci skip] commit 424605da7c0c24a04bfbe21d8e30dabe17bdcad8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-18 01:27:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-18 10:33:04 +0900 [DOC] Cache stdgems list commit 1c49d809f470de74d5697ce2e23a830b12f2c686 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-15 10:18:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-18 10:18:33 +0900 [ruby/reline] Remove unnecessary "*" https://github.com/ruby/reline/commit/7b50638e24 commit 7f2123bc080ef2d439e231c23e3f083edc0cb552 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-12 10:17:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-18 10:18:32 +0900 [ruby/reline] Add a space after a comma https://github.com/ruby/reline/commit/6009b3ef7a commit adf6c0928df521aeb19cd999939d5ce422ff1743 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-14 10:09:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-18 10:15:23 +0900 [ruby/reline] Change a test method name to more appropriate https://github.com/ruby/reline/commit/d014cc85b7 commit 8cc01b668aa1eb0a19e7880dd697d78b93246704 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-12 12:48:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-18 10:15:23 +0900 [ruby/reline] Add space https://github.com/ruby/reline/commit/1bb071bcf5 commit 66ec3217dfe92267791071acb50ac60791a7861e Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-12-08 06:10:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-18 08:38:59 +0900 [ruby/pp] Add context to bind_call and skip 2.7+ test The bind_call definition here is added primarily to support running the tests on JRuby 9.3, which only supports Ruby 2.6 features. The excluded test appears to depend on inspect behavior that changed after Ruby 2.6. With these two changes the test suite runs green on Ruby 2.6 and JRuby 9.3. https://github.com/ruby/pp/commit/892c612958 commit cc73dfb92a4bd15d48217d4697a78a5814213e07 Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-09-28 23:53:03 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-18 08:38:59 +0900 [ruby/pp] Incorporate 2.6 versions of 2.7 methods needed * UnboundMethod#bind_call * ruby2_keywords gem for testing https://github.com/ruby/pp/commit/721d8cbd10 commit 73da1c5ea3fcc5abb1f72f70f7a3e61683368177 Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-09-28 23:37:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-18 08:38:58 +0900 [ruby/pp] Use etc instead of .so for broader compatibility The use of `etc.so` here requires that etc is always implemented as a C extension on-disk. However at least one impl – JRuby – currently implements it as an internal extension, loaded via a Ruby script. This require should simply use the base name of the library, `etc`, to allow Ruby-based implementations to load as well. https://github.com/ruby/pp/commit/2061f994e0 commit 5a6baaba3881c04534c9ad959e427ade3d5e410b Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-09-24 13:57:26 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-18 08:38:58 +0900 [ruby/pp] Only do RubyVM patches if class exists This class does not exist in any implementation except CRuby. I would recommend moving this code somewhere else, like a separate file loaded only on CRuby or into CRuby itself. For now this change is sufficient to load the library on other implementations. https://github.com/ruby/pp/commit/7d5a220f64 commit de6ef2ca71453cd7a9a10943dc082718ea2f8f17 Author: rm155 <rohitmenon@verizon.net> AuthorDate: 2021-07-17 07:05:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-18 08:38:58 +0900 [ruby/benchmark] Freeze VERSION https://github.com/ruby/benchmark/commit/89b889b109 commit e442ec4ea0bf28409afbf236efc05a919ce66b2c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-16 13:49:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-18 08:38:58 +0900 [ruby/logger] Removed loading old helper file and load Logger class by itself https://github.com/ruby/logger/commit/5ee0fd6e51 commit 43755468102e3d62830d076d1fae0d6beba2b25b Author: Baron Bloomer <baronbloomer@gmail.com> AuthorDate: 2021-08-17 19:57:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-18 08:38:58 +0900 [ruby/logger] Test cases https://github.com/ruby/logger/commit/40adb645e2 commit a8b11b5cdd5fedd30a65e60bdae4c00d259d4191 Author: Baron Bloomer <baronbloomer@gmail.com> AuthorDate: 2021-07-29 17:31:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-18 08:38:57 +0900 [ruby/logger] Changes to datetime formatting Formatting a datetime should only pertain to itself and valid datetimes do not contain a space. Should there be a desire to show a space between the datetime and the process pid in the formatted log, this formatting logic should take place there. Furthermore, the default datetime format is moved to a class variable to allowing this variable to be overwritten by subclasses. https://github.com/ruby/logger/commit/7cbd434349 commit cc5fcae1705f8c4f6dc02d76bbd7940ba9666d59 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-18 01:44:55 +0900 Commit: John Hawthorn <john@hawthorn.email> CommitDate: 2021-12-18 08:26:04 +0900 YJIT: Remove double check for block arg handling Inline and remove iseq_supported_args_p(iseq) to remove a potentially dangerous double check on `iseq->body->param.flags.has_block` and `iseq->body->local_iseq == iseq`. Double checking should be fine at the moment as there should be no case where we perform a call to an iseq that takes a block but `local_iseq != iseq`, but such situation might be possible when we add support for calling into BMETHODs, for example. Inlining also has the benefit of mirroring the interpreter's code for blockarg setup in `setup_parameters_complex()`, making checking for parity easier. Extract `vm_ci_flag(ci) & VM_CALL_KWARG` into a const local for brevity. Constify `doing_kw_call` because we can. Notes: Merged: https://github.com/ruby/ruby/pull/5285 commit c2197bf82171ca2dad6f7ef67521fdd30a245d9c Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-12-17 08:08:07 +0900 Commit: John Hawthorn <john@hawthorn.email> CommitDate: 2021-12-18 08:26:04 +0900 YJIT: Fix check for required kwargs Previously, YJIT would not check that all the required keywords were specified in the case that there were optional arguments specified. In this case YJIT would incorrectly call the method with invalid arguments. Notes: Merged: https://github.com/ruby/ruby/pull/5285 commit 83aa68447c87169b3610b6e04abebdcc592f0c16 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-12-17 03:19:24 +0900 Commit: John Hawthorn <john@hawthorn.email> CommitDate: 2021-12-18 08:26:04 +0900 YJIT: Allow iseq with both opt and kwargs Previously we mirrored the fast paths the interpreter had for having only one of kwargs or optional args. This commit aims to combine the cases and reduce complexity. Though this allows calling iseqs which have have both optional and keyword arguments, it requires that all optional arguments are specified when there are keyword arguments, since unspecified optional arguments appear before the kwargs. Support for this can be added a in a future PR. Notes: Merged: https://github.com/ruby/ruby/pull/5285 commit 5588aa79d4587956ac1ae1734407f21717ad379a Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-18 08:02:12 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-18 08:02:12 +0900 What's Here for Symbol (#5289) * What's Here for Symbol Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 6a1365d725c72107dd45e1b06ce4acc5549ebaf5 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-18 04:21:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-18 04:21:56 +0900 Update bundled gems list at 2021-12-17 commit dbb5abc45b54e8f0ba2edd509fe2ae4be57451a5 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-18 03:24:57 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-18 04:21:18 +0900 debug.gem 1.4.0 Notes: Merged: https://github.com/ruby/ruby/pull/5290 commit 74b58dd6906b83990d268e758ffab43f1cd62811 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-18 01:18:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-18 01:18:25 +0900 Update bundled gems list at 2021-12-17 commit 55a93533e88ed056ea5398191b5304caca4daf00 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-18 01:18:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-18 01:18:08 +0900 * 2021-12-18 [ci skip] commit 73d44512e84f86a22f2d0a86544c32e89c5b7ccf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-18 01:04:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-18 01:17:38 +0900 [DOC] Update bundled gems list commit 9ac52e8ed3e1a5ebdbe74811892b4baf6804ee89 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-17 22:30:23 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-17 22:30:23 +0900 Fix a typo [ci skip] commit f7e266e6d2ccad63e4245a106a80c82ef2b38cbf Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-17 21:05:31 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-17 21:05:31 +0900 Enhanced RDoc for case mapping (#5245) Adds file doc/case_mapping.rdoc, which describes case mapping and provides a link target that methods doc can link to. Revises: String#capitalize String#capitalize! String#casecmp String#casecmp? String#downcase String#downcase! String#swapcase String#swapcase! String#upcase String#upcase! Symbol#capitalize Symbol#casecmp Symbol#casecmp? Symbol#downcase Symbol#swapcase Symbol#upcase Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 4639336b0559d7d4158830be84f8b7789f1ed084 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-17 20:34:14 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-17 20:34:25 +0900 NEWS.md: Fix a typo commit 8d29d1292b35ad524ce15f82177a2975da43432d Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-15 21:28:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-17 16:35:20 +0900 [rubygems/rubygems] Improve errors a bit more https://github.com/rubygems/rubygems/commit/f481e8f41a commit 1537471871f9a06624689b55be222f0ea601d140 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-15 20:41:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-17 16:35:20 +0900 [rubygems/rubygems] Share gem not found logic with transitive dependencies too https://github.com/rubygems/rubygems/commit/e4a1a9663d commit f3b50507c777522ec5d3e7662c8818df29e29f62 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-15 20:11:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-17 16:35:19 +0900 [rubygems/rubygems] Remove unnecessary line break https://github.com/rubygems/rubygems/commit/84e2d6a955 commit 79f72a4540212fd7d6af47f57d1a426ac99335bd Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-14 22:29:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-17 16:35:18 +0900 [rubygems/rubygems] Fix crash when no matching variants are found for the current platform If we are resolving a dependency against a particular platform, and there are no platform specific variants of the candidates that match that platform, we should not consider those candidates. https://github.com/rubygems/rubygems/commit/f6077fe27d commit c710cdb905a58b4ef0c7b5a9a8e867b382ccfd66 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-14 23:56:03 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-17 16:35:18 +0900 [rubygems/rubygems] Improve error message if only platform doesn't match https://github.com/rubygems/rubygems/commit/077e3c2e4d commit af4b4fd19b7972adc165e70e9d41ad7e14c9a235 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-14 22:49:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-17 16:35:17 +0900 [rubygems/rubygems] Improve resolver error messages Use a more standard naming for gems. https://github.com/rubygems/rubygems/commit/75121e83f1 commit ce6fc20f973e307071533bfd9699da88986c67a3 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-17 14:33:26 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-17 15:46:50 +0900 data type should be `static` Notes: Merged: https://github.com/ruby/ruby/pull/5288 commit c8f2766ae2312eedbcf947b189a8629696bb8bb3 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-17 14:27:30 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-17 15:46:50 +0900 `RUBY_DEFAULT_FREE` is not needed. pointed by @nobu. Notes: Merged: https://github.com/ruby/ruby/pull/5288 commit 37bd795cf8bc9681fccaf9b2d42292b14610a310 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-17 14:22:14 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-17 15:46:50 +0900 `ENV` ivars should not be accessible from ractors The `ENV` object can have instance variables like other objects, but they should be accessed only on the main ractor. fix https://github.com/ruby/ruby/pull/5263#issuecomment-995585766 Notes: Merged: https://github.com/ruby/ruby/pull/5288 commit d524b9dec9859ce307f6f913be46144557e8edbd Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-12-17 13:54:23 +0900 Commit: Masataka Pocke Kuwabara <kuwabara@pocke.me> CommitDate: 2021-12-17 13:54:23 +0900 NEWS.md: Add link to `rbs collection` documentation commit 58333c94d527526c1d485a7fbed57e1b6f28f994 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-17 13:46:09 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-17 13:46:09 +0900 NEWS.md: Describe changes of RBS commit 2585ff30d72463c2d13b87d759fe5ea272f85967 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-17 11:03:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-17 11:28:06 +0900 Send the message for s390x to stderr [ci skip] Parallel worker's stdout is captured as the control protocol. Notes: Merged: https://github.com/ruby/ruby/pull/5286 commit c4c78343e05d5584d2617192d7238c315ec68ef0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-17 02:58:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-17 02:58:00 +0900 Update stdlib version at 693a561cfa19dc35ff0d199a1934c9 [ci skip] commit 693a561cfa19dc35ff0d199a1934c9927dd388d5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-17 02:36:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-17 02:41:17 +0900 [DOC] Exclude non-updated stdlibs since the previous release commit b746b713e5573a3a161dca1d11652f7b35265ead Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-17 01:56:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-17 01:56:16 +0900 * 2021-12-17 [ci skip] commit 06bdb41c4587a9cffacd09df473b66c285ed9813 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-17 00:44:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-17 00:44:54 +0900 dln.c: refine preprocessor conditions by USE_DLN_DLOPEN and _WIN32 Notes: Merged: https://github.com/ruby/ruby/pull/5284 commit fff058a8d6c2e5d7c3529484a1c9a636dbf66dc2 Author: Lars Kanis <lars@greiz-reinsdorf.de> AuthorDate: 2021-09-24 00:06:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-16 20:10:55 +0900 Add description of ruby header files to extension.rdoc Notes: Merged: https://github.com/ruby/ruby/pull/4882 commit 9b187fec58daafc80164bc29c57dd306d053bcfe Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-12-16 20:03:44 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-16 20:03:44 +0900 Add `rb_parser_set_pos` function Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Co-authored-by: Marivaldo Cavalheiro <marivaldo@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/5089 Merged-By: nobu <nobu@ruby-lang.org> commit 41d4902c2790983ba560db4eb0debcfc86e89b40 Author: Matheus Richard <matheusrichardt@gmail.com> AuthorDate: 2021-12-16 01:24:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-16 20:02:07 +0900 Improve wording on NEWS.md Notes: Merged: https://github.com/ruby/ruby/pull/5277 commit cf54de637ce3747f9a761ca14edce7cf77f0e813 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-16 18:00:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-16 18:00:23 +0900 [DOC] random number by range commit 5bf0060e0a506d8b7a85e0f63898cb1cc8d4dcba Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-25 00:38:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-16 17:50:20 +0900 [DOC] Skip tests if only documents change [ci skip] Run only checks for source code. Currently, our CIs do almost nothing about the documents. commit 32ee6f80ee1737699ead57bf577f0b1b90c2523e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-16 16:01:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-16 17:44:12 +0900 Restore the global random seed Notes: Merged: https://github.com/ruby/ruby/pull/5281 commit 6c87f8fc2935ac91e8e3d1067d629510a8acbe43 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-16 15:55:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-16 17:44:12 +0900 Fix Kernel#srand and Kernel#rand descriptions [ci skip] Actually used methods are all instance method, not the singleton method. Notes: Merged: https://github.com/ruby/ruby/pull/5281 commit 18fef09a02d1d64b6ee892bf9d4c69c9235a97e2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-16 15:53:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-16 17:44:12 +0900 Refine wording about the default random seed [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5281 commit f1a02ebfb9362c6d925b700ad4d24ddb3f81abd3 Author: Yuta Saito <kateinoigakukun@gmail.com> AuthorDate: 2021-12-03 22:45:04 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-16 16:17:41 +0900 Install gemspec even though no .rb and no .so When building with --with-static-linked-ext, some exts without rb file doesn't produce neither .so or .rb under .ext/common. Therefore, change rbinstall.rb to install gemspec even if there is no .so or .rb for that case. Notes: Merged: https://github.com/ruby/ruby/pull/5206 commit 332d1e52e62735ff16e5fb9207ce86695369555d Author: Yuta Saito <kateinoigakukun@gmail.com> AuthorDate: 2021-12-13 16:48:57 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-16 16:16:40 +0900 btest: assign $stderr = STDOUT instead of IO#reopen to be more portable `IO#reopen` internally uses dup syscall but some platforms don't support the syscall. re-assigning `$stderr` is enough to capture the interpreter's errors and warnings. Notes: Merged: https://github.com/ruby/ruby/pull/5255 commit 69a7eaae389b49eb2a99c1c44c11b3d5004d186f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-16 15:07:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-16 15:12:12 +0900 Use `to_s` and `puts` in tests `to_s` has the explicit specification while `inspect` is often vague. commit 05c9dfe23a7d1b970f5b62feeba3199413567fa5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-16 13:53:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-16 14:19:28 +0900 Suppress empty-body warning commit 02ba0bda7e548fcc7245d246324e253e5e2fc96a Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-12-16 13:02:30 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-16 13:02:30 +0900 Remove RubyVM::JIT (#5275) [Feature #18349] reverts [Feature #17490] Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 40cc8e9231d9c0ed4cdc1cefb810686bff12dc3e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-16 06:13:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-16 06:13:40 +0900 * 2021-12-16 [ci skip] commit 7e27de2f1e949b3494c3dc56e12d265fa9d12be8 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-16 06:13:23 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-16 06:13:23 +0900 YJIT: Remove unused branch_t::src_ctx field No one reads it at the moment and it's heap allocated. Notes: Merged: https://github.com/ruby/ruby/pull/5278 Merged-By: XrXr commit fbd21a81f3f422b39949ce2910e74b9df9c9bdd8 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-15 21:52:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-15 21:52:15 +0900 Update stdlib version at 333865e56f594f365f2b3b4ef0f86f [ci skip] commit 333865e56f594f365f2b3b4ef0f86fa4beb977c5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-15 21:41:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-15 21:47:41 +0900 Workaround for reline.gemspec This file searches "lib/reline/version.rb" in the same directory, "lib/reline". As no such path, the file in the default load path is loaded unexpectedly. commit 16941908332c0b82d7f42bd3f28707a42f7c5d43 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-15 21:32:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-15 21:32:32 +0900 Skip test_operating_system_customizing_default_dir for failing with rubyci commit 1fc80754ddc56aa470c2a024f50c70ecf580f5fa Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-15 19:47:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-15 19:47:15 +0900 Update stdlib version at 9f87c0cc6dff70e8a1c4d204d1d459 [ci skip] commit 9f87c0cc6dff70e8a1c4d204d1d45920d26f2e3a Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-14 00:53:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-15 19:46:44 +0900 [rubygems/rubygems] Pass `:bimode` explicitly to `File.open` The `File::BINARY` flag is apparently ignored due to a ruby bug, and thus writing can cause encoding issues. https://github.com/rubygems/rubygems/commit/db4efbebf2 commit c2dbdf3067c334e22946fbda74181d3a94afbf97 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-14 00:52:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-15 19:46:43 +0900 [rubygems/rubygems] Extract a helper to temporarily modify internal encoding https://github.com/rubygems/rubygems/commit/93051fd2aa commit 890a6b432c7f9b7e3160af31cedb440e53e2d79b Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-14 00:50:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-15 19:46:43 +0900 [rubygems/rubygems] Unify duplicated helper https://github.com/rubygems/rubygems/commit/c6ef75424d commit de01011da3b20379b1f45e5a51eaeafc6f7369c4 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-15 18:53:16 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-15 18:53:16 +0900 Update stdlib version [ci skip] commit 5044371621b071c1d846693b0e3251f67ecccaeb Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-15 15:44:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-15 18:05:18 +0900 Skip s390x because Travis CI was failing with unknown reason Notes: Merged: https://github.com/ruby/ruby/pull/5265 commit 7e084ed707310139b351f6d30af435676422af62 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-14 21:14:58 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-15 18:05:18 +0900 Merge RubyGems and Bundler master Merge from https://github.com/rubygems/rubygems/commit/793ad95ecb40e84a1dcb4cb60f2686843ed90de5 Notes: Merged: https://github.com/ruby/ruby/pull/5265 commit 583e06e28f5ed4078393000f929f4380777ba972 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-15 18:00:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-15 18:00:47 +0900 Update stdlib version at ded33ed5b8d923b0bb707b4e617ba0 [ci skip] commit ded33ed5b8d923b0bb707b4e617ba02dde404188 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-15 17:42:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-15 17:55:43 +0900 Update stdlib in NEWS commit 7d50142a9b49213035f36e80f5b3f14678832644 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-15 16:59:10 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-15 16:59:10 +0900 Remove unused footnote [ci skip] commit b2395539aad9a3dca048bb20621d9fe0189c0fea Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-15 16:01:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-15 16:01:23 +0900 Update bundled_gems at 2021-12-15 commit 0f99f3fe5e2458b6a922febf857584ede96eabc9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-15 15:31:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-15 15:31:46 +0900 Adjust indents [ci skip] commit 13c37835d5dbda3493f54baf13f75ed5b59fc507 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-15 01:24:36 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 ucrt can raise `Errno::EINVAL` `ENV[key] = long_str` can raise `Errno::EINVAL` also on ucrt env. Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit 04aab3c2592a2234921fb715c1ff9f36a58828ca Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-15 00:13:15 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 fix test Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit 0eafba36103f5526c489fc5dd3d958d97e11a2c2 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-14 17:28:25 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 use `RB_VM_LOCK_ENTER()` We found that we need to make Ruby objects while locking the environ to ENV operation atomically, so we decided to use `RB_VM_LOCK_ENTER()` instead of `env_lock`. Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit a4a3528eb7cf8d085a53bd34dafe2e59059b4d1b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-21 12:58:14 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 Removed no longer used variables Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit a6ebc10532db1470372fd89a0ce48b822d25bd01 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-21 12:57:32 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 Fixed env_pairs array types Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit db3ab440db2444b0b3ad388f68c592ec68cfcca7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-21 12:40:26 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 Use prototype definition instead of old K&R style Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit b43338ccc47d6e64ae6f52298a1f222cd5fd0887 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-21 12:39:34 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 Update dependencies Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit 88e36d8f3c75a9b57d68e930385a23ff54b05cf3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-21 12:24:22 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 Adjust styles [ci skip] * --braces-after-func-def-line * --space-after-for Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit 9bb83a82aba3cf844fd96782f747eefb1876439b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-21 12:19:54 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 Removed traling spaces [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit f471cf295bf093d51b6258338d5e7add0ce962b4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-21 12:06:16 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 Symbols closed to env should be static Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit 3aab870761ff0138ffd29e0a08b6cdf151e2acb4 Author: Rohit Menon <rohitmenon@verizon.net> AuthorDate: 2021-07-08 12:13:49 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 Make ENV shareable Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit e071ac8b3db80901566882ae82a9ba75106995da Author: Rohit Menon <rohitmenon@verizon.net> AuthorDate: 2021-07-08 00:17:26 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 Add Ractor tests for ENV Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit 2a3e4b69409c8f0f3c63698009f70eefe84a6202 Author: Rohit Menon <rohitmenon@verizon.net> AuthorDate: 2021-07-04 03:27:45 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 Move exception-raising functions out of mutex; Refactor env-copying Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit d3d156c21ecf0a602d366209b3e2da665c3ec389 Author: Rohit Menon <rohitmenon@verizon.net> AuthorDate: 2021-07-02 09:04:52 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 15:04:34 +0900 Add locks for ENV Notes: Merged: https://github.com/ruby/ruby/pull/5263 commit 0fcc58a18c7c8896df1736fc644c1c9f84a6df0f Author: Victor Shepelev <zverok.offline@gmail.com> AuthorDate: 2021-12-15 11:25:33 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-15 11:25:33 +0900 [DOC] Improve Thread::Queue.new docs [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5273 Merged-By: nobu <nobu@ruby-lang.org> commit ac5d6faea8e8d142df798572b0522f8a185c8fb6 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-15 09:47:42 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-15 09:47:42 +0900 YJIT: Fix unexpected truncation when outputing VALUE Previously, YJIT incorrectly discarded the upper 32 bits of the object pointer when writing out VALUEs to setup default keyword arguments. In addition to incorrectly truncating, the output pointers were not properly tracked for handling GC compaction moving the referenced objects. YJIT previously attempted to encode a mov instruction with a memory destination and a 64 bit immediate when there is no such encoding possible in the ISA. Add an assert to mitigate not being able to catch this at build time. Notes: Merged: https://github.com/ruby/ruby/pull/5274 Merged-By: XrXr commit 6eb500e2df17475a557de536ce24a4d878bf1607 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-27 18:55:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-15 08:24:41 +0900 [ruby/cgi] Extract CGI::Session#new_store_file https://github.com/ruby/cgi/commit/b3e2ff9164 commit e307627b6cdafd830680ccf52bf8832c80326935 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-12-15 06:20:45 +0900 Commit: John Hawthorn <john@hawthorn.email> CommitDate: 2021-12-15 08:22:51 +0900 Don't invalidate BOPs when aliases redefined Previously when redefining an alias of a BOP, we would unnecessarily invalidate the bop. For example: class String alias len length private :len end This commit avoids this by checking that the called_id on the method entry matches the original_id on the definition. Notes: Merged: https://github.com/ruby/ruby/pull/5271 commit b7ae08992f7e4c663b61a3895d29d066fa22e452 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-12-11 10:08:05 +0900 Commit: John Hawthorn <john@hawthorn.email> CommitDate: 2021-12-15 08:22:51 +0900 YJIT: Avoid unnecessary BOP invalidation Previously we would invalidate BOPs in YJIT when the method registered as a BOP was redefined on a subclass. Notes: Merged: https://github.com/ruby/ruby/pull/5271 commit b563f122972c98a9b988173f0e882249ca243624 Author: Matheus Richard <matheusrichardt@gmail.com> AuthorDate: 2021-12-15 07:15:02 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-15 07:15:02 +0900 [DOC] Fix docs rendering for Process._fork [ci skip] Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/5270 Merged-By: nobu <nobu@ruby-lang.org> commit aa7c4c37d7752af4897567dec1b0745873b0457a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-18 21:41:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-15 07:01:20 +0900 Fix arg_forward without parentheses [Bug #18267] Notes: Merged: https://github.com/ruby/ruby/pull/5269 commit 3a6b79d0c059923d6e186ffda2669199f2a0dd20 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-29 15:29:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-15 07:01:20 +0900 Revert "Rename `in_kwarg` as `in_argdef` as unrelated to keywords" This reverts commit b7f7117bdc78a4a342a57dad1a340b158492ccf3, to separate `in_argdef` from `in_kwarg`. Notes: Merged: https://github.com/ruby/ruby/pull/5269 commit 397a509b6d0d1470df8c290d7c4adef78f1532ee Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-15 01:11:45 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 02:33:17 +0900 prohibit load by `autoload` on non-main Ractor fix [Bug #18120] Notes: Merged: https://github.com/ruby/ruby/pull/5267 commit 2e6e2fd9da18b74aa9555d09a871b24895e42773 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-13 02:15:05 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-15 02:31:58 +0900 fix local TP memory leak It free `rb_hook_list_t` itself if needed. To recognize the need, this patch introduced `rb_hook_list_t::is_local` flag. This patch is succession of https://github.com/ruby/ruby/pull/4652 Notes: Merged: https://github.com/ruby/ruby/pull/5253 commit b8f7fc361d2cf2266e39e97c57bba6edd6c6edaf Author: Matheus Richard <matheusrichardt@gmail.com> AuthorDate: 2021-12-15 02:12:37 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-15 02:12:37 +0900 Add examples for Integer.try_convert [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5268 Merged-By: nobu <nobu@ruby-lang.org> commit b32b755ea2446d67fd53b89b68080ad9b66ac68d Author: Matheus Richard <matheusrichardt@gmail.com> AuthorDate: 2021-12-15 01:46:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-15 02:05:41 +0900 Fix typo on Integer.try_convert [ci skip] commit 637c3cfc5dc2c044c6eeb2793bf399b6745daa8b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-15 00:37:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-15 01:52:15 +0900 Turn SET_LEX_STATE macro into an inline function call Notes: Merged: https://github.com/ruby/ruby/pull/5266 commit a3934cd1e57f9d49d24cdaf29ed2bde2fd70cae6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-15 00:35:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-15 00:50:39 +0900 Fix indent [ci skip] commit 67b6a222634800969292e7aa527e8437bfd37020 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-15 00:43:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-15 00:43:38 +0900 * 2021-12-15 [ci skip] commit 9e00f8267dbc10d3e0a51a51c7f56d055949ce87 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-12-13 17:45:29 +0900 Commit: Jean Boussier <jean.boussier@gmail.com> CommitDate: 2021-12-15 00:42:53 +0900 NEWS.md document String#unpack offset and Marshal.load freeze arguments Notes: Merged: https://github.com/ruby/ruby/pull/5256 commit 0e7d07391433a4407edc14391352dcda5672c05c Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-12-14 04:43:52 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-12-14 23:16:18 +0900 Remove compaction support detection using sysconf Except on Windows and MinGW, we can only use compaction on systems that use mmap (only systems that use mmap can use the read barrier that compaction requires). We don't need to separately detect whether we can support compaction or not. Notes: Merged: https://github.com/ruby/ruby/pull/5260 commit 6daec46014f12c7e6698fd0ce80970072d0bc0fa Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-14 18:10:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-14 20:06:51 +0900 ripper: refine test to show expected states Notes: Merged: https://github.com/ruby/ruby/pull/5264 commit 1a63468831524f68e73cbb068071652c6486cfc6 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-12-14 16:07:46 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-14 16:07:46 +0900 Prepare for removing RubyVM::JIT (#5262) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit a2839d717874a277da1d553336a409164fa833ad Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-14 16:06:50 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-14 16:06:50 +0900 Update stdlib version [ci skip] commit 14c8dca6d1f3a46ba5934dadc10a79b10385b54d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-14 15:59:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-14 15:59:58 +0900 Update bundled_gems at 2021-12-14 commit 1578421962024f7fafc94418da9e1ecab31c49b2 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-14 10:24:27 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-14 12:31:57 +0900 reduce `rb_clear_attr_ccs()` call `rb_clear_attr_ccs()` should be called only when c_call or c_return is activated. Notes: Merged: https://github.com/ruby/ruby/pull/5261 commit 10eda60e8b69be23755f606472e6816e5e9da8d0 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-14 12:19:44 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-14 12:19:44 +0900 Merge to one regexp commit 900e0c8c39fe3df72d7ce451e01c1add7b6f1647 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-14 00:55:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-14 11:59:22 +0900 [ruby/securerandom] Use String#unpack1 https://github.com/ruby/securerandom/commit/5460a18c35 commit 0ebbab23bab7f039a9c28c519392b78d69a0e901 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-14 00:50:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-14 11:59:20 +0900 [ruby/securerandom] Drop support for old ruby versions https://github.com/ruby/securerandom/commit/46943a991c commit 40b0d69dadfccd7271ec47f128b51184723a3e7a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-14 11:52:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-14 11:52:26 +0900 [DOC] Fix a type [ci skip] commit 877160121a35722ef24c129f128a8382b3844344 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-14 09:28:09 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-14 09:28:09 +0900 NEWS.md: Mention colorize command of un.rb https://github.com/ruby/un/pull/1 commit 11b8aaa26a22bb67b144484af6890844771b5f46 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-12-14 09:08:01 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-14 09:08:01 +0900 Rename --jit to --mjit (#5248) * Rename --jit to --mjit [Feature #18349] * Fix a few more --jit references * Fix MJIT Actions * More s/jit/mjit/ and re-introduce --disable-jit * Update NEWS.md * Fix test_bug_reporter_add Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 94494a565d7d3e1277e594db44478edc0233c3e8 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-12-14 00:18:39 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-12-14 00:20:13 +0900 [ci skip] NEWS.md: Update Variable Width Allocation Notes: Merged: https://github.com/ruby/ruby/pull/5258 commit 845edc067cdda49485b056273aa725ea5d35657f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-14 00:03:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-14 00:03:55 +0900 * 2021-12-14 [ci skip] commit 4926647bf2be7181fbd3ab353e03b04e7d451bea Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-14 00:03:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-14 00:03:37 +0900 NEWS.md: sort [ci skip] commit 774b04408f062ea4f037133d14db091cf34b759e Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-12-13 23:46:34 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-12-13 23:53:31 +0900 [ci skip] NEWS.md: Add Variable Width Allocation Notes: Merged: https://github.com/ruby/ruby/pull/5257 commit a08d8180e2498f15315fa7b2302099c068a3576f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-13 21:20:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-13 21:20:55 +0900 NEWS.md: One more surrounding brackets for the ticket commit 8411e8449b17357221b69617214674fb101c766d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-08 01:44:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-13 20:44:21 +0900 [ruby/reline] Remove unnecessary variables, lower_space The number of lines below the cursor position was known by "@rest_height" alone, but the problem was caused by adding "lower_space". Remove "lower_space" as it is unnecessary. https://github.com/ruby/reline/commit/a575cef6a3 commit 446a11f2c1a1af007ef6079eada2d8992a13467f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-13 19:56:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-13 19:56:11 +0900 [DOC] Add call sequences of Random using a range commit dc490aced3fc62d7eaa10d2bfc2211da826ea538 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-13 19:54:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-13 19:55:44 +0900 [DOC] Improve Random::Formatter description and example commit 6859d175ba5c77f0aab0af20e2b483c8d5ea9126 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-13 19:47:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-13 19:47:52 +0900 [DOC] Exclude Bundler only [ci skip] commit 7ececae4539da84ef9863de83d4b075653002009 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-13 19:13:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-13 19:15:31 +0900 NEWS.md: move of Random::Formatter [Feature #18190] commit 93f0beca5ee8d1979fce9e1e890738690aa824fe Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-13 19:10:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-13 19:14:50 +0900 Appveyor: Skip tests on if only document files changed [ci skip] commit 914563ae87c34da3329707469d881502f2ff6662 Author: Kentaro Goto <gotoken@gmail.com> AuthorDate: 2021-12-13 14:57:28 +0900 Commit: Kentaro Goto <gotoken+github@gmail.com> CommitDate: 2021-12-13 18:08:35 +0900 NEWS.md: `ruby -run -e httpd` displays URLs to access [Feature #17847] Notes: Merged: https://github.com/ruby/ruby/pull/5254 commit c81d7d7c60477c04e7cc4f9eccb256443085512c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-13 14:28:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-13 14:28:59 +0900 NEWS.md: RFC 3339 UTC for unknown offset local time [Feature #17544] commit 47a12c8888531ac17a18b7d13c0ff07b737550e8 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-13 14:21:16 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-13 14:21:29 +0900 LEGAL: mention error_highlight commit 4ffb0bd6414cf320ec8d71132bc487514768c8f7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-13 14:19:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-13 14:20:42 +0900 NEWS.md: Mention `in:` option of Time.new [Feature #17485] commit 2c0de392870232b56b28e14e8cbc6d993d8648ac Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-13 14:19:21 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-13 14:19:21 +0900 NEWS.md: `--disable-gems` is now just for debugging. [Feature #17684] commit ff029f25ca6dc788da178a1129e299c06ca3e712 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-13 14:13:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-13 14:16:46 +0900 [DOC] Get rid of headings in list items The current RDoc Markdown parser parses the list item starting with `#` as a heading line. commit 0ee127e5bb1a5c8f7ac74b9912bc758446afbd8a Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-13 14:02:07 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-13 14:02:42 +0900 add a NEWS entry for `TracePoint.allow_reenter` commit 1da1d7473076aa1865d1fb31a1b03e72c7127d01 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-13 14:01:40 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-13 14:01:40 +0900 NEWS.md: `def foo = puts "Hello"` is now allowed [Feature #17398] commit d463b407e6ca059316ed33c39970aa32903667fb Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-13 13:53:34 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-13 13:53:34 +0900 NEWS.md: Mention suspendatble coverage [Feature #18176] commit a6fb63d2a05c0b26268781a10f8ed1b41d9db433 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-13 13:49:39 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-13 13:49:39 +0900 NEWS.md: Use more descriptive example for error_highlight commit 9ad34da47ff7d71446e667897559047ed5635b60 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-13 13:05:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-13 13:21:53 +0900 [DOC] Mention RBOOL in extension.rdoc [Feature #13125] commit 54f0e63a8c53753af7db8653972ac450415eae13 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-12 23:33:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-13 12:53:03 +0900 Remove `NODE_DASGN_CURR` [Feature #18406] This `NODE` type was used in pre-YARV implementation, to improve the performance of assignment to dynamic local variable defined at the innermost scope. It has no longer any actual difference with `NODE_DASGN`, except for the node dump. Notes: Merged: https://github.com/ruby/ruby/pull/5251 commit d3c8f7b1cd2fdba95436889869e94f4c3cf419e8 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-11 15:55:31 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-13 11:11:57 +0900 Fix a typo [ci skip] commit a692a1597fb1fdd1ed1394c582ab73ef75817fb7 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-10 17:21:37 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-13 10:29:08 +0900 ruby.c: Fix typo Notes: Merged: https://github.com/ruby/ruby/pull/4784 commit 8613c0c6758b8d560b2461bd540c815d28fcf844 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-08-27 16:19:56 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-13 10:29:08 +0900 Introduce an option "--dump=insns_without_opt" for debugging purposes Notes: Merged: https://github.com/ruby/ruby/pull/4784 commit 84cd3964d9a5c6768610a2685ba04237dd79b57a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-13 10:24:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-13 10:24:10 +0900 * 2021-12-13 [ci skip] commit 5164c2b36f66e7b1d2e0f908663ee3f3a3830605 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-13 02:11:05 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-13 10:23:52 +0900 Pass UnboundMethod to 2nd arg of define_method Notes: Merged: https://github.com/ruby/ruby/pull/5252 commit fdfb43b2b129afb78c352c95776118eeceb245a2 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-13 02:02:41 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-13 10:23:52 +0900 fix Struct's setter arity https://github.com/ruby/ruby/pull/5131/files#diff-b2553d23e6b1fe76e20608d06c25f6acca06279100f1a9c24febcd79a82fac3cR2689 Notes: Merged: https://github.com/ruby/ruby/pull/5252 commit 6659253cc6c807641e23d469b425ddcf18de7af4 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-13 01:58:21 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-13 10:23:52 +0900 Struct setter's parameters == `[:req, :_]` fix [Bug #18405] Note that the parameter name `_` is not a spec, so we shouldn't rely on this behavior. Notes: Merged: https://github.com/ruby/ruby/pull/5252 commit 4d0cb1a54ba5e8e053e6acc860fd1cb9ca5e1b19 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-13 01:16:04 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-13 10:23:52 +0900 add `method_def_arity()` Notes: Merged: https://github.com/ruby/ruby/pull/5252 commit 2f79d6d3f268adf2bde6abed33acf936d8d08157 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-12 16:12:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-12 16:12:13 +0900 Update bundled_gems at 2021-12-12 commit e4b35b158a16c42d2b91a3e88309875240d0ce27 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-03 19:40:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-12 13:05:15 +0900 [ruby/cgi] Check integer overflow in long range https://hackerone.com/reports/1328463 https://github.com/ruby/cgi/commit/ccaf6027e0 commit fbd733701659eed2d5a652b5890cfa80ccbce864 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-12 08:45:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-12 08:45:23 +0900 * 2021-12-12 [ci skip] commit 3518b00d75c3efc23df1f976a8570f777fbd6ce7 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-12 08:45:07 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-12 08:45:07 +0900 YJIT: Edit module documentation for clarity Add an empty line before the module doc string so RDoc can find it. While we are at it, edit for clarity. The file should already be using frozen string literals since c10d5085a247266c6399dc6fb68706d87cbdab05. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5246 Merged-By: XrXr commit d7ef372c9512b600a50d524e6b0b1cffc82933c1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-11 23:01:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-11 23:05:16 +0900 Remove the macOS badge [ci skip] It is disabled for the throughput of CI for now. Notes: Merged: https://github.com/ruby/ruby/pull/5243 commit b5c4570af4c6ae7341ee03e7fc2e140192ec32d8 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-12-11 14:18:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-11 14:29:20 +0900 [ruby/reline] Prefer wait_readable for fiber scheduler. https://github.com/ruby/reline/commit/06b4aa31fd commit c91fb5db597f4ccdfe5c30bc0f63d7dbeacd4166 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-11 14:01:19 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-11 14:01:19 +0900 Update stdlib versions [ci skip] commit ecb2ff60507a41c624f59cb9da6a008ab3ec36e1 Author: Yuta Saito <kateinoigakukun@gmail.com> AuthorDate: 2021-12-11 00:51:41 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-11 02:23:30 +0900 intern/select/posix.h: remove unused parameter from rb_fd_dup This unused parameter seems to be accidentally introduced by https://github.com/ruby/ruby/commit/9e6e39c Notes: Merged: https://github.com/ruby/ruby/pull/5241 commit e5ff030f60af24e256e5671af9133b6d274ee6f0 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-11 01:50:13 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-11 01:50:13 +0900 Enhanced RDoc for String (#5234) Treated: #to_i #to_f #to_s #inspect #dump #undump Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit d6817d05380afb18bd2af0ca43fdd4b62f0a8a0c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-11 00:13:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-11 00:13:41 +0900 * 2021-12-11 [ci skip] commit 1a62a50c4f9c835dee5d6bc17ca45914daea1bbd Author: Vyacheslav Alexeev <alexeev.corp@gmail.com> AuthorDate: 2021-12-10 16:40:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-11 00:13:25 +0900 [rubygems/rubygems] Add `github` and `ref` options to `bundle add` https://github.com/rubygems/rubygems/commit/c3e54acab0 commit 5f1975a454dd9a6743bfa196111a4fde62366798 Author: ima1zumi <mariimaizumi5@gmail.com> AuthorDate: 2021-12-06 23:26:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-10 22:19:14 +0900 [ruby/reline] @convert_meta is true unless 8-bit characters If Reline::IOGate.encoding contains 7-bit characters, convert-meta will set it On. Because in readline(3): > The default is On, but readline will set it to Off if the locale contains eight-bit characters. As far as I know, 7-bit encoding used in terminals is only US-ASCII. https://github.com/ruby/reline/commit/b71d1fa496 commit 519a945efcb0205bdf4085e32cc76e56610a45c0 Author: ima1zumi <mariimaizumi5@gmail.com> AuthorDate: 2021-11-22 21:16:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-10 22:19:14 +0900 [ruby/reline] Execute compress_meta_key if convert_meta is on fix `#357` When using 8-bit characters, it is better not to use `compress_meta_key`. I believe not to use `compress_meta_key` unless `set convert-meta on` is written in the `.inputrc`. The following is a quote from tmtm's comments. > The behavior of this compress_meta_key method is similar to the behavior of convert-meta=on in readline, but readline turns off convert-meta if the locale contains 8bit characters. > In readline(3): > convert-meta (On) > If set to On, readline will convert characters with the eighth > bit set to an ASCII key sequence by stripping the eighth bit and > prefixing it with an escape character (in effect, using escape > as the meta prefix). The default is On, but readline will set > it to Off if the locale contains eight-bit characters. https://github.com/ruby/reline/commit/9491cc8542 Co-authored-by: TOMITA Masahiro <tommy@tmtm.org> commit 3a2ae5bb19a653ac131136c6bf9a7550f64804f6 Author: YO4 <ysno@ac.auone-net.jp> AuthorDate: 2021-12-09 22:36:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-10 22:18:26 +0900 [ruby/reline] unleash real pasting speed 2700msec -> 410msec read 80 console inputs at once https://github.com/ruby/reline/commit/eb3ef7af98 commit 74765a5a36da70b0cc5c66ec71283819ef1160aa Author: YO4 <ysno@ac.auone-net.jp> AuthorDate: 2021-12-09 22:23:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-10 22:18:25 +0900 [ruby/reline] unleash pasting speed https://github.com/ruby/reline/commit/074e407c62 commit aed21d6574e1c18d64d446cf3709545aa7a608c2 Author: YO4 <ysno@ac.auone-net.jp> AuthorDate: 2021-12-06 23:01:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-10 22:16:46 +0900 [ruby/reline] support input surrogate paird codepoint support surrogate pair input https://github.com/ruby/reline/commit/0b4acedc6a commit 66e14e2076ce08c5425b3000a164a5c62a10b106 Author: YO4 <ysno@ac.auone-net.jp> AuthorDate: 2021-12-07 20:45:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-10 22:15:56 +0900 [ruby/reline] follow consolemode change fix 'https://github.com/ruby/reline/issues/300' https://github.com/ruby/reline/commit/b2cc6805a8 commit eb2d3c19fe70812f1f826eef225613baba3cc087 Author: Kevin Logan <klogan@enova.com> AuthorDate: 2019-05-14 14:02:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-10 20:54:29 +0900 [rubygems/rubygems] Properly fetch Gem#latest_spec_for with multiple sources https://github.com/rubygems/rubygems/commit/a93ec63df3 commit 0e60bc118b66d626d7e1f985dbd15cfba5e62715 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-09 02:36:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-10 19:09:55 +0900 [rubygems/rubygems] Ignore dependencies not actually locked from frozen check Only needed if there can be no explicit global source (bundler < 3). https://github.com/rubygems/rubygems/commit/73923f4af5 commit 30268d1de697de4b87ab6c655c4dc244be036900 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-10 18:39:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-10 18:39:48 +0900 Prefer flat_map commit a5baf8d6bc4c21259705f9b4f9aa2d9b9d7ab936 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-10 18:33:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-10 18:39:48 +0900 Revert zero-check for alloca Something weird results in int-in-bool-context and stringop-overflow warnings. commit 787daea6d2199c34d951aa3de0f3048829a8ea13 Author: Yuta Saito <kateinoigakukun@gmail.com> AuthorDate: 2021-12-06 11:26:05 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-10 17:15:17 +0900 Allow configuring TRANSIENT_HEAP_TOTAL_SIZE Some platforms have memory resource limits, but theap's memory area is too large for such situations. So allow configuring the size at build-time. Notes: Merged: https://github.com/ruby/ruby/pull/5218 commit 0cefc2fbdf43778c76dbfce809dce46b3da95e27 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-10 16:01:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-10 16:01:36 +0900 Update bundled_gems at 2021-12-10 commit 21749f7be3a0bfe287988b48cd28b5976d0c66f4 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-10 14:55:03 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-10 14:55:03 +0900 Update stdlib versions [ci skip] commit 27278150685e738f84105d09843d3ba371146c7a Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-28 07:36:00 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-12-10 05:59:37 +0900 Add {Method,UnboundMethod}#{public?,private?,protected?} These methods allow for checking whether the method has that visibility. Implements [Feature #11689] Notes: Merged: https://github.com/ruby/ruby/pull/5040 commit 74159f7f3e58d8e5ef2e6ee430b7ffa2ade5d952 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-10 03:38:20 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-10 03:38:20 +0900 [DOC] Stop mentioning Qfalse==0 for C extensions See [Feature #18397] for detail. Follow up for b859397e1b25a3f7847a380e7dd7db62f94fbe66. [ci skip] Co-authored-by: Koichi Sasada <ko1@atdot.net> Notes: Merged: https://github.com/ruby/ruby/pull/5240 Merged-By: XrXr commit b859397e1b25a3f7847a380e7dd7db62f94fbe66 Author: Jemma Issroff <jemmaissroff@gmail.com> AuthorDate: 2021-12-10 01:23:51 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-10 01:23:51 +0900 [DOC] Stop recommending Qfalse==0 assumption to C extensions Encourage use of RTEST(), direct Qfalse comparison, and remove references to Qfalse == 0 in extension documentation. See [Bug #18397] for detail. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5230 Merged-By: XrXr commit bcc2bb28b04054106f4a36e8fd69b2af6ecb033a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-17 22:01:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-10 01:04:59 +0900 Fix stack buffer overflow https://hackerone.com/reports/1306859 Notes: Merged: https://github.com/ruby/ruby/pull/5239 commit 9873af0b1a343dff6d1a8af4c813aa2c9ecc47d5 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-09 03:50:17 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-10 00:56:25 +0900 `TracePoint.allow_reentry` In general, while TracePoint callback is running, other registered callbacks are not called to avoid confusion by reentrace. This method allow the reentrace. This method should be used carefully, otherwize the callback can be easily called infinitely. [Feature #15912] Co-authored-by: Jean Boussier <jean.boussier@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/5231 commit 88c804a6e720d85afbd6714113a85e6beb48c296 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-10 00:33:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-10 00:33:46 +0900 * 2021-12-10 [ci skip] commit da652e1827a47c8ee37fab72832ba8324c94911f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-26 01:48:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-09 21:51:39 +0900 Check month overflow when marshal https://hackerone.com/reports/1244185 Notes: Merged: https://github.com/ruby/ruby/pull/5238 commit 12a0a89e22fbc312e4a95a7749bc153532daa855 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-05 21:53:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-09 20:26:44 +0900 [ruby/securerandom] Split Random::Formatter from SecureRandom [Feature #18190] https://github.com/ruby/securerandom/commit/1e57277b9e Notes: Merged: https://github.com/ruby/ruby/pull/5237 commit 4258c8df867b497369a815e92f741aebf1469b0d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-09 19:48:22 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-09 19:48:22 +0900 Fixed filename for Open3::VERSION commit b06e37e242f39ef22f69c157945307f978e20597 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-09 19:33:47 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-09 19:33:47 +0900 Followed up f5d80c26d493c14241d4e3320437e62d7f54eabb for sync_default_gems.rb commit d74fe2061de88ebae2f406e6042d15a57344c0ff Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-09 19:28:50 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-09 19:28:55 +0900 Adjust gemspec location of default gems commit f5d80c26d493c14241d4e3320437e62d7f54eabb Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-09 17:53:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-09 19:28:54 +0900 Removed JRuby specific helper for open3 commit 080169147e0607ea5a19ca9291e6642fe87c5321 Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-10-01 00:42:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-09 19:28:54 +0900 [ruby/open3] Use RbConfig's 'host_os' RUBY_PLATFORM on JRuby is always 'java' so it does not indicate the host OS. https://github.com/ruby/open3/commit/d2308040e6 commit eb06b37c460a8237fd0f02a075307e1229b0359b Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-10-01 00:38:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-09 19:28:54 +0900 [ruby/open3] Update to match JRuby 9.4 This allows the wrapper functions in the main open3 to be defined while using our ProcessBuilder logic for the internal popen implementation. Note this adds logic to reject redirects from a numeric fd to a live IO object (or not a String or to_path object) since we cannot support direct IO redirects with ProcesBuilder. This patch allows tests to complete with the ProcessBuilder impl. Only three tests fail: * test_numeric_file_descriptor2 and test_numeric_file_descriptor2 fail due to redirecting streams to a pipe IO. * test_pid fails expecting a real PID which we cannot provide via ProcessBuilder. https://github.com/ruby/open3/commit/73f986c233 commit 01febcab3e6258051e2fc083b906d9ac2bdc3927 Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-09-30 03:21:31 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-09 19:28:54 +0900 [ruby/open3] Add JRuby's Windows (JDK non-native) Open3 support This adds JRuby's logic used on platforms where we do not have native access to posix_spawn and related posix functions needed to do fully-native subprocess launching and management. The code here instead uses the JDK ProcessBuilder logic to simulate most of the Open3 functionality. This code does not pass all tests, currently, but provides most of the key functionality on pure-Java (i.e. no native FFI) platforms. https://github.com/ruby/open3/commit/689da19c42 commit 34ebd1392318b45f120f4d598f710bfcf5069c51 Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-09-30 02:40:14 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-09 19:28:54 +0900 [ruby/open3] Only use JITSupport on CRuby Fixes https://github.com/ruby/open3/pull/2 https://github.com/ruby/open3/commit/6b7ede69e8 commit d150b8d06fbe5dc7dadafa2c6215491deaade26d Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-07-30 15:49:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-09 19:28:54 +0900 [ruby/open-uri] gemspec: This gem exposes 0 executables This just makes that fact more explicit. https://github.com/ruby/open-uri/commit/ffbfba5d69 commit c41751f10e361c0fccf7ec5c2ca80638877eb1ad Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-19 13:11:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-09 19:28:54 +0900 [ruby/io-wait] Bump up 0.2.1 https://github.com/ruby/io-wait/commit/c97ab9a212 commit dd8b9c1d03316e6b1aa8ad4de413df787b6534f7 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-10-01 17:51:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-09 19:28:53 +0900 [ruby/English] gemspec: Remove unused "executables" configuration This gem exposes no executables. https://github.com/ruby/English/commit/bb1ce0af20 commit 6ff9fcdfa8c6d55474e6de70ad241625b9265a5b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-05 18:06:03 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-09 18:16:06 +0900 [ruby/rdoc] Support addition Object class when adding methods to top level https://github.com/ruby/rdoc/commit/23747b4950 commit 2e50989ad39a1085e04a901d072e7a2a77d1dc8f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-04 18:05:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-09 18:16:05 +0900 [ruby/rdoc] Resolve class and method of the same name correctly https://github.com/ruby/rdoc/commit/1e16284fe5 commit fa806cf233938af64ce928a37d2641dd762da87a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-12-06 18:15:44 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-12-09 18:15:52 +0900 Fix typo of namespace commit cce331272b07636d536c8227288ab3fbcf24e2aa Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-09 03:58:44 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-09 16:20:04 +0900 `Ractor.make_shareable` checks proc's sefl `Ractor.make_shareable(proc_obj)` raises an `IsolationError` if the self of `proc_obj` is not a shareable object. [Bug #18243] Notes: Merged: https://github.com/ruby/ruby/pull/5232 commit c5f68a9a24c4e25f551108bda4738b1000d7b197 Author: Akihiro Sada <da100ro111@gmail.com> AuthorDate: 2021-12-09 12:28:42 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-09 12:28:42 +0900 Fix typo in NEWS-2.5.0 [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5236 Merged-By: nobu <nobu@ruby-lang.org> commit 45c5794d325106b212deddeea08477d30bc6df21 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-09 06:33:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-09 08:58:25 +0900 [rubygems/rubygems] Don't load system rubygems during tests Since tests are about testing our development copy of rubygems, not whatever is installed in the system. https://github.com/rubygems/rubygems/commit/f5e0b68cdd commit 82bb9cedd3fb41fd78d612153c35fdb8c5344d5a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-09 02:24:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-09 06:59:52 +0900 YJIT: Fix leak in compilation loop Previously, when there are too many blocks in a batch, the last block in the batch is not tracked in the array of batches and not freed. Notes: Merged: https://github.com/ruby/ruby/pull/5229 commit c47e821b8928b1a8755dc8693ffce57342c10868 Author: Marc-André Lafortune <github@marc-andre.ca> AuthorDate: 2021-12-09 04:46:37 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-12-09 04:47:46 +0900 [ruby/ostruct] Bump version to 0.5.2 commit 9c269316357a1a5b6ef27794f3c9412b2e33a6cd Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-09 04:06:53 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-12-09 04:47:46 +0900 [ruby/ostruct] `Proc`'s self should be shareable. To fix the issue https://bugs.ruby-lang.org/issues/18243 we need to make sure the Proc's self is shareable. These procs are used by `define_method` and it doesn't use Proc's self, so `nil` is enough. commit 9a2ecddf32528286c81ca87db1d17c85aca4e754 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-09 03:29:56 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-09 03:29:56 +0900 Enhanced RDoc for String (#5227) Treats: #replace #clear #chr #getbyte #setbyte #byteslice #reverse #reverse! #include? Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 1966dc7a5d3b31d37404b081c0833194de83f0b2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-09 00:30:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-09 00:30:36 +0900 * 2021-12-09 [ci skip] commit 17e7219679fc66cfc7a687c7fbae1bf2329beed5 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-06 11:35:54 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-09 00:30:17 +0900 ext/ripper/lib/ripper/lexer.rb: Do not deprecate Ripper::Lexer::State#[] The old code of IRB still uses this method. The warning is noisy on rails console. In principle, Ruby 3.1 deprecates nothing, so let's avoid the deprecation for the while. I think It is not so hard to continue to maintain it as it is a trivial shim. https://github.com/ruby/ruby/pull/5093 Notes: Merged: https://github.com/ruby/ruby/pull/5219 commit 3021c3cedcbad8f2293c87b3077dcdcb748823f2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-08 18:02:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-08 19:11:02 +0900 Add `to_f` to predefined conversion method name to ID table Notes: Merged: https://github.com/ruby/ruby/pull/5228 commit 454b4da7635b6322e85fd38735d9a04963644c4b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-08 17:59:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-08 17:59:16 +0900 [DOC] Integer.try_convert [ci skip] commit af6e0883570e8c61cef6234040d8689d88db7300 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-08 13:26:53 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-08 13:26:53 +0900 Skip bind port 1 when ip_unprivileged_port_start<=1 Linux can allow to bind port 1 to user. And `ip_unprivileged_port_start` is 0 on [lima](https://github.com/lima-vm/lima) default vm. ``` 1) Socket#bind on SOCK_DGRAM socket raises Errno::EACCES when the current user does not have permission to bind FAILED Expected Errno::EACCES but no exception was raised (0 was returned) .../ruby/spec/ruby/library/socket/socket/bind_spec.rb:38:in `block (4 levels) in <top (required)>' .../ruby/spec/ruby/library/socket/socket/bind_spec.rb:4:in `<top (required)>' 2) Socket#bind on SOCK_STREAM socket raises Errno::EACCES when the current user does not have permission to bind FAILED Expected Errno::EACCES but no exception was raised (0 was returned) .../ruby/spec/ruby/library/socket/socket/bind_spec.rb:79:in `block (4 levels) in <top (required)>' .../ruby/spec/ruby/library/socket/socket/bind_spec.rb:44:in `<top (required)>' 3) Socket#bind using IPv4 using a packed socket address raises Errno::EACCES when the user is not allowed to bind to the port FAILED Expected Errno::EACCES but no exception was raised (0 was returned) .../ruby/spec/ruby/library/socket/socket/bind_spec.rb:119:in `block (6 levels) in <top (required)>' .../ruby/spec/ruby/library/socket/socket/bind_spec.rb:85:in `<top (required)>' 4) Socket#bind using IPv6 using a packed socket address raises Errno::EACCES when the user is not allowed to bind to the port FAILED Expected Errno::EACCES but no exception was raised (0 was returned) .../ruby/spec/ruby/library/socket/socket/bind_spec.rb:119:in `block (6 levels) in <top (required)>' .../ruby/spec/ruby/library/socket/socket/bind_spec.rb:85:in `<top (required)>' ``` commit 4a3e7984bfbaab45cbd6e73373ee1bba5ce21dc1 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-12-08 08:18:11 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-08 08:18:11 +0900 Avoid Array allocation when appending to args array (#5211) * Use duparray when possible for argspush ARGSPUSH is the node we see with a single value pushed to the end of a splatted array. ARGSCAT is similar, but is used when multiple values are being concatenated to the list. Previously only ARGSCAT had an optimization where when all the values were static it would use duparray instead of newarray to create the intermediate array. This commit adds similar behaviour for ARGSPUSH, using duparray instead of putobject/newarray. * Replace duparray with putobject before concatarray When performing duparray/concatarray we know we'll never use the intermediate array being created by duparray, so we should be able to use it as a temporary object. This avoids an extra array allocation for NODE_ARGSPUSH (ex. [*foo, 1]) and NODE_ARGSCAT (ex. [*foo, 1, 2]). Notes: Merged-By: jhawthorn <john@hawthorn.email> commit 852ea1e893e68952fbeaab1b2e29cd7e0bf61f0a Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-08 03:25:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-08 07:59:35 +0900 [rubygems/rubygems] Remove unnecessary comment https://github.com/rubygems/rubygems/commit/5e50f12e7a commit 76cad13759143ab35559b30d3e8eed71ce3e8553 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-08 03:23:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-08 07:59:34 +0900 [rubygems/rubygems] Don't add custom github source to `bundle init` Gemfile It's provided by bundler. https://github.com/rubygems/rubygems/commit/25ccaab46b commit f0ef9ffed1afe6a4add8959ed54b986d952c0a31 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-08 03:10:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-08 07:59:34 +0900 [rubygems/rubygems] Cancel deprecation of custom git sources https://github.com/rubygems/rubygems/commit/99cd6e0627 commit 6beb05c2ad924eed761e6a31fcc397a5faa57553 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-08 04:27:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-08 07:20:56 +0900 YJIT: Undo add_block_version() in OOM code path Preivously, [1] failed to undo the effect of applying add_block_version() to a block, leaving dangling pointers in the iseq when compilation fails. [1]: d0772632bf2ff15f73c0d3601d958670a5c77855 Notes: Merged: https://github.com/ruby/ruby/pull/5226 commit 286c07f0dcd7999bfb9cb4889125ebce59dca4cc Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-08 05:37:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-08 07:20:34 +0900 YJIT: Remove guard_self_is_heap() It's superseded by functionality added to jit_guard_known_klass(). In weird situations such as the ones in the included test, guard_self_is_heap() triggered assertions. Co-authored-by: Jemma Issroff <jemmaissroff@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/5225 commit e51d0d2853126322e8463508aabadc661f45fbe5 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-08 01:49:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-08 01:49:36 +0900 * 2021-12-08 [ci skip] commit 1b12ebb94e50e16ca9f226e583ee2a3d418402d6 Author: Simon Fish <si@mon.fish> AuthorDate: 2021-10-27 01:50:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-08 01:49:20 +0900 [rubygems/rubygems] Add require parameter to `bundle add` Test and ensure "false" is handled Don't use yield_self to operate on autorequire Remove duplicate autorequire Add banner to require option Don't use json to break down require params Pass linter https://github.com/rubygems/rubygems/commit/a4f2f8ac17 commit 26303c31f0939d093f88f609c846590ad538114f Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-13 19:18:54 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-07 23:27:59 +0900 [rubygems/rubygems] Pass "--" to git commands to separate positional and optional args To make sure git uri's specified in Gemfile are never misinterpreted as optional arguments, potentially allowing for local code execution. https://github.com/rubygems/rubygems/commit/90b1ed8b9f commit bb3f17bd98a652f28b7cccadf08213840e267ad1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-07 22:00:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-07 22:00:23 +0900 More indentation in NEWS.md [ci skip] The current Markdown implementation of RDoc requires list contents to be indented 4 columns except for the first paragraph. Maybe fixed as other implementations in the future. commit a2d4e1cda68a49980a4f9f353f400efbde7e7884 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-07 19:44:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-07 21:55:41 +0900 Fixed the check order in wmap_live_p [Bug #18392] Check if the object is a pointer to heap before check the flag in that object. Notes: Merged: https://github.com/ruby/ruby/pull/5224 commit d6c5a30cfdf658280338dbb8c8b17fab3190b928 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-07 19:33:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-07 21:55:41 +0900 ObjectSpace::WeakMap#inspect: check if living object [Bug #18392] Notes: Merged: https://github.com/ruby/ruby/pull/5224 commit ec878dac90df0ca5f39e72261b8d4e2898486a93 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-07 12:32:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-07 15:20:02 +0900 Move -ljemalloc to DLDLIBS [Bug #18391] Set the alternative memory management library only as a platform specific library, without other libraries. Notes: Merged: https://github.com/ruby/ruby/pull/5223 commit 91e9d27629dbea71248868ed98f4b4e8796b81b1 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-07 15:02:08 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-07 15:02:08 +0900 Fix a link [ci skip] commit ad4ac68c7b9fca277c1ae5b1e48ed659df6fd122 Author: Marc-André Lafortune <github@marc-andre.ca> AuthorDate: 2021-12-07 13:19:41 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-12-07 13:21:24 +0900 [ruby/ostruct] ostruct v0.5.1 commit 95d9bcf2b2921baee5dfacdf9dfd606a4c5167a8 Author: Marc-André Lafortune <github@marc-andre.ca> AuthorDate: 2021-12-07 13:05:53 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-12-07 13:21:07 +0900 [ruby/ostruct] Alias less methods Skips methods that do not end with letter (in particular `!~` and `=~`) For JRuby, also skip `instance_exec`, `instance_eval` and `eval` commit dfd9728c87640d9699b1e7c63a6fefb6b2797fbc Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-12-07 12:07:28 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-07 12:07:28 +0900 NEWS.md: Describe the change of the default width of `pp` [Feature #12913] commit 794b9a28b562121426b3b1a19d2e465616af3ac0 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-07 09:14:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-07 10:27:15 +0900 YJIT: Add integrity checks for blockid Verify that the iseq idx pair for the block is valid in invalidate_block_version(). While we are at it, bound loop iterating over instructions to `iseq_body->iseq_size`. Notes: Merged: https://github.com/ruby/ruby/pull/5222 commit b7ea66bc3228635a87125bea69f01779f75c39de Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-07 07:09:52 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-07 09:24:41 +0900 YJIT: Fix incomplete invalidation from opt_setinlinecache As part of YJIT's strategy for promoting Ruby constant expressions into constants in the output native code, the interpreter calls rb_yjit_constant_ic_update() from opt_setinlinecache. The block invalidation loop indirectly calls rb_darray_remove_unordered(), which does a shuffle remove. Because of this, looping with an incrementing counter like done previously can miss some elements in the array. Repeatedly invalidate the first element instead. The bug this commit resolves does not seem to cause crashes or divergent behaviors. Co-authored-by: Jemma Issroff <jemmaissroff@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/5221 commit 0209beaca6880eba18eaf15591ff7f8d02b0d208 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-07 07:26:28 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-07 07:26:28 +0900 Enhanced RDoc for literals.rdoc (#5213) Makes link targets among percent literals. Adds links to those targets. Adds examples to percent literals. Links from opening summary list to corresponding sections. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 4c39fae4de375107f24095f4b4412efcefcf2a08 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-07 02:03:06 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-07 02:03:30 +0900 add a NEWS entry for `mandatory_only?` commit 87664b5cc8f945ed0c5611b27179913585ec2326 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-06 17:36:01 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-07 02:03:30 +0900 add a NEWS entry about GC.total_time commit 660687e6fa60ff4d84805b0ef89fb19ad1b0b8f6 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-12-06 17:19:42 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-12-07 02:03:30 +0900 add NEWS about the improvement of `Struct` commit fb356c6f5709307806695d3a79c33d7dd7fd139b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-07 01:53:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-07 01:53:55 +0900 * 2021-12-07 [ci skip] commit 526c9359cae8226608a566f414f04b2c6a204d81 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-30 02:18:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-07 01:53:39 +0900 [rubygems/rubygems] Don't cleanup paths from gems already activated from `$LOAD_PATH` This way, if some default gem has been required before bundler, and rubygems has enhanced the `$LOAD_PATH` to use the latest version in the system, further requires of that default gem after bundler has been activated will use the same version and don't cause redefinition warnings or worse problems derived from the fact of mixing up two different versions. That, unless the gem is a `Gemfile` dependency. In that case, we'll get a mismatch error anyways as we do now. This fix doesn't mean that all default gems internally used by bundler/rubygems are now supported inside `Gemfile`'s. That should be handled case by case, but it will now bite people only when they try to add the gem to their `Gemfile`, not before. https://github.com/rubygems/rubygems/commit/7325530547 commit 715a51a0d6963f9d727191d4e1ad0690fd28c4dd Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-12-02 20:59:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-06 20:27:29 +0900 [rubygems/rubygems] Feature: accept pull request URLs as github source Very often github source is used to temporarily use a modified gem while a PR upstream is being reviewed. So for instance https://github.com/ruby/bigdecimal/pull/211 will look like: ```ruby gem "bigdecimal", github: "casperisfine/bigdecimal", branch: "git-gem" # https://github.com/ruby/bigdecimal/pull/200 ``` It's annoying because you have to fiddle with the branch name, which is copied as `casperisfine:git-gem`, etc etc. If I could simply use the PR URL like this: ``` gem "bigdecimal", github: "https://github.com/ruby/bigdecimal/pull/211" ``` It would make a very common task for me so much simpler. https://github.com/rubygems/rubygems/commit/517c527751 commit d044ffd77fb3a486bbaca350980beee3f222bdb1 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-05 17:23:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-06 18:43:29 +0900 [rubygems/rubygems] Allow using `Gem::Version` without loading the rest of rubygems https://github.com/rubygems/rubygems/commit/1b862537a5 commit e41c195cc52b2ce1ba00126917be606d52d75a30 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-05 17:22:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-06 18:43:28 +0900 [rubygems/rubygems] Fix incorrect quoting Test was just returning a string instead of actually exercising the require. https://github.com/rubygems/rubygems/commit/62c827d7e1 commit 25423f0918eb31477a9ef72a4c14b0c5c5b78bc6 Author: Josef Šimánek <josef.simanek@gmail.com> AuthorDate: 2021-12-06 09:42:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-06 18:03:54 +0900 [rubygems/rubygems] Add --version parameter to bundle info command. https://github.com/rubygems/rubygems/commit/7d9fdd908d commit 5ce3272e513e0dafedcc40f121e2d71bef3a3688 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-06 17:53:37 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-06 17:53:37 +0900 autogen.sh: Copy auxiliary files instead of symlinks with `-i` When accessing from containers, symbolic links may not be able to reach outer file systems. Notes: Merged: https://github.com/ruby/ruby/pull/5220 Merged-By: nobu <nobu@ruby-lang.org> commit 9c0c66f721d707bec88b1690fa12d5b231ae2314 Author: Colby Swandale <me@colby.fyi> AuthorDate: 2021-12-04 16:25:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-06 17:42:56 +0900 [rubygems/rubygems] add login & logout for the signin & signout commands respectively https://github.com/rubygems/rubygems/commit/49b491970b commit e563c6068eed526e7eb9bc4d3606501c827da674 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-06 14:18:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-06 14:18:01 +0900 sync_default_gems.rb: convert commit hashes to github URLs [ci skip] commit c2192cb985c10c90ba5e4d64652f79f89afff983 Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-12-06 09:40:54 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-12-06 09:40:54 +0900 Clarify the error message when trying to import C methods [Bug #18385] commit e713552868c05fe77a2e3acb825460e5c2bdb53f Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2020-02-17 22:02:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-06 05:25:22 +0900 [rubygems/rubygems] LOAD_PATH is already reset globally https://github.com/rubygems/rubygems/commit/b0bbb27115 commit 2fc47bad78a26e5f53e0281f328afcc0518c4d41 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2020-02-14 02:17:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-06 05:25:21 +0900 [rubygems/rubygems] Remove unneded setup https://github.com/rubygems/rubygems/commit/9815a04e31 commit a785e6c356850ce097c8403df4c59c6a77df9bcc Author: Alan Wu <alanwu@ruby-lang.org> AuthorDate: 2021-12-06 01:02:55 +0900 Commit: Alan Wu <alanwu@ruby-lang.org> CommitDate: 2021-12-06 01:06:05 +0900 Make `leaf` const in VM generator Assigning to `leaf` in insns.def would give undesirable results. commit 26e4887eed99e11710c9ed2f7c544c7b3d99341e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-06 00:26:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-06 00:26:51 +0900 * 2021-12-06 [ci skip] commit 26063d39546ccd6d0b9d42defc2ad1bb8d35cc27 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-06 00:08:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-06 00:26:35 +0900 YJIT: Initialize code buffer with PUSH DS PUSH DS triggers the #UD processor exception in 64-bit mode, which the OS translates to a SIGILL. Unlike INT3, this triggers the usual crash reporter, which makes failures easier to notice. When there is a debugger attached, the PUSH DS pauses execution just like INT3. Notes: Merged: https://github.com/ruby/ruby/pull/5217 commit bbfefd45c6c99c4371cc0789bdd1da9ea3ade701 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-05 22:50:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-05 23:13:23 +0900 [ruby/securerandom] Remove no longer used helper methods Unused since r59801, 782b2050b837206d06767d42d0ea5117921247c8, or https://github.com/ruby/securerandom/commit/52c8e7a85e017f. https://github.com/ruby/securerandom/commit/38fc2c4427 commit 00a941ac4bb5520a412bcd70ecc8a65fd1e21a5b Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-05 20:34:25 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-05 20:34:25 +0900 Update stdlib versions [ci skip] commit 20dfc7621ce33034afcc109fabc0e46acc43a1ae Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-12-05 20:31:58 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-12-05 20:31:58 +0900 Sort URLs by issue numbers [ci skip] commit 19f037e452555354a6eddf78ca2ddbcb3bacb2e7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-05 19:08:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-05 19:23:42 +0900 More indentation in NEWS.md [ci skip] The current Markdown implementation of RDoc requires list contents to be indented 4 columns except for the first paragraph. Maybe fixed as other implementations in the future. commit e818193784f31b405a7f087b56fe79bb8dbce395 Author: Junichi Ito <jit@sonicgarden.jp> AuthorDate: 2021-12-05 17:15:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-05 19:07:06 +0900 Fix wrong indentation in NEWS.md [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5216 commit b555e659c4974acc423083b71b1bd5ec6a926046 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-05 18:08:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-05 18:47:02 +0900 Do not use `fcopyfile` if appending to non-empty file [Bug #18388] `fcopyfile` appends `src` to `to` and then truncates `to` to it's original size. commit a72aecac3ae81e955997e4d789504e60196e2697 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-06 04:57:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-05 05:47:46 +0900 [rubygems/rubygems] Don't write outside of destdir when regenerating plugins https://github.com/rubygems/rubygems/commit/141ef4cb9a commit 9dc76e102ec00bb93b7aafaaa1309ca426d02595 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 21:55:09 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-05 05:47:45 +0900 [rubygems/rubygems] Don't write outside of destdir when installing default bundler https://github.com/rubygems/rubygems/commit/a62d00c5e8 commit ec28771fde883f7d2fe04b46f06556112454f4d6 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 02:20:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-05 05:47:45 +0900 [rubygems/rubygems] Fold a line that got out of hand https://github.com/rubygems/rubygems/commit/49317d8beb commit ed7a50015adf823b105d032c8a5480ad9e6972ee Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 20:44:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-05 05:47:44 +0900 [rubygems/rubygems] Fix binstubs and plugins regeneration with `--destdir` is used https://github.com/rubygems/rubygems/commit/7079de16fa commit 62957debd5f9f3c43d79068b8302779f45bb1512 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-05 03:03:17 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-05 03:04:57 +0900 README.md: Fix link to platform maintainers list Follow up for 6bca410ae8b16238d02c868ce8fa1af13a5c4460 [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5215 commit 9733b7e38f7f711e8e5929fabd77870f2773d09c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-05 01:35:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-05 01:35:56 +0900 * 2021-12-05 [ci skip] commit 34b5e2566da88c392ada07437c3e8b44c295c9b2 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-01 08:11:42 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-05 01:35:37 +0900 YJIT: Enable out of memory tests As of [1] and [2], YJIT has enough support for out of memory conditions to pass these two basic tests. OOM code paths are prone to bugs since they are rarely exercised in common workloads. We might want to add CI runs that stress test these code paths. Maybe outside of GitHub Actions for capacity reasons. [1]: f41b4d44f95978dfa97af04af00055dc3fbf7978 [2]: b5b6ab4194f16e96ee5004288cc469ac1bca41a3 Notes: Merged: https://github.com/ruby/ruby/pull/5214 commit 4a6ca12904c8160d68ac4b552636159926afff41 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-04 16:20:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-04 16:20:30 +0900 Remove unversioned phony target for pkgconfig file [Bug #18374] It results in a circular dependency when `--with-ruby-pc=ruby.pc` is given. [ci skip] commit a4964174e26303524cee8c2d8523048b87137993 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-04 10:40:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-04 10:40:15 +0900 Fix circular dependencies specific to in-place build [Bug #18374] * Move the rubyspec running recipe after the rule for rubyspec C-API extension library, so that separate dummy recipe is not needed. * Add a dummy recipe for rubyspec.h before the rubyspec running recipe, so that the dependency of extensions do not fire the latter. commit d118e7c025adf0221fe16ad3a0d57ba9605fd2a7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-04 10:35:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-04 10:35:44 +0900 Turn nd_type_p into an inline function commit f41b4d44f95978dfa97af04af00055dc3fbf7978 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-12-02 04:15:23 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-04 10:02:25 +0900 YJIT: Bounds check every byte in the assembler Previously, YJIT assumed that basic blocks never consume more than 1 KiB of memory. This assumption does not hold for long Ruby methods such as the one in the following: ```ruby eval(<<RUBY) def set_local_a_lot #{'_=0;'*0x40000} end RUBY set_local_a_lot ``` For low `--yjit-exec-mem-size` values, one basic block could exhaust the entire buffer. Introduce a new field `codeblock_t::dropped_bytes` that the assembler sets whenever it runs out of space. Check this field in gen_single_block() to respond to out of memory situations and other error conditions. This design avoids making the control flow graph of existing code generation functions more complex. Use POSIX shell in misc/test_yjit_asm.sh since bash is expanding `0%/*/*` differently. Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/5209 commit 3be067234f156d75e6143cca5037df7eef1bd112 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-12-04 05:58:09 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-04 05:58:09 +0900 NEWS for [GH-#5146] [ci skip] (#5210) Notes: Merged-By: jhawthorn <john@hawthorn.email> commit c38c1d82b14237cd9d4268b88fef28e9379280f9 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-29 21:43:09 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-04 05:18:11 +0900 [rubygems/rubygems] Let original EACCES error be raised This block of code already wraps file operations with `SharedHelpers.filesystem_access`, which rescues and re-raises more friendly errors. Also, I'm not fully sure creating a temporary directory can end up raising an `Errno::EACCES` error from reading `tmpdir` sources. Finally, this rescue block apparently leads to some false positives when firewall is blocking the ruby executable on Windows, or at least that's what we've got reported. In any case, I think it's best to let the original error be raised. https://github.com/rubygems/rubygems/commit/f7dbe54404 commit 54ca530dbe39f389da2b5972a574460a3665eeff Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-12-02 04:01:34 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-12-04 02:45:58 +0900 YJIT: Add ivar counter exits On Rails we're seeing a lot of exits for ivars in the Active Record tests. In trying to track them down it was hard to find what code is exiting. This change adds a counted exit for when an object is "megamorphic". In these cases there are too many specializations in the Ruby code so YJIT exits. Co-authored-by: Aaron Patterson tenderlove@ruby-lang.org Notes: Merged: https://github.com/ruby/ruby/pull/5197 commit 7fc9d83bd1c1b8c44790b6af0f81f3b7364270ca Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-04 01:46:35 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-04 01:46:35 +0900 Fix link (#5208) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 081539023adc2a5ed4466ef54767c5e0c4d72ace Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-12-03 06:27:43 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-12-04 00:26:26 +0900 Refactor GC functions to have consistent naming Refactor function names for consistency. Function with name xyz_page should have a corresponding function named xyz_plane. Notes: Merged: https://github.com/ruby/ruby/pull/5204 commit 81eadd976fc332a4c489b4eaf8ab45fd24c877c2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-04 00:01:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-04 00:01:42 +0900 * 2021-12-04 [ci skip] commit ec7f14d9fab82b097fb8b58501461cd0e19d6bdf Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-12-04 00:01:24 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-04 00:01:24 +0900 Add `nd_type_p` macro Notes: Merged: https://github.com/ruby/ruby/pull/5091 Merged-By: nobu <nobu@ruby-lang.org> commit 28fb6d6b9e06a632f96244a635a045622a6be276 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-12-03 22:12:28 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-03 22:12:28 +0900 Adding links to literals and Kernel (#5192) * Adding links to literals and Kernel Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 324d57df0b28982590609d7ae080f82074a82a5c Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-12-03 18:17:21 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-03 20:27:29 +0900 TestClass#test_subclass_gc reduce the number of iteration by 10x The test was taking 10 seconds on my machine and did timeout on CI once. Notes: Merged: https://github.com/ruby/ruby/pull/5205 commit 0073f624f0a89f454f935940a5140f6ff73280f9 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-17 23:26:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 20:00:51 +0900 [rubygems/rubygems] Don't unnecessarily loop twice through dependencies https://github.com/rubygems/rubygems/commit/06b4a7994d commit 4c5e862434157c4ef258f432431262b3685c4036 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-17 23:14:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 20:00:51 +0900 [rubygems/rubygems] Improve source gemfile/lockfile equivalence checks Since we no longer have multiple global sources, each top level dependency is always pinned to a single source, so it makes little sense to talk about adding or removing a source. Instead, source changes always mean to change the source one or more dependencies are pinned to. This logic can now be much simpler. https://github.com/rubygems/rubygems/commit/f1d33fa0df commit 248fae0ec43c2df6d9b545acc7f56bdfd5f89dec Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-12 07:58:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 20:00:50 +0900 [rubygems/rubygems] Improve sources representation We have two representations of a source. Once used for sorting, which should not depend on the source's state, but solely on its static information, like remotes. Another one used for error and informational messages, which should properly inform about the exact state of the source when the message is printed. This commit makes the latter be the default implementation of `to_s`, so that error and informational messages are more accurate by default. https://github.com/rubygems/rubygems/commit/b5f2b88957 commit 7d974cc56fa0555beed0bf4f6fe34322cd24cd26 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-17 22:09:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 20:00:50 +0900 [rubygems/rubygems] Don't overwrite locked dependency sources too early Otherwise we hide some useful message about dependency source changes. https://github.com/rubygems/rubygems/commit/c926673c5b commit aa87780f8f27253e216d4883dd4cae84d545ec1b Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-17 22:21:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 20:00:49 +0900 [rubygems/rubygems] Fix incorrect order in changed sources message https://github.com/rubygems/rubygems/commit/6f1b5f68de commit ca65f7bb8afe747628d3d48caf63e5fcba303e29 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-17 20:58:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 20:00:49 +0900 [rubygems/rubygems] Remove unnecessary code Somehow this is trying to relax frozen mode constraints for path sources. It doesn't make sense to me and it's not covered by any spec so I'm killing it. https://github.com/rubygems/rubygems/commit/17c978e161 commit d19c266b49022e6788a4e14be86fef22a73d5871 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-17 20:02:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 20:00:48 +0900 [rubygems/rubygems] Reuse `locked_dependencies` helper It makes the code more consistent with the above line. https://github.com/rubygems/rubygems/commit/f28d05a548 commit 901a257533d3bc2139770817def14e1f6017be2f Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-17 20:01:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 20:00:47 +0900 [rubygems/rubygems] Reformat for consistency with the above line https://github.com/rubygems/rubygems/commit/11193be3f1 commit 906b95780fa7f9ff23a2d724d25fd4f69d494543 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-17 17:19:03 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 20:00:47 +0900 [rubygems/rubygems] Remove unnecessary nil checks https://github.com/rubygems/rubygems/commit/d047b8935d commit e4c7c5468e01125cf10b06e7db1006b64bf1cd7e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-03 18:35:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-03 18:35:35 +0900 Add tests of string argument to Time.at commit dd6c59cdaf532e6c7cc5d62c7662e75697bc61a4 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-03 16:00:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 16:00:45 +0900 Update bundled_gems at 2021-12-03 commit 433a5a0eb03d5315f9b71988038352ced56f311a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-03 13:17:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-03 13:17:38 +0900 [DOC] Fix Time.new description [ci skip] commit 733500e9d02b11ff60fbbdb8daa43c2e9cfbd750 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-12-03 08:53:39 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-03 08:53:39 +0900 Lazily create singletons on instance_{exec,eval} (#5146) * Lazily create singletons on instance_{exec,eval} Previously when instance_exec or instance_eval was called on an object, that object would be given a singleton class so that method definitions inside the block would be added to the object rather than its class. This commit aims to improve performance by delaying the creation of the singleton class unless/until one is needed for method definition. Most of the time instance_eval is used without any method definition. This was implemented by adding a flag to the cref indicating that it represents a singleton of the object rather than a class itself. In this case CREF_CLASS returns the object's existing class, but in cases that we are defining a method (either via definemethod or VM_SPECIAL_OBJECT_CBASE which is used for undef and alias). This also happens to fix what I believe is a bug. Previously instance_eval behaved differently with regards to constant access for true/false/nil than for all other objects. I don't think this was intentional. String::Foo = "foo" "".instance_eval("Foo") # => "foo" Integer::Foo = "foo" 123.instance_eval("Foo") # => "foo" TrueClass::Foo = "foo" true.instance_eval("Foo") # NameError: uninitialized constant Foo This also slightly changes the error message when trying to define a method through instance_eval on an object which can't have a singleton class. Before: $ ruby -e '123.instance_eval { def foo; end }' -e:1:in `block in <main>': no class/module to add method (TypeError) After: $ ./ruby -e '123.instance_eval { def foo; end }' -e:1:in `block in <main>': can't define singleton (TypeError) IMO this error is a small improvement on the original and better matches the (both old and new) message when definging a method using `def self.` $ ruby -e '123.instance_eval{ def self.foo; end }' -e:1:in `block in <main>': can't define singleton (TypeError) Co-authored-by: Matthew Draper <matthew@trebex.net> * Remove "under" argument from yield_under * Move CREF_SINGLETON_SET into vm_cref_new * Simplify vm_get_const_base * Fix leaf VM_SPECIAL_OBJECT_CONST_BASE Co-authored-by: Matthew Draper <matthew@trebex.net> Notes: Merged-By: jhawthorn <john@hawthorn.email> commit 1f4af993835219efa8feaf76a0b36252028691f1 Author: Josef Šimánek <josef.simanek@gmail.com> AuthorDate: 2021-12-03 04:44:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 06:01:18 +0900 [rubygems/rubygems] Move required_ruby_version gemspec attribute to recommended section. https://github.com/rubygems/rubygems/commit/de6552ac30 commit 9f0c6f20c58067923864575b60af730d191b8f6c Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-12-03 01:16:53 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-12-03 03:06:44 +0900 [Bug #18382] Fix crash in compaction for ObjectSpace.trace_object_allocations ObjectSpace.trace_object_allocations can crash when auto-compaction is enabled. Notes: Merged: https://github.com/ruby/ruby/pull/5202 commit fbc16157615570ca5abc66a3ecfc30a0de7e9d49 Author: Adam Hess <adamhess1991@gmail.com> AuthorDate: 2021-12-03 02:01:42 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-03 02:01:42 +0900 YJIT: Fix side-exit typo in comments [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5203 Merged-By: XrXr commit 6b64e788234c19560070192927ae7b35b19b4587 Author: Kaíque Kandy Koga <kaiquekandykoga@gmail.com> AuthorDate: 2021-10-26 06:32:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 00:56:43 +0900 [ruby/irb] Examine indentation of in keyword when trying to type include Use in_keyword_case_scope? Return fast https://github.com/ruby/irb/commit/8acc7f8dc7 commit d486286f1d8fa01356498792b368c46fe9619d09 Author: ima1zumi <mariimaizumi5@gmail.com> AuthorDate: 2021-11-29 21:59:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 00:51:41 +0900 [ruby/irb] Add Alt+d keycode when convert-meta isn't used I pushed reline#389 for when convert-meta is not turned on in .inputrc. Alt+D in irb also needs to be set to the keycode for not using convert-meta. https://github.com/ruby/irb/commit/328eddf851 commit dcbe29d2aefa5304af443e13a156c80850f47ea5 Author: manga_osyo <manga.osyo@gmail.com> AuthorDate: 2021-11-23 23:07:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 00:42:28 +0900 [ruby/irb] Fix bug infinite loop when pasting multilines fo code in Ruby 2.6 Fix bug infinite loop when pasting multilines fo code in Ruby 2.6. This is not reproduced in Ruby 2.7. Changes added in https://github.com/ruby/irb/pull/242/files#diff-612b926e42ed78aed1a889ac1944f7d22229b3a489cc08f837a7f75eca3d3399R155 are also reflected in Ruby 2.6. https://github.com/ruby/irb/commit/0a77f75bf0 commit 4d4716d939ad8cb288a503e97c73ed8cfbc12348 Author: ima1zumi <mariimaizumi5@gmail.com> AuthorDate: 2021-11-17 23:10:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 00:39:30 +0900 [ruby/reline] No need to check `x > 0` Checked in the previous line. https://github.com/ruby/reline/commit/bf774c0f2c commit 0b22e3e1dfb4f03cae4c5fc79d5f9e86cf7f835d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-03 00:14:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-03 00:14:38 +0900 * 2021-12-03 [ci skip] commit f7bdfb39ef6dd5ac72492364bcd23743e0ce36a6 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-12-02 06:29:22 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-12-03 00:14:14 +0900 Don't clear the constant cache when finishing compaction References are being updated correctly, so this is no longer necessary Notes: Merged: https://github.com/ruby/ruby/pull/5198 commit ca33b590996481eb8c8081cdbe9c58cbdcaa3c9d Author: ima1zumi <mariimaizumi5@gmail.com> AuthorDate: 2021-11-24 19:24:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-02 23:41:44 +0900 [ruby/reline] fix `TerminfoError` -> `Reline::Terminfo::TerminfoError` https://github.com/ruby/reline/commit/c07b0ace6a commit 697d7b8d629ae20c42611ac697bb7e763a7e7213 Author: ima1zumi <mariimaizumi5@gmail.com> AuthorDate: 2021-11-09 23:22:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-02 23:41:43 +0900 [ruby/reline] Rescue if tigetstr(capname) cannot be obtained fix https://github.com/ruby/reline/issues/384 If `$TERM` is `vt102`, there are no `kend`, `khome`, `civis`, or `cnorm` in capabilities. `TerminfoError` is raised in `Reline::Terminfo.tigetstr(capname)`, so it is rescued if it does not exist. https://github.com/ruby/reline/commit/c9f5112702 commit 3f1dcd7fffbe94538c233d4f916523b00dbc2889 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-02 22:21:20 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-12-02 22:21:20 +0900 Cache downloaded files Cache downloaded external libraries/gems, which are expected not changed so frequently. Also sometimes downloading from zlib returns the current time as the date header in unexpected format, and checksums mismatch at that time. Notes: Merged: https://github.com/ruby/ruby/pull/5201 Merged-By: nobu <nobu@ruby-lang.org> commit 60fc8dda647cbfe272c7b1bdbbb8e54c1fa7816e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-02 21:13:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-02 21:13:02 +0900 update-bundled_gems.rb: Fix typo and version comparison commit 524a808d23f1ed3eca946236e98e049b55458e71 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-02 18:29:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-02 18:29:45 +0900 Define Ripper::Lexer::Elem#to_s Alias `#inspect` as `#to_s` also in the new `Ripper::Lexer::Elem` class, so that `puts Ripper::Lexer.new(code).scan` shows the attributes. commit 39f2b4f1a4a0075c08ce9575a51ccea48c85f024 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-01 02:12:54 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-02 18:10:32 +0900 [rubygems/rubygems] This warrants a comment https://github.com/rubygems/rubygems/commit/8fa29e5e55 commit cf882713312576a827abff8ddf7eb620e1f3f6d8 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-01 02:07:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-02 18:10:31 +0900 [rubygems/rubygems] Fix gemspec source unlocking also for prereleases like 0.0.0.SNAPSHOT The default prerelease requirement in rubygems doesn't actually match things like "0.0.0.SNAPSHOT". https://github.com/rubygems/rubygems/commit/711498b342 commit 2a15b28a9ec59d41fc3f9a5e17cf3efe6d0817b6 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-12-01 02:03:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-02 18:10:31 +0900 [rubygems/rubygems] Fix materialization of locked 0 prereleases Since the default requirement in rubygems is ">= 0", it was failing to match 0 prereleases. Changing the default globally to be ">= 0.a" instead is a major refactoring that's quite tricky to make backwards compatible, so I'm special casing this where needed for now to fix the regression. https://github.com/rubygems/rubygems/commit/68fe37937c commit fe506d7945788f4c3243e9ec25c20c5dbd315073 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-02 16:07:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-02 16:07:17 +0900 [MSWin] Stop passing non-numeric string to `exit` command commit 8944009be7418614ce7d4077807ac2b60d4d5d85 Author: schneems <richard.schneeman+foo@gmail.com> AuthorDate: 2021-11-11 23:59:29 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-02 15:55:42 +0900 Deprecate `Lexer::Elem#[]` and `Lexer::State#[]` Discussed in https://github.com/ruby/ruby/pull/5093#issuecomment-964426481. > it would be enough to mimic only [] for almost all cases This adds back the `Lexer::Elem#[]` and `Lexer::State#[]` and adds deprecation warnings for them. commit 2b22c93533a3d94e5fc907682d862f89b62e5bf7 Author: schneems <richard.schneeman+foo@gmail.com> AuthorDate: 2021-11-08 10:33:04 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-02 15:55:42 +0900 Compatibility with IRB Instead of accessing the struct as an array, access it via methods. There are other places inside of this file already using this API (for example https://github.com/ruby/ruby/blob/e0a5c3d2b71dfad038d7562fdd33f02ffd79232d/lib/irb/ruby-lex.rb#L829-L830). This commit moves all struct array-ish calls to use their method calls instead. It is also ~1.23 faster accessing values via a method instead of as an array according to this microbenchmark: ```ruby Elem = Struct.new(:pos, :event, :tok, :state, :message) do def initialize(pos, event, tok, state, message = nil) super(pos, event, tok, State.new(state), message) end # ... def to_a a = super a.pop unless a.empty? a end end class ElemClass attr_accessor :pos, :event, :tok, :state, :message def initialize(pos, event, tok, state, message = nil) @pos = pos @event = event @tok = tok @state = State.new(state) @message = message end def to_a if @message [@pos, @event, @tok, @state, @message] else [@pos, @event, @tok, @state] end end end # stub state class creation for now class State; def initialize(val); end; end ``` ```ruby Benchmark.ips do |x| x.report("struct") { struct[1] } x.report("class ") { from_class.event } x.compare! end; nil ``` ``` Warming up -------------------------------------- struct 1.624M i/100ms class 1.958M i/100ms Calculating ------------------------------------- struct 17.139M (± 2.6%) i/s - 86.077M in 5.025801s class 21.104M (± 3.4%) i/s - 105.709M in 5.015193s Comparison: class : 21103826.3 i/s struct: 17139201.5 i/s - 1.23x (± 0.00) slower ``` Notes: Merged: https://github.com/ruby/ruby/pull/5093 commit 3685b5af95fc31b99b34a5a4f75bdc7c0ba622f4 Author: schneems <richard.schneeman+foo@gmail.com> AuthorDate: 2021-11-08 11:30:50 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-02 15:55:42 +0900 Only iterate Lexer heredoc arrays The last element in the `@buf` may be either an array or an `Elem`. In the case it is an `Elem` we iterate over every element, when we do not need to. This check guards that case by ensuring that we only iterate over an array of elements. Notes: Merged: https://github.com/ruby/ruby/pull/5093 commit 3f74eaa7a83e42b31c219a534ec5330e511d2921 Author: schneems <richard.schneeman+foo@gmail.com> AuthorDate: 2021-11-08 04:57:24 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-02 15:55:42 +0900 ~1.10x faster Change Ripper.lex structs to classes ## Concept I am proposing we replace the Struct implementation of data structures inside of ripper with real classes. This will improve performance and the implementation is not meaningfully more complicated. ## Example Struct versus class comparison: ```ruby Elem = Struct.new(:pos, :event, :tok, :state, :message) do def initialize(pos, event, tok, state, message = nil) super(pos, event, tok, State.new(state), message) end # ... def to_a a = super a.pop unless a.empty? a end end class ElemClass attr_accessor :pos, :event, :tok, :state, :message def initialize(pos, event, tok, state, message = nil) @pos = pos @event = event @tok = tok @state = State.new(state) @message = message end def to_a if @message [@pos, @event, @tok, @state, @message] else [@pos, @event, @tok, @state] end end end # stub state class creation for now class State; def initialize(val); end; end ``` ## MicroBenchmark creation ```ruby require 'benchmark/ips' require 'ripper' pos = [1, 2] event = :on_nl tok = "\n".freeze state = Ripper::EXPR_BEG Benchmark.ips do |x| x.report("struct") { Elem.new(pos, event, tok, state) } x.report("class ") { ElemClass.new(pos, event, tok, state) } x.compare! end; nil ``` Gives ~1.2x faster creation: ``` Warming up -------------------------------------- struct 263.983k i/100ms class 303.367k i/100ms Calculating ------------------------------------- struct 2.638M (± 5.9%) i/s - 13.199M in 5.023460s class 3.171M (± 4.6%) i/s - 16.078M in 5.082369s Comparison: class : 3170690.2 i/s struct: 2638493.5 i/s - 1.20x (± 0.00) slower ``` ## MicroBenchmark `to_a` (Called by Ripper.lex for every element) ```ruby require 'benchmark/ips' require 'ripper' pos = [1, 2] event = :on_nl tok = "\n".freeze state = Ripper::EXPR_BEG struct = Elem.new(pos, event, tok, state) from_class = ElemClass.new(pos, event, tok, state) Benchmark.ips do |x| x.report("struct") { struct.to_a } x.report("class ") { from_class.to_a } x.compare! end; nil ``` Gives 1.46x faster `to_a`: ``` Warming up -------------------------------------- struct 612.094k i/100ms class 893.233k i/100ms Calculating ------------------------------------- struct 6.121M (± 5.4%) i/s - 30.605M in 5.015851s class 8.931M (± 7.9%) i/s - 44.662M in 5.039733s Comparison: class : 8930619.0 i/s struct: 6121358.9 i/s - 1.46x (± 0.00) slower ``` ## MicroBenchmark data access ```ruby require 'benchmark/ips' require 'ripper' pos = [1, 2] event = :on_nl tok = "\n".freeze state = Ripper::EXPR_BEG struct = Elem.new(pos, event, tok, state) from_class = ElemClass.new(pos, event, tok, state) Benchmark.ips do |x| x.report("struct") { struct.pos[1] } x.report("class ") { from_class.pos[1] } x.compare! end; nil ``` Gives ~1.17x faster data access: ``` Warming up -------------------------------------- struct 1.694M i/100ms class 1.868M i/100ms Calculating ------------------------------------- struct 16.149M (± 6.8%) i/s - 81.318M in 5.060633s class 18.886M (± 2.9%) i/s - 95.262M in 5.048359s Comparison: class : 18885669.6 i/s struct: 16149255.8 i/s - 1.17x (± 0.00) slower ``` ## Full benchmark integration of this inside of Ripper.lex Inside of this repo with this commit ``` $ cd ext/ripper $ make $ cat test.rb file = File.join(__dir__, "../../array.rb") source = File.read(file) bench = Benchmark.measure do 10_000.times.each do Ripper.lex(source) end end puts bench ``` Then execute with and without this change 50 times: ``` rm new.txt rm old.txt for i in {0..50} do `ruby -Ilib -rripper -rbenchmark ./test.rb >> new.txt` `ruby -rripper -rbenchmark ./test.rb >> old.txt` done ``` I used derailed benchmarks internals to compare the results: ``` dir = Pathname(".") branch_info = {} branch_info["old"] = { desc: "Struct lex", time: Time.now, file: dir.join("old.txt"), name: "old" } branch_info["new"] = { desc: "Class lex", time: Time.now, file: dir.join("new.txt"), name: "new" } stats = DerailedBenchmarks::StatsFromDir.new(branch_info) stats.call.banner ``` Which gave us: ``` ❤️ ❤️ ❤️ (Statistically Significant) ❤️ ❤️ ❤️ [new] (3.3139 seconds) "Class lex" ref: "new" FASTER 🚀🚀🚀 by: 1.1046x [older/newer] 9.4700% [(older - newer) / older * 100] [old] (3.6606 seconds) "Struct lex" ref: "old" Iterations per sample: Samples: 51 Test type: Kolmogorov Smirnov Confidence level: 99.0 % Is significant? (max > critical): true D critical: 0.30049534876137013 D max: 0.9607843137254902 Histograms (time ranges are in seconds): [new] description: [old] description: "Class lex" "Struct lex" ┌ ┐ ┌ ┐ [3.0, 3.3) ┤▇ 1 [3.0, 3.3) ┤ 0 [3.3, 3.6) ┤▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 47 [3.3, 3.6) ┤ 0 [3.5, 3.8) ┤▇▇ 2 [3.5, 3.8) ┤▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 46 [3.8, 4.1) ┤▇ 1 [3.8, 4.1) ┤▇▇▇ 4 [4.0, 4.3) ┤ 0 [4.0, 4.3) ┤ 0 [4.3, 4.6) ┤ 0 [4.3, 4.6) ┤▇ 1 └ ┘ └ ┘ # of runs in range # of runs in range ``` To sum this up, the "new" version of this code (using real classes instead of structs) is 10% faster across 50 runs with a statistical significance confidence level of 99%. Histograms are for visual checksum. Notes: Merged: https://github.com/ruby/ruby/pull/5093 commit 6721ce1cc4035fe5508c13d0151f748e8b8e8cf1 Author: Yuta Saito <kateinoigakukun@gmail.com> AuthorDate: 2021-12-02 13:20:13 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-12-02 15:53:43 +0900 Cast tv_usec to int32_t to fit in tv_nsec suseconds_t, which is the type of tv_usec, may be defined with a longer size type than tv_nsec's type (long). So usec to nsec conversion needs an explicit casting. Notes: Merged: https://github.com/ruby/ruby/pull/5200 commit a7d0c2c4489f94a0087646040afccb66cec4e7d7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-02 12:20:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-02 12:28:49 +0900 Needs to update revision.h unless existing [ci skip] commit fe1725236c8a4d6cb780874c470f7f443185ed38 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-12-02 06:00:11 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-12-02 09:21:50 +0900 Don't call + and < in Integer.times for !FIXNUM The methods aren't called for FIXNUM, and it's best to have consistent behavior. Fixes [Bug #18377] Notes: Merged: https://github.com/ruby/ruby/pull/5199 commit e387458da9b16ddfb57ab9e80d307727aefc2f56 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-01 19:13:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-02 08:50:03 +0900 Ignore to generate the documentation from vendored libraries commit 9121e57a5f50bc91bae48b3b91edb283bf96cb6b Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-07-14 08:01:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-02 07:42:33 +0900 Rework tracing for blocks running as methods The main impetus for this change is to fix [Bug #13392]. Previously, we fired the "return" TracePoint event after popping the stack frame for the block running as method (BMETHOD). This gave undesirable source location outputs as the return event normally fires right before the frame going away. The iseq for each block can run both as a block and as a method. To accommodate that, this commit makes vm_trace() fire call/return events for instructions that have b_call/b_return events attached when the iseq is running as a BMETHOD. The logic for rewriting to "trace_*" instruction is tweaked so that when the user listens to call/return events, instructions with b_call/b_return become trace variants. To continue to provide the return value for non-local returns done using the "return" or "break" keyword inside BMETHODs, the stack unwinding code is tweaked. b_return events now provide the same return value as return events for these non-local cases. A pre-existing test deemed not providing a return value for these b_return events as a limitation. This commit removes the checks for call/return TracePoint events that happen when calling into BMETHODs when no TracePoints are active. Technically, migrating just the return event is enough to fix the bug, but migrating both call and return removes our reliance on `VM_FRAME_FLAG_FINISH` and re-entering the interpreter when the caller is already in the interpreter. Notes: Merged: https://github.com/ruby/ruby/pull/4637 commit 3b2b28d035c9635b9473c7a03ede04fa6ac57a34 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-12-02 05:46:30 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-12-02 05:46:30 +0900 Revert "Force disable yjit on OpenBSD" This reverts commit 119626da947bf6492ef7a27abf3bf12de5d0d95a. commit 4079f0da51c1e226ce6e09597e32ab116d1c7812 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-11-23 05:32:47 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-12-02 05:45:59 +0900 Check that cb / ocb exist before marking executable If YJIT isn't enabled, or hasn't finished booting, cb / ocb could be null. This commit just checks to make sure they're available before marking as executable Co-Authored-By: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> Co-Authored-By: Kevin Newton <kddnewton@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/5032 commit 157095b3a44d8b0130a532a0b7be3f5ac197111c Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-10-27 08:57:30 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-12-02 05:45:59 +0900 Mark JIT code as writeable / executable depending on the situation Some platforms don't want memory to be marked as writeable and executable at the same time. When we write to the code block, we calculate the OS page that the buffer position maps to. Then we call `mprotect` to allow writes on that particular page. As an optimization, we cache the "last written" aligned page which allows us to amortize the cost of the `mprotect` call. In other words, sequential writes to the same page will only call `mprotect` on the page once. When we're done writing, we call `mprotect` on the entire JIT buffer. This means we don't need to keep track of which pages were marked as writeable, we let the OS take care of that. Co-authored-by: John Hawthorn <john@hawthorn.email> Notes: Merged: https://github.com/ruby/ruby/pull/5032 commit 94ee88b38cf0a20666e3965f5c9c4d520cf02b22 Author: Vít Ondruch <vondruch@redhat.com> AuthorDate: 2021-10-27 23:28:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-02 04:43:06 +0900 [rubygems/rubygems] Provide distinguished name which will be correctly parsed. It seems that since ruby openssl 2.1.0 [[1]], the distinguished name submitted to `OpenSSL::X509::Name.parse` is not correctly parsed if it does not contain the first slash: ``` $ ruby -v ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux] $ gem list | grep openssl openssl (default: 2.2.0) $ irb -r openssl irb(main):001:0> OpenSSL::X509::Name.parse("CN=nobody/DC=example").to_s(OpenSSL::X509::Name::ONELINE) => "CN = nobody/DC=example" irb(main):002:0> OpenSSL::X509::Name.parse("/CN=nobody/DC=example").to_s(OpenSSL::X509::Name::ONELINE) => "CN = nobody, DC = example" ``` Instead, use `OpenSSL::X509::Name.new` directly as suggested by upstream maintainer. [1]: https://github.com/ruby/openssl/commit/19c67cd10c57f3ab7b13966c36431ebc3fdd653b https://github.com/rubygems/rubygems/commit/09ca0c2dae Co-authored-by: Kazuki Yamaguchi <k@rhe.jp> commit eb7ec00d03dc62f501b2822c52f584e52c3d61d6 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-02 02:25:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-02 02:25:52 +0900 * 2021-12-02 [ci skip] commit d0772632bf2ff15f73c0d3601d958670a5c77855 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-11-20 13:44:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-12-02 02:25:28 +0900 YJIT: Fail gracefully while OOM for new entry points Previously, YJIT crashes with rb_bug() when asked to compile new methods while out of executable memory. To handle this situation gracefully, this change keeps track of all the blocks compiled each invocation in case YJIT runs out of memory in the middle of a compilation sequence. The list is used to free all blocks in case compilation fails. yjit_gen_block() is renamed to gen_single_block() to make it distinct from gen_block_version(). Call to limit_block_version() and block_t allocation is moved into the function to help tidy error checking in the outer loop. limit_block_version() now returns by value. I feel that an out parameter with conditional mutation is unnecessarily hard to read in code that does not need to go for last drop performance. There is a good chance that the optimizer is able to output identical code anyways. Notes: Merged: https://github.com/ruby/ruby/pull/5191 commit a84dc9d80d41db01db4623517ade928ee7f40e36 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-01 16:30:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-01 18:54:26 +0900 [win32] skip example about STDIN encodings Notes: Merged: https://github.com/ruby/ruby/pull/5196 commit 37cd35aea8afa35476640e454eaf2c53150dc014 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-12-01 15:05:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-12-01 18:54:26 +0900 [win32] Transcode input from console [Bug #18353] On Windows, as the input from console is encoded in the active code page, convert the input to the internal encoding. Notes: Merged: https://github.com/ruby/ruby/pull/5196 commit 0b53a8895f143ecc3d97844f5eec685dbd709d85 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-01 11:00:10 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-01 11:00:10 +0900 Merge rubygems master fd676ac464491afaa0baf5435cb11b3f86229cbd commit 9f4bdeb4033c3851a7025bc67052cb5458325849 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-12-01 09:53:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-12-01 09:53:07 +0900 Removed vcr files. They are needless for this repo commit 3eac05c75de0ab98d9ed47ad2cf96909a200f8d9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-12-01 07:15:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-01 07:15:35 +0900 * 2021-12-01 [ci skip] commit b68217fff9caba33d1f3e14de3673b6abd624dc2 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-12-01 05:40:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-01 07:15:18 +0900 [rubygems/rubygems] Update bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt https://github.com/rubygems/rubygems/commit/8836fe157b Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net> commit 46a24f7e7744b483f1de88b0c26a8d22161a2242 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-11-25 01:23:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-01 07:15:18 +0900 [rubygems/rubygems] Update main.yml.tt https://github.com/rubygems/rubygems/commit/3260173c59 commit a7fd639423dba631900d1d4f395d805cf0d97d5e Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-11-25 01:15:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-01 07:15:17 +0900 [rubygems/rubygems] newgem tmpl: ruby as "2.7" in GH Actions matrix https://github.com/rubygems/rubygems/commit/f5bead5634 commit 42efb8c1859c89490cad9bf9312dc3e743f730ee Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-11-25 01:05:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-12-01 07:15:17 +0900 [rubygems/rubygems] newgem templ: Avoid Float 3.0 -> "3" in GH Action This change avoids a YAML Float-to-String conversion, which turns a 3.0 into a "3". That can make names of builds less clear. In order to use this new capability, I added a "name" descriptor to the matrix-created Job. https://github.com/rubygems/rubygems/commit/6221241ad4 commit 7fd88da935c7c6fcafe19cf30642676033ec82bd Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-02-26 02:43:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-30 20:54:05 +0900 [rubygems/rubygems] Fix race condition when reading & writing gemspecs concurrently When bundler parallel installer installs gems concurrently, one can get confusing warnings like the following: ``` "[/home/runner/work/rubygems/rubygems/bundler/tmp/2/gems/system/specifications/zeitwerk-2.4.2.gemspec] isn't a Gem::Specification (NilClass instead). ``` I've got these warnings several times in the past, but I never managed to reproduce them, and never look deeply into the root cause, but this time a got a cause that reproduced quite frequently, so I looked into it. The problem is one thread reading a gemspec while another thread is writing it. The write of the gemspec was not protected, so `Gem::Specification.load` could end up seeing a truncated gemspec and thus throw this warning. The fix involve two changes: * Change the methods that write gemspecs to use `Gem.binary_write` which is protected by a lock. * Fix `Gem.binary_write` to create the file lock at file creation time, not when the file already exists after. The realworld user problem caused by this issue happens in bundler, but I'm fixing it in rubygems first, and then I'll backport to bundler whatever needs backporting to fix the issue on the bundler side. https://github.com/rubygems/rubygems/commit/a672e7555c commit d7f6cb0f780a5a48b5d4a937f93d876a90697fc0 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-02-26 01:06:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-30 20:54:05 +0900 [rubygems/rubygems] Revert "Remove spec file before building" This reverts commit af604436d8141c34cb2e1e645b9b0d47bfd55a55. The issue that led to introducing it was never reproduced. I tried to repro with this patch and it still works just fine. Since this removal is getting in the middle for some race conditions I'm facing, I'm reverting the patch. https://github.com/rubygems/rubygems/commit/2dd267f0e4 commit 2b1f0487142419b2f45c815b3c4c4ba0bda5d13f Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-02-26 01:02:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-30 20:54:04 +0900 [rubygems/rubygems] Run hooks tests on gemspecs not already installed The current `setup_base_installer` ends up using the `quick_gem` helper, which leaves the created specification installed. Instead, make sure to use the `util_spec` helper, which does a similar thing but doesn't leave the specification installed. The idea is that tests do not rely on the installer removing existing gemspecs, bacause I plan to stop doing that. https://github.com/rubygems/rubygems/commit/843f1a0abc commit e59f3054c308fc657224d2dde8d100816b82de84 Author: Naohisa Goto <ngotogenome@gmail.com> AuthorDate: 2021-11-30 14:23:07 +0900 Commit: Naohisa Goto <ngotogenome@gmail.com> CommitDate: 2021-11-30 16:39:31 +0900 Delete #if line during checking madvise() on Solaris The madvise() declaration should always be compiled on Solaris to check whether the declaration is good on the environment. For the purpose, the #if line is unnecessary. (There was also a trivial typo that the #if was not closed by #endif and the check always failed with preprocessor error.) commit 438220f063c939761e3d85f7e307c321474c84e8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-30 13:40:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-30 14:16:33 +0900 Let pretty_inspect work once at first For older pp.rb which did not need io/console, and dealing with `LoadError`. commit dc46529b64edcd6b7f7eb61133d92ca591882cdf Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-30 13:47:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-30 13:49:04 +0900 [ruby/error_highlight] Ignore all syscall errors At least, Error::ENOTSUP may be raised on some extreme environments https://github.com/ruby/error_highlight/commit/2787983ff7 commit 3288f0d09e35a98d3569c79fad654e38eaeb7a9c Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-30 13:46:08 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-30 13:46:08 +0900 lib/pp.rb (width_for): Ignore all syscall errors According to nobu, Errno::EBAD is raised on Windows. commit 20065eabdb2235a605b61e03d72c19b2a20b52a5 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-30 13:17:54 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-30 13:17:54 +0900 lib/pp.rb (width_for): ignore Errno::EINVAL The error is raised on Solaris http://rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20211130T030003Z.fail.html.gz ``` 1) Failure: TestRubyOptions#test_require [/export/home/users/chkbuild/cb-gcc/tmp/build/20211130T030003Z/ruby/test/ruby/test_rubyoptions.rb:265]: pid 7386 exit 1 | /export/home/users/chkbuild/cb-gcc/tmp/build/20211130T030003Z/ruby/lib/pp.rb:67:in `winsize': Invalid argument - <STDOUT> (Errno::EINVAL) ``` commit d400c44a554910df542a11f58ff0e2b767b909f7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-30 13:07:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-30 13:15:22 +0900 Load io/console earlier Something goes wrong at loading libraries inside `mu_pp` in the test overriding `Class.inherited`. commit d20a120b03a6bb39f06958abf0e04222960a58ab Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-30 12:40:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-30 12:40:12 +0900 Recent systems prohibit symlink for relative loading commit 316caf6b39a26ed764a1bd1da58291fc5e7ebd52 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-30 12:36:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-30 12:40:02 +0900 Enable load-relative on Solaris commit eac347fdb04023e1a365d84a8c163263cc7a5904 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-30 11:42:06 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-30 11:43:54 +0900 lib/pp.rb (PP.pp): Use io/console's winsize by default [Feature #12913] commit f379748e80dacc208dbe23a2db508aead8b79978 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-30 11:12:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-30 11:12:21 +0900 Cache wheather madvise declaration is needed on Solaris commit 12fbdf4d4e52bafaeef6f923b8f357a39a37c02b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-30 09:01:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-30 09:10:58 +0900 Fix conflicting declaration on Solaris SunC ``` "cont.c", line 24: identifier redeclared: madvise current : function(pointer to char, unsigned int, int) returning int previous: function(pointer to void, unsigned int, int) returning int : "/usr/include/sys/mman.h", line 232 ``` GCC ``` cont.c:24:12: error: conflicting types for 'madvise' 24 | extern int madvise(caddr_t, size_t, int); | ^~~~~~~ In file included from cont.c:16: /usr/include/sys/mman.h:232:12: note: previous declaration of 'madvise' was here 232 | extern int madvise(void *, size_t, int); | ^~~~~~~ ``` commit ac8647bec12d5d3c0bc4b6a79d09a6a85d6628f1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-30 08:49:41 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-30 08:49:41 +0900 Fix `GC.total_time` example The result may increase actually or not, since GC can finish shorter than the timer granularity. Notes: Merged: https://github.com/ruby/ruby/pull/5193 Merged-By: nobu <nobu@ruby-lang.org> commit af59d35570d398bd590bebd11602bcb039454c0d Author: ooooooo-q <ooooooo-q@users.noreply.github.com> AuthorDate: 2021-11-27 15:17:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-30 01:29:34 +0900 [rubygems/rubygems] Fix escape of filenames in `bundle doctor` https://github.com/rubygems/rubygems/commit/3ede1435ea commit a60aba18f04f6427e9b330f95f162c55f04a4971 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-30 00:27:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-30 00:27:59 +0900 * 2021-11-30 [ci skip] commit f8f2885bd0b42b99703910eae78c03fef6458833 Author: Naohisa Goto <ngotogenome@gmail.com> AuthorDate: 2021-11-30 00:07:30 +0900 Commit: Naohisa Goto <ngotogenome@gmail.com> CommitDate: 2021-11-30 00:07:30 +0900 Revert "test/socket/test_socket.rb: skip on Solaris" This reverts commit 27fb9d272daaae89089dfb61849ebe8e7aa6c833. The test failure on Solaris 10 is due to incomplete IPv6 configuration on the CI server, that have already been fixed. Reference for the fix: https://centrify.force.com/support/Article/KB-1179-X11-Forwarding-fails-with-Centrify-OpenSSH-5-0-Solaris/ commit 8287d2f23c06c614d1ae83b6e0dad48bcda622cb Author: Naohisa Goto <ngotogenome@gmail.com> AuthorDate: 2021-11-29 23:46:48 +0900 Commit: Naohisa Goto <ngotogenome@gmail.com> CommitDate: 2021-11-30 00:03:04 +0900 Workaround for implicit declaration of function 'madvise' on Solaris On Solaris, madvise(3C) is NOT defined for SUS (XPG4v2) or later, but MADV_* macros are defined when __EXTENSIONS__ is defined. This may cause compile error on Solaris 10 with GCC when "-Werror=implicit-function-declaration" and "-D_XOPEN_SOURCE=600" are added by configure. commit 67a1e2258974df4b597d019739595c18fbb9a7c1 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-11-29 23:50:28 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-11-29 23:50:28 +0900 Update to ruby/spec@7f22a0b commit e6d93a27afa058319e6dad093bbef637e49fce47 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-11-29 23:50:26 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-11-29 23:50:26 +0900 Update to ruby/mspec@098b320 commit f8ead3a72f4cde3dbec48d33f8921a97b090f799 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-29 23:33:54 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-29 23:40:30 +0900 [ci skip] Update documentation for GC.stat Notes: Merged: https://github.com/ruby/ruby/pull/5189 commit 659c864a43d4bf2d287b08b451f8c67cd818739a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-29 19:00:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-29 23:38:01 +0900 [rubygems/rubygems] Deprecate typo name https://github.com/rubygems/rubygems/commit/62d54cbf08 commit 95a6212a431929d91435056fa8df13ae697f8071 Author: Lars Kanis <kanis@comcard.de> AuthorDate: 2021-11-25 04:58:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-29 23:07:16 +0900 Simplify platform check for Windows-UCRT RUBY_PLATFORM can be used since commit 576b2e64cdc5ea42ad345dd3c1c215e006c06fca . Notes: Merged: https://github.com/ruby/ruby/pull/5168 commit 4acc7563a111fd35524b07150990dc3ef842a685 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-28 21:49:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-29 23:00:20 +0900 Consider environment variable case-insensitiveness Notes: Merged: https://github.com/ruby/ruby/pull/5188 commit 1db066186b7a929c18f031d0c8416140f3c0fcda Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-29 18:57:54 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-29 18:57:54 +0900 * 2021-11-29 [ci skip] commit e19b65640963fa641eea9129a20a55cf4a20f5a7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-29 18:38:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-29 18:50:27 +0900 [ruby/readline] Suppress constant redefinition warning When already set by `use_lib_reline` in test/readline/helper.rb of readline-ext. https://github.com/ruby/readline/commit/0e3ca3b217 commit 4a09b7de06e5be65409b066b3dccd04cd7529d89 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-28 17:45:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-28 17:45:55 +0900 Suppress address-of-packed-member warning by gcc commit ca7de49aa50fee34628e5e239f04ec76ec85f1f4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-28 15:16:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-28 17:10:48 +0900 [ruby/ostruct] [DOC] Fix code markups [ci skip] Backquotes are not special characters in RDoc. https://github.com/ruby/ostruct/commit/a901df26b9 commit 0e5e2e35f8e2351fd361d7fe76f6e346ec116328 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-28 04:07:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-28 04:07:53 +0900 * 2021-11-28 [ci skip] commit eac7c635387622f3b3fd58f98a7943b70ea14e32 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-28 04:07:37 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-28 04:07:37 +0900 Enhanced RDoc for numeric.c (#5184) Adds remarks about literals and Kernel methods to Float and Integer. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit f53f6d928475564433302a18f9498048bbd69b26 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-27 16:04:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-27 18:40:03 +0900 [ruby/cgi] Exclude unused files from built package https://github.com/ruby/cgi/commit/e840b6c368 commit 45034e9de3b6af8f52b8db72ae1d91ef73499c8b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-27 14:28:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-27 14:44:46 +0900 [ruby/cgi] Set extconf.rb to extensions Fix https://github.com/ruby/cgi/pull/11 https://github.com/ruby/cgi/commit/60d8f5e7d9 commit b5b6ab4194f16e96ee5004288cc469ac1bca41a3 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-11-27 08:00:42 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-27 08:00:42 +0900 YJIT: Add ability to exit to interpreter from stubs Previously, YJIT assumed that it's always possible to generate a new basic block when servicing a stub in branch_stub_hit(). When YJIT is out of executable memory, for example, this assumption doesn't hold up. Add handling to branch_stub_hit() for servicing stubs without consuming more executable memory by adding a code path that exits to the interpreter at the location the branch stub represents. The new code path reconstructs interpreter state in branch_stub_hit() and then exits with a new snippet called `code_for_exit_from_stub` that returns `Qundef` from the YJIT native stack frame. As this change adds another place where we regenerate code from `branch_t`, extract the logic for it into a new function and call it regenerate_branch(). While we are at it, make the branch shrinking code path in branch_stub_hit() more explicit. This new functionality is hard to test without full support for out of memory conditions. To verify this change, I ran `RUBY_YJIT_ENABLE=1 make check -j12` with the following patch to stress test the new code path: ```diff diff --git a/yjit_core.c b/yjit_core.c index 4ab63d9806..5788b8c5ed 100644 --- a/yjit_core.c +++ b/yjit_core.c @@ -878,8 +878,12 @@ branch_stub_hit(branch_t *branch, const uint32_t target_idx, rb_execution_contex cb_set_write_ptr(cb, branch->end_addr); } +if (rand() < RAND_MAX/2) { // Compile the new block version p_block = gen_block_version(target, target_ctx, ec); +}else{ + p_block = NULL; +} if (!p_block && branch_modified) { // We couldn't generate a new block for the branch, but we modified the branch. ``` We can enable the new test along with other OOM tests once full support lands. Other small changes: * yjit_utils.c (print_str): Update to work with new native frame shape. Follow up for 8fa0ee4d404. * yjit_iface.c (rb_yjit_init): Run yjit_init_core() after yjit_init_codegen() so `cb` and `ocb` are available. Notes: Merged: https://github.com/ruby/ruby/pull/5180 Merged-By: XrXr commit 59439446d9432cabf106c700943b29773b4a264f Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-25 06:01:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-27 05:31:54 +0900 [rubygems/rubygems] Fix missing locked specs when depended on other platform https://github.com/rubygems/rubygems/commit/0396e899db commit 9537e65562fad11061e4c59235328ce27e59f5d1 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-27 03:27:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-27 03:27:50 +0900 * 2021-11-27 [ci skip] commit 7cfacbcad2d6bd510cf69a7b31b7ede4e293fef2 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-27 00:33:31 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-27 03:27:32 +0900 Improve performance of embedded string allocation Non-VWA embedded string allocation had a performance regression. This commit improves performance of non-VWA embedded string allocation. Notes: Merged: https://github.com/ruby/ruby/pull/5183 commit dff8d12226088f07435d81b570cc9731b10c0da9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-26 20:55:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-26 22:32:26 +0900 mkmf: take `PKG_CONFIG_PATH` from `dir_config` library path So that version dependent pkg-config files can override files in the default locations. Notes: Merged: https://github.com/ruby/ruby/pull/5182 commit 21a29844a34589506e88a2473c62f84e417a61bc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-26 20:53:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-26 22:32:26 +0900 mkmf: deal with environment variables in MakeMakefile#xpopen Notes: Merged: https://github.com/ruby/ruby/pull/5182 commit 1c3d6d6cc905dc9f0a84eb2a3bf885cccbcd6225 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-26 20:52:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-26 22:32:26 +0900 mkmf: MakeMakefile#xpopen may be passed an option hash Notes: Merged: https://github.com/ruby/ruby/pull/5182 commit 1c4cf4348030e03ac995d50170c0ad6fec0af46c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-26 20:48:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-26 20:49:33 +0900 [MSWin] Replace -Zi in DEBUGFLAGS with -Z7 to suppress warnings commit 29877d944e46566e92062b28b8c79bb23061063b Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-11-26 10:17:28 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-11-26 20:12:49 +0900 Fix a function name in an error message Notes: Merged: https://github.com/ruby/ruby/pull/5181 commit 04951a12265ffdd4d455772494db190885536cad Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-11-26 10:16:42 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-11-26 20:12:49 +0900 Remove unused function `size_pool_for_size` ``` compiling ../gc.c ../gc.c:2444:1: warning: unused function 'size_pool_for_size' [-Wunused-function] size_pool_for_size(rb_objspace_t *objspace, size_t size) ^ 1 warning generated. ``` Notes: Merged: https://github.com/ruby/ruby/pull/5181 commit 0a1b3b3a6790847d72fa146d6ccff620244ad342 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-25 21:35:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-26 17:57:19 +0900 Try test_interrupt_in_other_thread Seems working now probably because of system library updates. commit 7f7c3a0a75c48b45ce186c9e2b229ab3edf1473d Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-26 11:37:28 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-26 11:39:59 +0900 initialize allocated memory by VWA for assertions When `RGENGC_CHECK_MODE` is enable, `obj_memsize_of` is called in `newobj_init` and it expect the memory is zero-cleared. commit 6586783508c9743cc2e6707efd6de08d6d2fbadb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-26 11:32:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-26 11:32:38 +0900 Move win32ole.gemspec to the proper place commit e984c2a9ea29fa17c5f55d324d181f8eaa677d69 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-25 15:57:36 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-26 10:56:03 +0900 fix to choose correct callcache It should retun general `cc`, not for overloaded (mandatory only) method call cache. This issue is reported by @shugo and @ktou https://twitter.com/shugomaeda/status/1463699797182119936 Notes: Merged: https://github.com/ruby/ruby/pull/5173 commit f3320f164fd4147256227271b89e02522a536093 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-26 05:29:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-26 08:50:52 +0900 [rubygems/rubygems] Fix `bundle info` sometimes claiming that bundler has been deleted https://github.com/rubygems/rubygems/commit/fe1a31db31 commit b6f543d4aea38333521b8b2333c8ec675a3ebe8f Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-11-26 08:10:42 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-26 08:10:42 +0900 YJIT: Introduce jit_putobject (#5179) * YJIT: Introduce jit_putobject This extracts the logic previously inside gen_putobject to a more reusable helper method jit_putobject. The motivation for this is that it both simplifies the implementation of other instructions, and other instructions can reuse the optimized behaviour for 32-bit special constants (most importantly opt_getinlinecache). This commit also expands the optimization to use a mov directly to memory when we encounter a 32-bit immediate constant. Previously it covered fixnums and Qtrue/Qfalse, now it will cover any SPECIAL_CONST_P value which can be represented as a 32-bit immediate. Notably, this includes static symbols, and Qnil. * Style touchups and a comment * delete empty line Co-authored-by: Alan Wu <XrXr@users.noreply.github.com> Notes: Merged-By: jhawthorn <john@hawthorn.email> commit de9a1e4a9654ea305f11ce8602ee32f394e44338 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-11-26 04:56:58 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-26 04:56:58 +0900 YJIT: Implement new struct accessors (#5161) * YJIT: Implement optimized_method_struct_aref * YJIT: Implement struct_aref without method call Struct member reads can be compiled directly into a memory read (with either one or two levels of indirection). * YJIT: Implement optimized struct aset * YJIT: Update tests for struct access * YJIT: Add counters for remaining optimized methods * Check for INT32_MAX overflow It only takes a struct with 0x7fffffff/8+1 members. Also add some cheap compile time checks. * Add tests for non-embedded struct aref/aset Co-authored-by: Alan Wu <XrXr@users.noreply.github.com> Notes: Merged-By: jhawthorn <john@hawthorn.email> commit e469ebd7d35bbb190395378c37f1f1051d243948 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-26 04:14:10 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-26 04:14:10 +0900 Correct indentation error in numeric.c (#5178) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit b0bbcaedc7c855be1df8c3bbbfd7b80424905047 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-26 01:00:38 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-26 01:01:50 +0900 Revert "Add GC.stat_size_pool to get stats for a size pool" This reverts commit 6157619bb68e4307cdf065cb73d5bfcec30d042d. We'll wait for comments in the open ticket: https://bugs.ruby-lang.org/issues/18364 Notes: Merged: https://github.com/ruby/ruby/pull/5176 commit 6157619bb68e4307cdf065cb73d5bfcec30d042d Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-25 23:31:58 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-26 00:33:17 +0900 Add GC.stat_size_pool to get stats for a size pool GC.stat_size_pool will return stats for a particular size pool. This is used for the Variable Width Allocation feature. Notes: Merged: https://github.com/ruby/ruby/pull/5169 commit 09ef048b34dd4aed65ec2899315a91d25ffa7629 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-26 00:16:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-26 00:16:32 +0900 * 2021-11-26 [ci skip] commit c8da3b95e7153157f5c9fa57ae6d20d4edf3e0cd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-25 22:16:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-25 23:53:15 +0900 Add win32ole to sync_default_gems.rb commit 270c48507dbb1553cd09b92e5b7c542f95ffc68e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-21 18:11:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-25 23:53:15 +0900 [ruby/win32ole] Scale timeout in win32ole https://github.com/ruby/win32ole/commit/7e04d0eb3e Notes: Merged: https://github.com/ruby/ruby/pull/5175 commit ae9593978468b9d65892626bc72edad780c5bf88 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-03 18:43:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-25 23:53:15 +0900 [ruby/win32ole] Fix typos [ci skip] https://github.com/ruby/win32ole/commit/8d46bd0c93 Notes: Merged: https://github.com/ruby/ruby/pull/5175 commit 24f8f20cc7e4e63d10c208f7a9882d1c6f4b1917 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-03 16:28:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-25 23:53:14 +0900 [ruby/win32ole] LICENSE https://github.com/ruby/win32ole/commit/62fd78078b Notes: Merged: https://github.com/ruby/ruby/pull/5175 commit 9850176984d8c6a4a0e6c0982b982dcd3ea7cd79 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-25 19:12:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-25 21:34:41 +0900 Split skipped tests step commit d896746d692ee1f11ee22f1ee2ef0b8f79ecfe10 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-25 15:38:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-25 19:16:39 +0900 Keep the generated source files when clean [Bug #18363] Notes: Merged: https://github.com/ruby/ruby/pull/5174 commit 51404eec5978f015f3d9738c40524aa745b50b17 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-25 19:13:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-25 19:13:36 +0900 Ignore pkg-config installation failure due to unmet dependencies commit a1eaeb8e40a47c4d87aba12f4025ccb7211272c0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-25 18:59:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-25 19:13:27 +0900 Stop duplicated runs commit ca21eed6ebbceca68daa7b2a88e69a58b8d56806 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-25 12:18:15 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-25 13:57:49 +0900 fix assertion on `gc_cc_cme()` `cc->cme_` can be NULL when it is not initialized yet. It can be observed on `GC.stress == true` running. Notes: Merged: https://github.com/ruby/ruby/pull/5172 commit aceb75f6c9d13ce178e8c4a123d9f95c51875fe7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-25 00:37:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-25 11:10:34 +0900 Skip tests if only document files changed on Cirrus-CI [ci skip] commit b5aa161383ec214b1d6296ea5c76dfe28737821f Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-25 11:00:28 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-25 11:01:27 +0900 test/ruby/test_iseq.rb: Avoid pollution of method namespace http://rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20211125T003004Z.log.html.gz ``` [ 4780/21204] TestISeq#test_super_with_anonymous_block/home/chkbuild/chkbuild/tmp/build/20211125T003004Z/ruby/test/ruby/test_iseq.rb:141: warning: method redefined; discarding old touch3 /home/chkbuild/chkbuild/tmp/build/20211125T003004Z/ruby/test/ruby/test_iseq.rb:121: warning: previous definition of touch3 was here = 0.00 s ``` commit 8bde66167fb310b8b4297821e15a9adfa3cb9dd4 Author: Adam Hess <HParker@github.com> AuthorDate: 2021-11-25 10:23:22 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-25 10:23:22 +0900 update YJIT docs to reference RubyVM::YJIT instead of just YJIT [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5171 Merged-By: XrXr commit 635efa594a08f0f1a80d9a2b3cd663368b777c38 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-25 08:44:27 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-25 08:44:27 +0900 Whats here for float (#5170) * What's Here for Float Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 9faa59919674ab33a326e479e97864a7bd8067d3 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-25 06:15:12 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-25 06:15:12 +0900 Enhanced RDoc for Float#floor (#5167) * Enhanced RDoc for Float#floor * Enhanced RDoc for Float * Enhanced RDoc for Float Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 9252830d7edb880b66902f3b075473dbc020f851 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-25 04:02:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-25 04:02:38 +0900 * 2021-11-25 [ci skip] commit aace9cb162551f60d6ed811cc378f5156b892828 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-06 00:16:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-25 04:02:21 +0900 [rubygems/rubygems] Fix bad instance variable name Recent changes made a warning while running specs show up for some reason, and it revealed this error. https://github.com/rubygems/rubygems/commit/bbf55de38e commit b2b473707f0010055a8df8cc5f83905a73dda871 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-05 23:54:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-25 04:02:21 +0900 [rubygems/rubygems] Check not having load system features also for successful runs https://github.com/rubygems/rubygems/commit/4807bd19a5 commit d49ee9e2c3cfdf1a705da32019694ecfd00dd1e6 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-05 23:53:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-25 04:02:20 +0900 [rubygems/rubygems] These method should be returning a string https://github.com/rubygems/rubygems/commit/dc391f4d87 commit d123919595536ee11686dbae3bc5c2c94e3ebcb8 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-05 18:50:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-25 04:02:20 +0900 [rubygems/rubygems] We should be checking raised exception, not status code here https://github.com/rubygems/rubygems/commit/48f8cdab9c commit c4b1aa19a36be0beaa01d4f5b2d889ceaf82dbd6 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-15 20:51:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-25 04:02:19 +0900 [rubygems/rubygems] Don't replace ENV twice on non Windows platforms https://github.com/rubygems/rubygems/commit/8dc86b7096 commit 3d19c2900e6d7feaff40d1e3ace62afce60b5bac Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-30 08:01:05 +0900 Commit: usa <usa@garbagecollect.jp> CommitDate: 2021-11-24 23:45:57 +0900 No need to link and install .pdb anymore With /Z7, no .pdb file is generated, so trying to link it during build fails on my machine even though it's okay on CI. By the way, in my local testing, no .pdb is generated in cwd at runtime even without the /Fd option. I guess we can pass it just in case. Notes: Merged: https://github.com/ruby/ruby/pull/5058 commit e6f4a39a4de28067ff0b5dca55a8c09a8f9e2006 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-29 06:48:21 +0900 Commit: usa <usa@garbagecollect.jp> CommitDate: 2021-11-24 23:45:57 +0900 MJIT MSVC: Use /Z7 to avoid PDB write race With MSVC, MJIT uses the /Fd option on an installed PDB file when compiling. Combined with the /Zi option, this causes the PDB file to be modified every time MJIT compiles. Concurrent modifications to the same PDB file is known to cause problems. MSVC even has an option, /FS to deal with it. When running MJIT tests in parallel, sometimes this leads to corrupting the PDB file, breaking subsequent compilations. On CI, we get messages like these: rb_mjit_header-3.1.0.pdb is not the pdb file that was used when this precompiled header was created, recreate the precompiled header. To avoid this race, use the /Z7 option when building precompiled header, which asks the compiler to put debug info into the .obj file, eliminating the need for pointing the compiler to the PDB file for the precompiled header. The /Fd option is changed to use a unique path based on the name of the dll output. Because of the /debug linker flag, we generate a PDB file at runtime even though we use /Z7. There are a couple things missing from this change: - Because MJIT uses the interpreter's CFLAGS build option and that contains /Zi, putting /Z7 at the end leads to a build warning - With /Z7 no PDB file is built anymore, so the code for installing the PDB file can be removed There might also be other problems with this change I haven't noticed while developing this change using Github Actions. I don't have a Windows dev environment with Visual Studio so I can't finish this change easily. Please feel free to complete this change if it makes sense. Note: - On master, you can see the PDB file changing with llvm-pdbutil or a simple checksum. There is an age field in the file that is bumped - I'm not sure if users can specify compile flags on MSVC. If they couldn't, maybe it's easier to change MJIT's compile options to use /Z7 when building the precompile header. - MJIT could pass different options at runtime to generate fewer files. Right now it inherits the /DEBUG linker flag which causes a PDB file to be generated at runtime even though /Z7 is used. Relevant MSVC docs: - [/Zi,/Z7](https://docs.microsoft.com/en-us/cpp/build/reference/z7-zi-zi-debug-information-format?view=msvc-160) - [/DEBUG](https://docs.microsoft.com/en-us/cpp/build/reference/debug-generate-debug-info?view=msvc-160) - [/FS](https://docs.microsoft.com/en-us/cpp/build/reference/fs-force-synchronous-pdb-writes?view=msvc-160) Notes: Merged: https://github.com/ruby/ruby/pull/5058 commit 7c3041047efecb98cf088a899c022703512651d1 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-24 23:34:30 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-24 23:34:30 +0900 Enhanced RDoc for Float#prev_float (#5162) * Enhanced RDoc for Float#prev_float Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 1dcfcb6bc508bb0ca4a8855d754401e82c0572b9 Author: furunkel <furunkel@users.noreply.github.com> AuthorDate: 2021-11-12 00:34:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-24 23:06:28 +0900 Fix typo Notes: Merged: https://github.com/ruby/ruby/pull/5107 commit 7d55f1b6b6b9777a8bd665f6c5ed6a64c7fa2e9b Author: MSP-Greg <Greg.mpls@gmail.com> AuthorDate: 2021-11-23 10:49:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-24 23:04:54 +0900 [Actions] use windows-2022 for mingw MSP-Greg/ruby-setup-ruby@win-ucrt-1 Notes: Merged: https://github.com/ruby/ruby/pull/5158 commit c51b92c18deb850d2cea3a7c9020db23b364ab72 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-24 03:14:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-24 23:01:41 +0900 [ruby/zlib] [Bug #18358] Fix crash in zlib when in progress When Zlib::Inflate#inflate or Zlib::Deflate#deflate is called recursively inside the block, a crash can occur because of an use-after-free bug. https://github.com/ruby/zlib/commit/50fb8a0338 commit 5445d33be2c6945ff335d5491a6666e8b544bf7b Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-24 19:56:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-24 19:59:00 +0900 [ruby/cgi] Bump version https://github.com/ruby/cgi/commit/c9c800715e commit 0f31b3f465036884fc0e22ddb4fe5d46279eccae Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-06-29 10:29:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-24 19:59:00 +0900 [ruby/cgi] When parsing cookies, only decode the values https://github.com/ruby/cgi/commit/052eb3a828 commit da34f31ad0315b9b8dfb318aafab393aee54968f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-03 19:40:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-24 19:58:59 +0900 [ruby/cgi] Fix integer overflow Make use of the check in rb_alloc_tmp_buffer2. https://hackerone.com/reports/1328463 https://github.com/ruby/cgi/commit/c728632c1c commit 3454a456d1005dac799279dae42555759b741fc9 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-24 15:42:00 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-24 15:42:00 +0900 test/ruby/test_iseq.rb: Use __LINE__ to make the error log easy to see commit df8f8581153b4df7e7f042afd088b905f13b654c Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-24 06:38:28 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-24 06:38:28 +0900 Enhanced RDoc for Float#next_float (#5160) * Enhanced RDoc for Float#next_float Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 459f9e3df8e8080d8c44aed3636a337e6ee64132 Author: Eileen M. Uchitelle <eileencodes@users.noreply.github.com> AuthorDate: 2021-11-24 04:09:24 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-24 04:09:24 +0900 Add setclassvariable to yjit (#5127) Implements setclassvariable in yjit. Note that this version is not faster than the standard version because we aren't handling the inline cache in assembly. This is still important to implement because it will prevent yjit from exiting in methods that call both a cvar setter and other code that yjit can compile. Co-authored-by: Aaron Patterson tenderlove@ruby-lang.org Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit fb9d67742b77e5b38cfe46b448b64e6965aa3e70 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-24 00:51:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-24 00:51:42 +0900 * 2021-11-24 [ci skip] commit 9aded89f4071a8afb79326701789241f1da12f82 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-20 04:51:58 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-24 00:51:27 +0900 Speed up Ractors for Variable Width Allocation This commit adds a Ractor cache for every size pool. Previously, all VWA allocated objects used the slowpath and locked the VM. On a micro-benchmark that benchmarks String allocation: VWA turned off: 29.196591 0.889709 30.086300 ( 9.434059) VWA before this commit: 29.279486 41.477869 70.757355 ( 12.527379) VWA after this commit: 16.782903 0.557117 17.340020 ( 4.255603) Notes: Merged: https://github.com/ruby/ruby/pull/5151 commit c14f230b26aa4f8abe9ecf3814cfebbe584d77c9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-23 00:09:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-23 21:03:19 +0900 Assign temporary ID to anonymous ID [Bug #18250] Dumped iseq binary can not have unnamed symbols/IDs, and ID 0 is stored instead. As `struct rb_id_table` disallows ID 0, also for the distinction, re-assign a new temporary ID based on the local variable table index when loading from the binary, as well as the parser. Notes: Merged: https://github.com/ruby/ruby/pull/5157 commit eb301d8aecf454681e78cd7ad6d027e67b121857 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-11-22 20:20:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-23 21:03:19 +0900 Add an extra failing test case for [Bug #18250] The parameter being called `req` specifically causes an assertion error: ``` Assertion failed: (key != 0), function hash_table_raw_insert, file id_table.c, line 153. ``` Renaming the parameter or removing the `*` doesn't reproduce. Notes: Merged: https://github.com/ruby/ruby/pull/5157 commit c0c2b31a35e19a47b499b57807bc0a0f9325f6d3 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-10-28 21:07:11 +0900 Commit: Jean Boussier <jean.boussier@gmail.com> CommitDate: 2021-11-23 18:50:44 +0900 Add Class#subclasses Implements [Feature #18273] Returns an array containing the receiver's direct subclasses without singleton classes. Notes: Merged: https://github.com/ruby/ruby/pull/5045 commit a88b19d3d08447eeb7045621f02a844173d64203 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-23 16:08:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-23 16:08:53 +0900 Suppress the “experimental” warnings for `IO::Buffer` As this warning is emitted just once per processes, needs in each files when parallel testing. commit da832d6c2a695cbc8f8893e9cac145719b045a71 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-23 10:04:25 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-23 10:04:25 +0900 What's Here section for Integer (#5155) * What's Here section for Integer Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit f5d20411386ff2552ff27661387ddc4bae1ebc30 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-11-23 09:29:29 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-23 09:29:29 +0900 Avoid assert failure when NULL EC is expected After 5680c38c75aeb5cbd219aafa8eb48c315f287d97, postponed job APIs now expect to be called on native threads not managed by Ruby and handles getting a NULL execution context. However, in debug builds the change runs into an assertion failure with GET_EC() which asserts that EC is non-NULL. Avoid the assertion failure by passing `false` for `expect_ec` instead as the intention is to handle when there is no EC. Add a test from John Crepezzi and John Hawthorn to exercise this situation. See GH-4108 See GH-5094 [Bug #17573] Co-authored-by: John Hawthorn <john@hawthorn.email> Co-authored-by: John Crepezzi <john.crepezzi@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/5156 Merged-By: XrXr commit 13d1ded253940585a993e92648ab9f77d355586d Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-11-05 01:30:30 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-11-23 08:23:28 +0900 YJIT: Make block invalidation more robust This commit adds an entry_exit field to block_t for use in invalidate_block_version(). By patching the start of the block while invalidating it, invalidate_block_version() can function correctly while there is no executable memory left for new branch stubs. This change additionally fixes correctness for situations where we cannot patch incoming jumps to the invalidated block. In situations such as Shopify/yjit#226, the address to the start of the block is saved and used later, possibly after the block is invalidated. The assume_* family of function now generate block->entry_exit before remembering blocks for invalidation. RubyVM::YJIT.simulate_oom! is introduced for testing out of memory conditions. The test for it is disabled for now because OOM triggers other failure conditions not addressed by this commit. Fixes Shopify/yjit#226 Notes: Merged: https://github.com/ruby/ruby/pull/5145 commit e42f994f6b20416853af0252029af94ff7c9b9a9 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-23 05:57:17 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-23 05:57:17 +0900 Enhanced RDoc for Float (#5153) Treats: #> #>= #< #<= #eql? #nan? #infinite? #finite? Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit aaff5d7905c0085f477d197ae7934e0b9115c070 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-23 02:02:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-23 02:02:45 +0900 * 2021-11-23 [ci skip] commit c4f45674a431560105d1b92c7b64d8b6354d9c6a Author: Jemma Issroff <jemmaissroff@gmail.com> AuthorDate: 2021-02-05 06:16:59 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-23 02:02:29 +0900 Removes unused HEAP_PAGE_BITMAP_PLANES constant from gc.c Notes: Merged: https://github.com/ruby/ruby/pull/4154 commit b680b632e5b88e4ea550de3f15cf6ef782efeb48 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-11-16 06:09:10 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-22 23:11:04 +0900 Make RCLASS_EXT(c)->subclasses a doubly linked list Updating RCLASS_PARENT_SUBCLASSES and RCLASS_MODULE_SUBCLASSES while compacting can trigger the read barrier. This commit makes RCLASS_SUBCLASSES a doubly linked list with a dedicated head object so that we can add and remove entries from the list without having to touch an object in the Ruby heap Notes: Merged: https://github.com/ruby/ruby/pull/5125 commit fa9fa23ea844047d0d4f83a3864bdb24ecf95646 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-22 09:29:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-22 09:29:30 +0900 * 2021-11-22 [ci skip] commit 997adfd4104599de1fa99bf62ea78b5e85189441 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-20 09:15:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-22 09:29:13 +0900 [rubygems/rubygems] Clarify `bundle viz` deprecation https://github.com/rubygems/rubygems/commit/7f22fe56b3 commit 784f1e1538401665c1660750748e47b9598da665 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-21 19:17:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-21 19:23:36 +0900 Throttle pull-requests only [ci skip] commit 1c4f5293640a86b0de47d7d9db44ee1e83a77be1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-21 16:23:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-21 16:23:44 +0900 Ignore preprocessed C++ files [ci skip] commit ac152b3cac0be45d2a17d89610cbc15be873786f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-21 14:44:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-21 16:21:18 +0900 Update dependencies commit cbfd5249d4475451731c4b1a54034ddd61d480e9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-21 11:58:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-21 16:21:18 +0900 Stop including node.h from vm_debug.h only for `NODE` commit d2cb4cc073709879535bf4d32efa308d91f6dcdd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-21 16:12:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-21 16:16:03 +0900 Adjust format commit f5829e293583aa6ba6a1f1314ee22881d58a5f96 Author: ima1zumi <mariimaizumi5@gmail.com> AuthorDate: 2021-11-17 00:58:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-21 13:56:26 +0900 [ruby/reline] Correct padding space calculation fix https://github.com/ruby/irb/issues/308 This bug occurred when `dialog.width - calculate_width(s, true)` was negative. When `dialog.width` is shorter than `old_dialog.width`, it calculates how much padding it has to do. However, there are cases where `s` is longer than `dialog.width`, as in the issue. In that case, `padding_space_with_escape_sequences` will crash. Here, `old_dialog.width` is longer than `dialog.width`, so I changed the padding width to `old_dialog.width - dialog.width`. https://github.com/ruby/reline/commit/c581c31e0f commit feda058531c0bdd5b673180accb4407dcc798c79 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-18 03:40:49 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-21 08:59:24 +0900 Refactor hacky ID tables to struct rb_ast_id_table_t The implementation of a local variable tables was represented as `ID*`, but it was very hacky: the first element is not an ID but the size of the table, and, the last element is (sometimes) a link to the next local table only when the id tables are a linked list. This change converts the hacky implementation to a normal struct. Notes: Merged: https://github.com/ruby/ruby/pull/5136 commit 86ad878e6a0781749c73574112a0fac4f088e2c9 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-21 08:21:30 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-21 08:21:30 +0900 Enhanced RDoc for Float (#5150) Treated (or previously treated): #quo #% #divmod #**` #eql? #<=> #== #hash Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 8afd35b950a86e2b28991a47d42232428130d56e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-21 01:35:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-21 01:35:42 +0900 * 2021-11-21 [ci skip] commit 8f3432cd4466c35cd9f482de3779d76f3957968f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-21 00:31:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-21 00:31:51 +0900 Fix setting struct member by public_send Notes: Merged: https://github.com/ruby/ruby/pull/5152 commit c5ec05d047f3c3f32b34d705088d407429d4303a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-20 21:32:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-20 21:32:57 +0900 `struct_pos_num` is no longer used commit 73388aff5e2a6c6f5520d4ccc7843990fb15520e Author: Adam Hess <HParker@github.com> AuthorDate: 2021-11-20 06:57:09 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-20 06:57:09 +0900 Add YJIT codegen for objtostring (#5149) This is the minimal correct objtostring implementation in YJIT. For correctness, it is important that to_string not get called on strings or subclasses of string. There is a new test for this behavior. A follow up should implement an optimized version for other types as performed in `vm_objtostring`. Co-authored-by: John Hawthorn <jhawthorn@github.com> Co-authored-by: John Hawthorn <jhawthorn@github.com> Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit 3c92516519bf0cf3ed586462f947ed8c4ed64abd Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-11-20 03:00:13 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-11-20 04:05:09 +0900 Fix test_super_with_anonymous_block test to use anonymous block Notes: Merged: https://github.com/ruby/ruby/pull/5147 commit e9735ec206d24895ffb14ea7382fb38435fb16c5 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-20 03:16:34 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-20 03:16:34 +0900 * 2021-11-20 [ci skip] commit e0c38742a2841585f1deddcc3b567876daa1a709 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-20 03:16:16 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-20 03:16:16 +0900 Enhanced RDoc for Float (#5144) Treats: #to_s #coerce #+ #- #* #/ Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit aa591af296d50800c994b42b7dd5de8d95080611 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-19 21:45:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-19 21:55:27 +0900 Do not document vendored files [ci skip] Just duplications. commit 39c4673e3cd537f61197513d3ed202f3b885a899 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-18 05:59:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-19 10:12:11 +0900 [rubygems/rubygems] Previous logic can mostly go now https://github.com/rubygems/rubygems/commit/3241b34055 commit 80f39d78df618baf5af44692db2ca96d5bd4dbad Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-12 08:56:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-19 10:12:10 +0900 [rubygems/rubygems] Allow `bundle update` to downgrade gems by changing the Gemfile https://github.com/rubygems/rubygems/commit/6a19cca7e5 commit 55f574136cbcf11339531768524558e03bf7eb7a Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-18 05:13:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-19 10:12:09 +0900 [rubygems/rubygems] Extract a converge_specs method for later reusing it https://github.com/rubygems/rubygems/commit/e896e63ac3 commit 2730e45f4565ef41a08d2694be2a287c86f9e0ba Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-16 23:01:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-19 10:12:09 +0900 [rubygems/rubygems] Avoid unnecessary loop https://github.com/rubygems/rubygems/commit/afaf868b68 commit 4b1dd75e6c4308801156b4839662868be8676ff0 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-19 10:09:51 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-19 10:09:51 +0900 gc.c: Fix a compile error on some crossbuilds http://rubyci.s3.amazonaws.com/crossruby/crossruby-master-wasm32_emscripten/log/20211118T233311Z.log.html.gz#make ``` compiling gc.c gc.c:10629:47: error: implicit conversion loses integer precision: 'unsigned long long' to 'size_t' (aka 'unsigned long') [-Werror,-Wshorten-64-to-32] SET(time, objspace->profile.total_time_ns / (1000 * 1000) /* ns -> ms */); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ gc.c:10624:9: note: expanded from macro 'SET' return attr; \ ~~~~~~ ^~~~ gc.c:10629:47: error: implicit conversion loses integer precision: 'unsigned long long' to 'unsigned long' [-Werror,-Wshorten-64-to-32] SET(time, objspace->profile.total_time_ns / (1000 * 1000) /* ns -> ms */); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ gc.c:10626:68: note: expanded from macro 'SET' rb_hash_aset(hash, gc_stat_symbols[gc_stat_sym_##name], SIZET2NUM(attr)); ~~~~~~~~~ ^~~~ 2 errors generated. ``` commit 82ea2870188d66aa75a99f03b4e7fdd1750aa196 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-18 11:01:31 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-19 08:32:39 +0900 optimize `Struct` getter/setter Introduce new optimized method type `OPTIMIZED_METHOD_TYPE_STRUCT_AREF/ASET` with index information. Notes: Merged: https://github.com/ruby/ruby/pull/5131 commit be71c95b88019a1ca7a030a757ce343b743d8aff Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-18 00:43:40 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-19 08:32:39 +0900 `rb_method_optimized_t` for further extension Now `rb_method_optimized_t optimized` field is added to represent optimized method type. Notes: Merged: https://github.com/ruby/ruby/pull/5131 commit 6c64013978e77637995a0348f7e232068b9f61b4 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-11 23:00:42 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-19 08:32:07 +0900 use ULL2NUM directly. @nobu pointed out that ULL (unsigned long long) should have at least 64 bits so ULL2NUM(uint64_t) is not problem. Notes: Merged: https://github.com/ruby/ruby/pull/4757 commit c347038d4ea246d686fcd4ddc8761a91e4dd25ab Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-10 16:52:22 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-19 08:32:07 +0900 GC measurement feature * `GC.measure_total_time = true` enables total time measurement (default: true) * `GC.measure_total_time` returns current flag. * `GC.total_time` returns measured total time in nano seconds. * `GC.stat(:time)` (and Hash) returns measured total time in milli seconds. Notes: Merged: https://github.com/ruby/ruby/pull/4757 commit 349a1797828a1fa6acc3c0d30a2a24e884d02907 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-08-19 16:14:46 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-19 08:32:07 +0900 support `GC.stat(:time)` take 2 Notes: Merged: https://github.com/ruby/ruby/pull/4757 commit b08dacfea39ad8da3f1fd7fdd0e4538cc892ec44 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-11-19 08:10:20 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-19 08:10:20 +0900 Optimize dynamic string interpolation for symbol/true/false/nil/0-9 This provides a significant speedup for symbol, true, false, nil, and 0-9, class/module, and a small speedup in most other cases. Speedups (using included benchmarks): :symbol :: 60% 0-9 :: 50% Class/Module :: 50% nil/true/false :: 20% integer :: 10% [] :: 10% "" :: 3% One reason this approach is faster is it reduces the number of VM instructions for each interpolated value. Initial idea, approach, and benchmarks from Eric Wong. I applied the same approach against the master branch, updating it to handle the significant internal changes since this was first proposed 4 years ago (such as CALL_INFO/CALL_CACHE -> CALL_DATA). I also expanded it to optimize true/false/nil/0-9/class/module, and added handling of missing methods, refined methods, and RUBY_DEBUG. This renames the tostring insn to anytostring, and adds an objtostring insn that implements the optimization. This requires making a few functions non-static, and adding some non-static functions. This disables 4 YJIT tests. Those tests should be reenabled after YJIT optimizes the new objtostring insn. Implements [Feature #13715] Co-authored-by: Eric Wong <e@80x24.org> Co-authored-by: Alan Wu <XrXr@users.noreply.github.com> Co-authored-by: Yusuke Endoh <mame@ruby-lang.org> Co-authored-by: Koichi Sasada <ko1@atdot.net> Notes: Merged: https://github.com/ruby/ruby/pull/5002 Merged-By: jeremyevans <code@jeremyevans.net> commit 4adb012926f8bd6011168327d8832cf19976de40 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-11-19 05:44:19 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-11-19 07:17:57 +0900 Anonymous block forwarding allows a method to forward a passed block to another method without having to provide a name for the block parameter. Implements [Feature #11256] Co-authored-by: Yusuke Endoh mame@ruby-lang.org Co-authored-by: Nobuyoshi Nakada nobu@ruby-lang.org Notes: Merged: https://github.com/ruby/ruby/pull/5051 commit ea02b93bb95a42439631606269659dffc1981883 Author: Eileen M. Uchitelle <eileencodes@users.noreply.github.com> AuthorDate: 2021-11-19 06:17:40 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-19 06:17:40 +0900 Refactor setclassvariable (#5143) We only need the cref when we have a cache miss so don't look it up until we need it. This likely speeds up class variable writes in the interpreter but also simplifies the jit code. Before ``` Warming up -------------------------------------- write a cvar 192.280k i/100ms Calculating ------------------------------------- write a cvar 1.915M (± 3.5%) i/s - 9.614M in 5.026694s ``` After ``` Warming up -------------------------------------- write a cvar 216.308k i/100ms Calculating ------------------------------------- write a cvar 2.140M (± 3.1%) i/s - 10.815M in 5.058079s ``` Followup to ruby/ruby#5137 Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit ab737b19197c63b84dad9944045a2fd2dc369264 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-11-19 03:51:14 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-11-19 03:51:14 +0900 Update documentation for Module#{private,public,protected,module_function} Also, update NEWS for this change and the Kernel#load change. commit 75ecbda438670ec12641d1324d0e81a52ee02e0a Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-28 02:35:54 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-11-19 02:47:40 +0900 Make Module#{public,private,protected,module_function} return arguments Previously, each of these methods returned self, but it is more useful to return arguments, to allow for simpler method decorators, such as: ```ruby cached private def foo; some_long_calculation; end ``` Where cached sets up caching for the method. For each of these methods, the following behavior is used: 1) No arguments returns nil 2) Single argument is returned 3) Multiple arguments are returned as an array The single argument case is really the case we are trying to optimize for, for the same reason that def was changed to return a symbol for the method. Idea and initial patch from Herwin Quarantainenet. Implements [Feature #12495] Notes: Merged: https://github.com/ruby/ruby/pull/5037 commit ec574ab3453709490b53b5cc761ec158103fe42a Author: Eileen M. Uchitelle <eileencodes@users.noreply.github.com> AuthorDate: 2021-11-19 02:11:53 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-19 02:11:53 +0900 Refactor getclassvariable (#5137) * Refactor getclassvariable We only need the cref when we have a cache miss so don't look it up until we need it. This speeds up class variable reads in the interpreter but also simplifies the jit code. Benchmarks for master vs this branch (without yjit): Before: ``` Warming up -------------------------------------- read a cvar 1.276M i/100ms Calculating ------------------------------------- read a cvar 12.596M (± 1.7%) i/s - 63.781M in 5.064902s ``` After: ``` Warming up -------------------------------------- read a cvar 1.336M i/100ms Calculating ------------------------------------- read a cvar 13.114M (± 3.6%) i/s - 65.488M in 5.000584s ``` Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> * Clean up function signatures / remove dead code rb_vm_getclassvariable signature has changed and we don't need rb_vm_get_cref. Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit d48f5082e5b5af56bc9a0986eb83bb18520f4233 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-19 00:44:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-19 00:44:50 +0900 * 2021-11-19 [ci skip] commit cdebf57ec670f35cf07460778e40f6801050ffb5 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-11-19 00:44:31 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-19 00:44:31 +0900 Add --yjit-no-type-prop so we can test YJIT without type propagation (#5135) * Add --yjit-no-type-prop so we can test YJIT without type propagation * Fix typo in command line option * Leave just two test workflows enable for YJIT Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit f3dcb4bbf7253690abba02e64a051390c55237cb Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-18 23:28:04 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-18 23:28:04 +0900 Enhanced RDoc for Integer (#5139) Treats: #<< #>> #to_s Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit e2b78440ba3cebe5106efa699505677b4444486b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-18 22:21:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-18 22:54:57 +0900 Throttle GitHub Actions [ci skip] As GitHub Actions are choking a lot lately, throttle the checks down to the latest commit only per branches. commit 89b440bf724b5e670da0fa31c36a7945a7ddc80f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-18 21:47:18 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-18 21:47:18 +0900 Expect bool as `sort:` option at glob [Feature #18287] Notes: Merged: https://github.com/ruby/ruby/pull/5084 Merged-By: nobu <nobu@ruby-lang.org> commit 68963244658ef7dacd48affcb2afca29419e847e Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-11-18 20:52:03 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-11-18 20:52:03 +0900 Update bundled_gems commit 39655aceb2c1c5c3b014b25047dd2d99835c8c5a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-18 18:18:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-18 19:39:57 +0900 [ruby/date] Bump version to 3.2.2 https://github.com/ruby/date/commit/21d91c5f4f commit 3ce27552df3411ea75ac8f24023194ec373e0f0c Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-11-16 22:14:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-18 19:39:55 +0900 [ruby/date] Expose Date::VERSION An almost universal convention for gems is to expose `Namespace::VERSION` which makes it much easier when debugging etc. Many gems extracted from ruby don't do this, even though it would be even more useful because they ship with ruby, so it's less clear which version it is. https://github.com/ruby/date/commit/fef7ec18d8 commit 2efbb35a8fdf1bea4c914f19f9c0beb52fa77e78 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-18 17:39:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-18 17:39:28 +0900 Remove macOS CIs [ci skip] commit b35b7a1ef25347735a6bb7c28ab7e77afea1d856 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-19 00:50:10 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-11-18 15:43:40 +0900 Allow Kernel#load to load code into a specified module Instead of always using a new anonymous module for Kernel#load if the wrap argument is not false/nil, use the given module if a module is provided. Implements [Feature #6210] Notes: Merged: https://github.com/ruby/ruby/pull/4986 commit 05a3dc1a654c5e92200d994d0a51a2e159c88162 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-11-18 13:26:40 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-18 13:26:40 +0900 Improve performance Kernel#Float with using Primitive.mandatory_only? method [Feature #18344] (#5133) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit cb69c19e8ab540eda9de8a16a0f9479344a3a259 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-18 07:00:50 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-18 07:00:50 +0900 Enhanced RDoc for Integer (#5138) Treats: #times #round #floor #ceil #truncate ::sqrt Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 8bdb56fcaf16ddac761ee5d00cd6cff6b5434640 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-04 21:40:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-18 04:37:28 +0900 [rubygems/rubygems] Protect specs access at a finer level https://github.com/rubygems/rubygems/commit/c8cc053bde commit 4bc69a25f3b317771a9ec5a3a60b1d7e13321bc0 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-04 21:28:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-18 04:37:27 +0900 [rubygems/rubygems] Stop using a constant for something not constant https://github.com/rubygems/rubygems/commit/5cb0b9d9b8 commit a5cd4a056896cbc47c59617305b1ee8e1b5b7911 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-04 21:23:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-18 04:37:27 +0900 [rubygems/rubygems] Extract a helper method to reset specs https://github.com/rubygems/rubygems/commit/662de0c990 commit f542ab2e6de7e41fbdd3a14b21ac21afa37cb73d Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-18 02:01:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-18 04:37:26 +0900 [rubygems/rubygems] Make clearing loaded spec cache really private https://github.com/rubygems/rubygems/commit/19f117652b commit d8dde444e90274b6845ee7e817202880576bdd8e Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-18 01:59:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-18 04:37:26 +0900 [rubygems/rubygems] `Gem::Specification.reset` already clears loaded spec cache Plus, that method is supposed to be private. https://github.com/rubygems/rubygems/commit/f8a01ddb9f commit 81eba77fc0b2954ebf51a228f7bb94f64dd81f75 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-04 21:20:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-18 04:37:25 +0900 [rubygems/rubygems] We can now use standard memoization https://github.com/rubygems/rubygems/commit/231be44d38 commit 61f023f03b7571c0190f62a6bf811a64f61b118e Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-18 01:47:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-18 04:37:25 +0900 [rubygems/rubygems] Easier preservation of activated specs https://github.com/rubygems/rubygems/commit/54e923ffc2 commit fdd3eed037feabaf2daaa9e1ccec22ad751c5b03 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-04 21:12:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-18 04:37:24 +0900 [rubygems/rubygems] Set `@@all` variable at class definition time To spare the `defined?` check. https://github.com/rubygems/rubygems/commit/64d27bba01 commit 4acac918f49d6117a857e9acce66bec4648dde81 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-18 03:51:32 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-18 03:51:32 +0900 Enhanced RDoc for Integer (#5134) Treated: #== #<=> #< #<= #> #>= #& #| #^ Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 1e9ef0363940dcb77c842ad68fb6ed99b861d4d5 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-18 02:40:53 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-18 03:47:35 +0900 compile.c: remove dead code commit e1f6ca1911083e83752d1f1a34d9dcfb90e1750f Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-18 02:40:30 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-18 03:47:35 +0900 compile.c: Fix typo commit 864ad8b5d7d3b96e3d24a05c5d8d8d1cc40f4b7a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-18 03:20:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-18 03:20:45 +0900 * 2021-11-18 [ci skip] commit 1454906d4e730312b175197182cf85581821ed5e Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-17 23:07:47 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-18 03:20:31 +0900 Add tests for cme NULL crash Tests for GitHub PR #5122. Originally in GitHub PR #5121. Notes: Merged: https://github.com/ruby/ruby/pull/5132 commit 6764256dc7e768582f52aa8bee274815bc5f318c Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-17 23:39:34 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-17 23:39:34 +0900 node/h: clean node field accessors This change removes nd_oid, nd_rest, and nd_opt, and adds some comments for special accessors. commit 753cfbdbf33bd4766503ee37626618d973e587b7 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-17 23:38:52 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-17 23:38:52 +0900 node.c (dump_node): update format explanation for NODE_ARGS commit 5a7b4dba26e29f5942265267688625b5be174064 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-17 23:38:19 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-17 23:38:19 +0900 node.c (dump_node): trivial refactoring commit c400165afaca06dcff06d980c8f7fe46ff3904e4 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-17 05:01:05 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-17 23:02:57 +0900 Fix crash when clearing method cache for builtin method Builtin methods do not always have their mandatory_only_cme created (it is only created when called with only mandatory parameters), so it could be null. If we try to clear the cme, it will crash because it is null. Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/5126 commit b95d7d2099e0d9df68c08f23991ba35db6126bf5 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-16 18:18:45 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-17 22:21:42 +0900 no need to check `cme == NULL` Now `cc->cme_` is not NULL. Notes: Merged: https://github.com/ruby/ruby/pull/5122 commit 7ec1fc37f4c87c691555e76d51b6590761b3ec64 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-16 18:14:50 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-17 22:21:42 +0900 add `VM_CALLCACHE_ON_STACK` check if iseq refers to on stack CC (it shouldn't). Notes: Merged: https://github.com/ruby/ruby/pull/5122 commit 8d7116552dace6d0a9a8f0bbe2fe0f02fcff6532 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-16 18:02:16 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-17 22:21:42 +0900 assert `cc->cme_ != NULL` when `vm_cc_markable(cc)`. Notes: Merged: https://github.com/ruby/ruby/pull/5122 commit b2255153cf2fe9d7b851c59cc09b358c0630e0a2 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-16 17:57:49 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-17 22:21:42 +0900 `vm_empty_cc_for_super` Same as `vm_empty_cc`, introduce a global variable which has `.call_ = vm_call_super_method`. Use it if the `cme == NULL` on `vm_search_super_method`. Notes: Merged: https://github.com/ruby/ruby/pull/5122 commit 84aba250315d7fea728a6708e33ae8bf11f607b2 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-16 17:53:33 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-17 22:21:42 +0900 assert `cc->call_ != NULL` Notes: Merged: https://github.com/ruby/ruby/pull/5122 commit 2d1a7bed03540257b32fd87ce1c78d2f5ad3d075 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-16 17:52:20 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-17 22:21:42 +0900 a variable is not needed. Notes: Merged: https://github.com/ruby/ruby/pull/5122 commit a982a1f1e705f74ec5d802ce6439d8e250619920 Author: Naohisa Goto <ngotogenome@gmail.com> AuthorDate: 2021-11-17 20:45:02 +0900 Commit: Naohisa Goto <ngotogenome@gmail.com> CommitDate: 2021-11-17 20:59:48 +0900 Update URL about DTrace static library glommed obj [ci skip] The old URL http://mail.opensolaris.org/pipermail/dtrace-discuss/2005-August/000207.html pointed to the official archive of dtrace-discuss mailing list in opensolaris.org, disappeared in 2013. The new URL points to the MARC Mailing list ARChives. commit c240ccd64396cfcd9e6d5998055657f70c323eef Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-11-17 17:59:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-17 19:09:14 +0900 [ruby/net-http] gemspec: Drop unused directive "executables" This gem exposes no executable files. https://github.com/ruby/net-http/commit/3b3743f6ce commit d23b3d9b7dc2964da36dc9daf96718b1867adcae Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-17 15:08:46 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-17 15:08:46 +0900 Prevent "already initialized constant Digest::VERSION" http://rubyci.s3.amazonaws.com/ubuntu1804/ruby-master/log/20211117T033003Z.log.html.gz ``` installing default gems from ext: /home/chkbuild/chkbuild/tmp/build/20211117T033003Z/lib/ruby/gems/3.1.0 /home/chkbuild/chkbuild/tmp/build/20211117T033003Z/ruby/ext/digest/lib/digest/version.rb:4: warning: already initialized constant Digest::VERSION /home/chkbuild/chkbuild/tmp/build/20211117T033003Z/ruby/.ext/common/digest/version.rb:4: warning: previous definition of VERSION was here ``` This hack is copied from ext/psych/psych.gemspec commit 21b8f992de19fd3d7e7dd258f761b47566c3d6cf Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-17 11:52:00 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-17 13:53:55 +0900 Use the updated test of rbs To prevent the CI failure due to the change of io-wait https://github.com/ruby/rbs/pull/828/ Notes: Merged: https://github.com/ruby/ruby/pull/5130 commit a5cff7cc5de374be05db8e99c4ca975e60558a99 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-11-17 06:43:00 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-11-17 12:31:35 +0900 Make Enumerable#each_cons return object if over size This behavior changed in dfb47bbd17c3c2b8ce17dbafaf62df023b0224b2, but only for normal exit, not for early exit. Fix it for early exit as well. While here, fix example code in documentation so that it doesn't indicate that the method returns nil. Notes: Merged: https://github.com/ruby/ruby/pull/5129 commit d1cbec9b52dd3a2556aa8add4dbef4fd99f43945 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-11-17 06:09:25 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-11-17 12:28:45 +0900 Add a test for bug 18343 This already passes in master, 3.0, and 2.7, but would fail in ruby 2.6 as it segfaults instead of raising an exception. I think it's good to have a test for this to catch possible future regressions. Notes: Merged: https://github.com/ruby/ruby/pull/5128 commit cbb057e6771b62d006f81d422a6ae566a6e20d43 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-17 11:17:37 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-17 11:21:31 +0900 ext/io/wait/depend: make it work for Ruby 3.1.0-dev Reverts https://github.com/ruby/io-wait/commit/2eb3841e9c8f3279955253a93d3db98b80787548 because it fails on "update-deps" check in the ruby/ruby CI. https://github.com/ruby/ruby/runs/4230891140?check_suite_focus=true ``` diff --git a/ext/io/wait/depend b/ext/io/wait/depend index 7b314b9..449e9fe 100644 --- a/ext/io/wait/depend +++ b/ext/io/wait/depend ... ``` Maybe now it does not work on Ruby 2.6. This file must be changed for each Ruby version. I have no good idea to fix this issue. commit 5190926e40febeeb3822b8bd7c031b06279dc3f1 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-11-15 11:28:02 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-11-17 06:39:54 +0900 Validate string type when constructing IO::Buffer for string mapping. Notes: Merged: https://github.com/ruby/ruby/pull/5115 commit a19a657514a384a6c36cb62a2b4eb5352fb3074e Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-11-15 11:16:48 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-11-17 06:39:41 +0900 Fix 32-bit conversions in IO::Buffer implementation. Notes: Merged: https://github.com/ruby/ruby/pull/5114 commit 1af8ed5f0a2c381c5dee4a5bcffff61f270c30d9 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-11-16 19:33:39 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-17 06:38:03 +0900 `Primitive.mandatory_only?` consider splat args `vm_ci_argc` gives the number of arguments, but `*[1, 2, 3]` only counts for one. Notes: Merged: https://github.com/ruby/ruby/pull/5124 commit 5b6a397f3e73e58d585c01ac2e3908cfac873c8c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-17 04:42:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-17 04:42:28 +0900 * 2021-11-17 [ci skip] commit d8d54886316878d44a6832271f9cdc84ee26bb3e Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-17 04:42:05 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-17 04:42:05 +0900 Enhanced RDoc for Integer (#5120) Treated: #+ #- #* #fdiv #/ #div #** #[] #digits #upto #downto Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 8a816fbe7bcc518518a8fd0edabcb6e4fc0d5a56 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-16 23:01:54 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-16 23:01:54 +0900 Revert "Temporary ignored the failing specs for Date" This reverts commit 17e64cca6b737060884f6fd9ab1c5055e9b49577. The specs should work now. commit a87c56f820dac90d50544ad33cc546daa9f29a9a Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-11-16 22:03:42 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-16 22:51:41 +0900 [ruby/date] check_limit: also handle symbols https://github.com/ruby/date/commit/376c65942b commit fa674cf7230e40bc96625ee97a6057e48bb20f0f Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-11-15 19:37:40 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-16 22:51:40 +0900 [ruby/date] `Date._<format>(nil)` should return an empty Hash Fix: https://github.com/ruby/date/issues/39 This is how versions previous to 3.2.1 behaved and Active Support currently rely on this behavior. https://github.com/rails/rails/blob/90357af08048ef5076730505f6e7b14a81f33d0c/activesupport/lib/active_support/values/time_zone.rb#L383-L384 Any Rails application upgrading to date `3.2.1` might run into unexpected errors. https://github.com/ruby/date/commit/8f2d7a0c7e commit 17e64cca6b737060884f6fd9ab1c5055e9b49577 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-16 21:22:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 21:22:28 +0900 Temporary ignored the failing specs for Date commit 27168a1cf76a891a46c9aa639116c64822627802 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-03 19:14:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 21:07:19 +0900 [ruby/nkf] Fix a typo [ci skip] https://github.com/ruby/nkf/commit/18c118c83c commit ed7a6413785cf1c8f4dfef3eca1790818afe7002 Author: Akinori MUSHA <knu@idaemons.org> AuthorDate: 2021-10-24 11:06:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 21:04:46 +0900 [ruby/ipaddr] Bump version to 1.2.3 https://github.com/ruby/ipaddr/commit/37007e7812 commit 489c8cebf575741d62effd0d212f1319beff3c40 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-12 12:15:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:56:56 +0900 [ruby/date] Add length limit option for methods that parses date strings `Date.parse` now raises an ArgumentError when a given date string is longer than 128. You can configure the limit by giving `limit` keyword arguments like `Date.parse(str, limit: 1000)`. If you pass `limit: nil`, the limit is disabled. Not only `Date.parse` but also the following methods are changed. * Date._parse * Date.parse * DateTime.parse * Date._iso8601 * Date.iso8601 * DateTime.iso8601 * Date._rfc3339 * Date.rfc3339 * DateTime.rfc3339 * Date._xmlschema * Date.xmlschema * DateTime.xmlschema * Date._rfc2822 * Date.rfc2822 * DateTime.rfc2822 * Date._rfc822 * Date.rfc822 * DateTime.rfc822 * Date._jisx0301 * Date.jisx0301 * DateTime.jisx0301 https://github.com/ruby/date/commit/3959accef8 commit 5bff4cd56cdaf8b4dc6d020112674e4b4f9cd956 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-22 21:33:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:56:04 +0900 [ruby/net-protocol] Update the required ruby version https://github.com/ruby/net-protocol/commit/d4982420e6 commit 2231d103f3ef6438bf42b448aadd8c8cea89c496 Author: Akinori MUSHA <knu@idaemons.org> AuthorDate: 2021-10-25 12:28:05 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:55:33 +0900 [ruby/set] Bump the version to 1.0.2 https://github.com/ruby/set/commit/db2ebc946d commit c910de3575aaa5c2757f357084ad01518770e289 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-22 16:50:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:25:47 +0900 [ruby/io-wait] Fix dependency for ruby 2.6 https://github.com/ruby/io-wait/commit/2eb3841e9c commit 96d9cfba08deaa4da578985276ac6723e1c80fe4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-22 15:52:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:25:46 +0900 [ruby/io-wait] Allow earlier versions https://github.com/ruby/io-wait/commit/1060f9348c commit dc5512243bb8333cd031d0bf50c4fb245d6ad93f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-22 15:51:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:25:44 +0900 [ruby/io-wait] Disable ractor test which is meaningless on earlier versions https://github.com/ruby/io-wait/commit/e8e1e99d4c commit db71a04c2ec73f09fee01c85c6343175657f2078 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-10-11 16:09:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:25:43 +0900 [ruby/io-wait] Fix backward compatibility with earlier versions https://github.com/ruby/io-wait/commit/898248931f commit d305ae5f045e839de183f7d575864b7718a2faa5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-22 15:34:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:25:41 +0900 [ruby/io-wait] Use `omit` as per test-unit https://github.com/ruby/io-wait/commit/1f59f7b02f commit f3bda8987ecf78aa260e697232876b35f83b67c3 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-16 20:19:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:19:13 +0900 Merge the master branch of rubygems repo Picked from https://github.com/rubygems/rubygems/commit/4b498709a015a94e14a3852a1841a7a3e669133d commit 84fdaaab4605020103c77df7665556de0a02dad2 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-16 20:10:43 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:11:34 +0900 Ignore LICENSE files of standard libraries for sync target commit cc3afdb165ae9916be97dc557ef42ed8d4671b7c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-16 20:07:30 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:07:30 +0900 Added LICENSE entry of vendored net-http-persistent to LEGAL commit ef11414b1fc92c452df78a3d03fdd93ac95b26d1 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-16 20:05:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 20:05:07 +0900 Added LICENSE entry of vendored connection_pool to LEGAL commit 9a76072873a0698038a87961b2fed31ac1485c64 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-16 19:51:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 19:51:06 +0900 Added LICENSE entry of vendored molinillo to LEGAL commit 1ff7b9cac4b89d295f7b9d8029ab7530c88662d5 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-16 19:48:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 19:48:32 +0900 Added LICENSE entry of vendored thor to LEGAL commit 018266ca387eacd1f149141717104f57ab86cccd Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-16 19:42:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 19:42:20 +0900 Merge digest-3.0.3.pre3 and https://github.com/ruby/digest/commit/efd76821b8a467c193c753104c29b476debbb2c9 commit 625cffc808cabf1df12fc83a55223b3fcc15be4e Author: Akinori MUSHA <knu@idaemons.org> AuthorDate: 2021-10-26 14:53:43 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 18:35:13 +0900 [ruby/digest] Abort loading if being loaded by gem/bundle pre Ruby 3.0.3 https://github.com/ruby/digest/commit/efd76821b8 commit fed65e6a48c5bed938c9bafb40409cd7e398f1c9 Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-10-14 00:40:48 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-16 18:35:07 +0900 [ruby/digest] Avoid null pointer subtraction in digest/md5 Fixes warning on Clang 13. Fixes [Bug #18076] https://github.com/ruby/digest/commit/32135c7487 commit 7a816b5fc81cf70c92796c2b1794d32887d8e777 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-11-16 12:34:22 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-11-16 12:34:59 +0900 Support preview release Also add tag property. commit f31b7f0522e4abfea61f6a74b859205b2b5f8ade Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-16 04:52:23 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-16 04:52:23 +0900 Enhanced RDoc for Integer (#5118) Treats: #allbits? #anybits? #nobits? #succ #pred #chr` #to_s #+ #- Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 0fecf1b37e2030def285a031f2e5aa374e00cc90 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-11-16 03:59:43 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-16 03:59:43 +0900 Add Aaron Patterson (@tenderlove) to YJIT code owners (#5119) Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit fceaa6886b8b33f5c083b1b924b8578ecd32142a Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-11-16 02:31:44 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-11-16 02:31:44 +0900 Sync test_http_request.rb after fix to net-http commit 555eb67058301facd22dcff49d49edfb532bb2dc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-16 02:22:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-16 02:22:13 +0900 * 2021-11-16 [ci skip] commit f1c3fc273d026a14b52fe996a66b6042eddb8a27 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-11-16 02:15:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-16 02:21:57 +0900 [ruby/net-http] Fix tests after change to allow HEAD to send Accept-Encoding https://github.com/ruby/net-http/commit/ca7bb8c51c commit ca0a5edb5f42aa7c891c834a827863458180aa0f Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-15 16:52:12 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-15 16:53:49 +0900 test/ruby/test_m17n.rb: skip a test that breaks another test See https://bugs.ruby-lang.org/issues/18338 commit ccaa7957df9423498df54480489ce903d4e3c028 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-15 16:52:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-15 16:52:10 +0900 Ignore extensions of bundled gems for testing commit cc50e57bf5e002c0535c2166b94109dacf46d1f4 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-15 16:51:03 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-15 16:52:10 +0900 Relax extension name for macOS commit 021255f1e7e67e37db65dd5fe5ca945f4c19dc7e Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-11-15 16:25:24 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-11-15 16:25:25 +0900 Skip string allocation in benchmark/time_at.yml and also drop a weird newline from benchmark/array_sample.yml. commit f943264565f3072a30616fa93ffa3da3790294b0 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-15 10:33:03 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-15 15:58:56 +0900 add benchmark/time_at.yml ``` ruby_2_6 ruby_2_7 ruby_3_0 master modified Time.at(0) 12.362M 11.015M 9.499M 6.615M 9.000M i/s - 32.115M times in 2.597946s 2.915517s 3.380725s 4.854651s 3.568234s Time.at(0, 500) 7.542M 7.136M 8.252M 5.707M 5.646M i/s - 20.713M times in 2.746279s 2.902556s 2.510166s 3.629644s 3.668854s Time.at(0, in: "+09:00") 1.426M 1.346M 1.565M 1.674M 1.667M i/s - 4.240M times in 2.974049s 3.149753s 2.709416s 2.533043s 2.542853s ``` ``` ruby_2_6: ruby 2.6.7p150 (2020-12-09 revision 67888) [x86_64-linux] ruby_2_7: ruby 2.7.3p140 (2020-12-09 revision 9b884df6dd) [x86_64-linux] ruby_3_0: ruby 3.0.3p150 (2021-11-06 revision 6d540c1b98) [x86_64-linux] master: ruby 3.1.0dev (2021-11-13T20:48:57Z master fc456adc6a) [x86_64-linux] modified: ruby 3.1.0dev (2021-11-15T01:12:51Z mandatory_only_bui.. b0228446db) [x86_64-linux] ``` Notes: Merged: https://github.com/ruby/ruby/pull/5112 commit 2a3d5d661ce2cadad50aa5d72b54e134da54f5f3 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-13 07:44:46 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-15 15:58:56 +0900 Use `Primitive.mandatory_only?` for `Time.at` Notes: Merged: https://github.com/ruby/ruby/pull/5112 commit dde010c97432de8ac2336eeeb4f6b99daf832b61 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-15 10:32:39 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-15 15:58:56 +0900 add benchmark/array_sample.yml ``` ruby_2_6 ruby_2_7 ruby_3_0 master modified ary.sample 32.113M 30.146M 11.162M 10.539M 26.620M i/s - 64.882M times in 2.020428s 2.152296s 5.812981s 6.156398s 2.437325s ary.sample(2) 9.420M 8.987M 7.500M 6.973M 7.191M i/s - 25.170M times in 2.672085s 2.800616s 3.355896s 3.609534s 3.500108s ``` ``` ruby_2_6: ruby 2.6.7p150 (2020-12-09 revision 67888) [x86_64-linux] ruby_2_7: ruby 2.7.3p140 (2020-12-09 revision 9b884df6dd) [x86_64-linux] ruby_3_0: ruby 3.0.3p150 (2021-11-06 revision 6d540c1b98) [x86_64-linux] master: ruby 3.1.0dev (2021-11-13T20:48:57Z master fc456adc6a) [x86_64-linux] modified: ruby 3.1.0dev (2021-11-15T01:12:51Z mandatory_only_bui.. b0228446db) [x86_64-linux] ``` Notes: Merged: https://github.com/ruby/ruby/pull/5112 commit a24eeee5567a14841b37d9a3428e14e4f3c45c07 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-13 02:15:09 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-15 15:58:56 +0900 Use `Primitive.mandatory_only?` for `Array#sample` Notes: Merged: https://github.com/ruby/ruby/pull/5112 commit b1b73936c15fd490159a9b30ab50b8d5dfea1264 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-13 02:12:20 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-15 15:58:56 +0900 `Primitive.mandatory_only?` for fast path Compare with the C methods, A built-in methods written in Ruby is slower if only mandatory parameters are given because it needs to check the arguments and fill default values for optional and keyword parameters (C methods can check the number of parameters with `argc`, so there are no overhead). Passing mandatory arguments are common (optional arguments are exceptional, in many cases) so it is important to provide the fast path for such common cases. `Primitive.mandatory_only?` is a special builtin function used with `if` expression like that: ```ruby def self.at(time, subsec = false, unit = :microsecond, in: nil) if Primitive.mandatory_only? Primitive.time_s_at1(time) else Primitive.time_s_at(time, subsec, unit, Primitive.arg!(:in)) end end ``` and it makes two ISeq, ``` def self.at(time, subsec = false, unit = :microsecond, in: nil) Primitive.time_s_at(time, subsec, unit, Primitive.arg!(:in)) end def self.at(time) Primitive.time_s_at1(time) end ``` and (2) is pointed by (1). Note that `Primitive.mandatory_only?` should be used only in a condition of an `if` statement and the `if` statement should be equal to the method body (you can not put any expression before and after the `if` statement). A method entry with `mandatory_only?` (`Time.at` on the above case) is marked as `iseq_overload`. When the method will be dispatch only with mandatory arguments (`Time.at(0)` for example), make another method entry with ISeq (2) as mandatory only method entry and it will be cached in an inline method cache. The idea is similar discussed in https://bugs.ruby-lang.org/issues/16254 but it only checks mandatory parameters or more, because many cases only mandatory parameters are given. If we find other cases (optional or keyword parameters are used frequently and it hurts performance), we can extend the feature. Notes: Merged: https://github.com/ruby/ruby/pull/5112 commit f9638c3b1716df4a94ea6ae0854cf55d66072ee4 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-15 15:21:24 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-15 15:21:24 +0900 Revert "test/ruby/test_m17n.rb: Run a test under assert_separately" This reverts commit a698181021c11711dc56b74dacbdebc2895b5384. It failed on macos for a unknown problem. ``` 1) Error: TestM17N#test_object_inspect_external: Encoding::ConverterNotFoundError: code converter not found (US-ASCII to UTF-16BE) /Users/runner/work/ruby/ruby/src/test/ruby/test_m17n.rb:312:in `encode' /Users/runner/work/ruby/ruby/src/test/ruby/test_m17n.rb:312:in `inspect' /Users/runner/work/ruby/ruby/src/test/ruby/test_m17n.rb:315:in `inspect' /Users/runner/work/ruby/ruby/src/test/ruby/test_m17n.rb:315:in `<main>' /Users/runner/work/ruby/ruby/src/test/ruby/test_m17n.rb:299:in `test_object_inspect_external' ``` https://github.com/ruby/ruby/runs/4207871418?check_suite_focus=true commit 15bc1ae41e513af3c6c8749191513ee1101f7cf3 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-15 14:50:03 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-15 14:50:03 +0900 Revert "Enhanced RDoc for Integer (#5099)" This reverts commit fc456adc6a62d09b755243b8c8f190934b9965d6. It broke the CI check. https://github.com/ruby/ruby/runs/4207922247?check_suite_focus=true#step:3:4 ``` numeric.c:3518: * 255.chr(Encoding::UTF_8) # => "ÿ" Error: Process completed with exit code 1. ``` commit a698181021c11711dc56b74dacbdebc2895b5384 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-15 14:13:20 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-15 14:13:20 +0900 test/ruby/test_m17n.rb: Run a test under assert_separately The test uses `Encoding.default_external = Encoding::UTF_16BE`, which may add a wrongly UTF_16BE-encoded path to $LOADED_FEATURES (depending on the order of tests). Unfortunately this breaks another test: http://ci.rvm.jp/results/trunk-test@ruby-sky1/3711615 ``` /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb:11:in `===': incompatible encoding regexp match (US-ASCII regexp with UTF-16BE string) (Encoding::CompatibilityError) ``` According to @naruse-san, we don't pay effort to such a case, so this change just avoids the issue by running the test in question under another process. Co-Authored-By: Koichi Sasada <ko1@atdot.net> commit e6bc0acc13aac8ab9fa819b0e1b71805b000bcb3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-15 13:11:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-15 13:11:53 +0900 * 2021-11-15 [ci skip] commit 1ab6f2b4a232d41199268c6ae019941459ad5e33 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-15 10:18:20 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-15 13:11:30 +0900 `rb_vm_lvar_exposed()` is PUREFUNC This function is used in `rb_vm_lvar()` and this function can be unused (generated into *.rbinc files automatically). `rb_vm_lvar()` is already declared as a PUREFUNC, but `rb_vm_lvar_exposed()` is not a PUREFUNC, so `rb_vm_lvar_exposed()` is remained even if it is unused. Notes: Merged: https://github.com/ruby/ruby/pull/5113 commit fc456adc6a62d09b755243b8c8f190934b9965d6 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-14 05:48:57 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-14 05:48:57 +0900 Enhanced RDoc for Integer (#5099) Treats: #allbits? #anybits? #nobits? #succ #pred #chr` #to_s #+ #- Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 38c555a3150b6c22be650dc5c89ed5927c640e8c Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-14 02:41:30 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-14 02:41:30 +0900 show encoding for each path commit 43358c08f67f2fe167009a370cb7e9b23c87d92a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-14 02:36:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-14 02:36:04 +0900 * 2021-11-14 [ci skip] commit 4d8d8c9d4908a28e22c3182e27eac0e397e23833 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-14 02:35:03 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-14 02:35:03 +0900 test/io/console/test_io_console.rb: dump debug output to stderr make test-all in parallel mode seems to hide stdout commit 415671a28273e5bfbe9aa00a0e386f025720ac23 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-12 14:37:16 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-12 17:36:39 +0900 parse.y: Fix memory leak at parse error Local variable tables might leak at the parse error. Notes: Merged: https://github.com/ruby/ruby/pull/5111 commit 61938e2db59a032a46fc3de2ebead2e5e9d630a9 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-12 16:40:49 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-12 16:40:49 +0900 test/ruby/test_jit.rb: suppress a false-positive warning It reports "opt_regexpmatch2 insn is not included", but actually it is included. This is due to a known bug of ISeq#to_a on which this check depends. https://bugs.ruby-lang.org/issues/18269 commit 3aa62b455caf4926fd203878eca71b5281f10edf Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-12 16:19:30 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-12 16:23:00 +0900 test/io/console/test_io_console.rb: add debug code to debug the following failure http://ci.rvm.jp/results/trunk-test@ruby-sky1/3708240 ``` /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb:10:in `===': incompatible encoding regexp match (US-ASCII regexp with UTF-16BE string) (Encoding::CompatibilityError) /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb:10:in `each' /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb:10:in `grep' /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb:10:in `<class:TestIO_Console>' /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb:9:in `<top (required)>' <internal:/tmp/ruby/v3/src/trunk-test/lib/rubygems/core_ext/kernel_require.rb>:85:in `require' <internal:/tmp/ruby/v3/src/trunk-test/lib/rubygems/core_ext/kernel_require.rb>:85:in `require' /tmp/ruby/v3/src/trunk-test/tool/lib/test/unit/parallel.rb:122:in `run' /tmp/ruby/v3/src/trunk-test/tool/lib/test/unit/parallel.rb:211:in `<main>' running file: /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb ``` commit a046081838b4e4f28b54c9a5a8dfa413dc63096a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-12 16:04:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-12 16:04:21 +0900 Update bundled_gems at 2021-11-12 commit c833ece5f78b8c2e43263e08ccbd3ce1628bf610 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-10-22 11:05:00 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-11-12 12:46:08 +0900 Rework implementation of `IO::Buffer.for(string)` to use string locking. Notes: Merged: https://github.com/ruby/ruby/pull/5109 commit 98b442e013afbb450f1c946d86ed625c39ab3233 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-10-22 11:04:22 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-11-12 12:46:08 +0900 More immutability and locking tests. Notes: Merged: https://github.com/ruby/ruby/pull/5109 commit e73197dff54cbe00019bec7a1829fdc6b1821918 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-11-12 09:56:24 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-11-12 09:56:24 +0900 Update vcvars on windows-2022 [ci skip] https://github.com/ruby/actions/commit/875a056af0fb2f26fed20c32263ea840c293e2da https://github.com/actions/virtual-environments/commit/d6a789cbef30e0681d6667b1c91cb7a9bd9184bd#diff-a1f67f5c4a583bf90c239743379ad9473fbf1fa9d11c5cb7739c8012404dcc7aR229 commit 3cf7130d709ea5d54f3b0920fb5c1bece9dc20c1 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-12 04:31:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-12 06:05:09 +0900 [rubygems/rubygems] Remove duplicated spec https://github.com/rubygems/rubygems/commit/86b874ed24 commit 4736dec58ba81283c4351a2d682a4be432b0c28d Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-12 04:28:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-12 06:05:08 +0900 [rubygems/rubygems] Remove `gemfile_should_be` helper as well https://github.com/rubygems/rubygems/commit/79f3c00caa commit 1f91009d2409e65bb293006eba9a1d90247101cc Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-12 04:26:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-12 06:05:08 +0900 [rubygems/rubygems] Remove `have_lockfile` matcher too https://github.com/rubygems/rubygems/commit/635f3f2605 commit d0f266460f982137e24af2fbf3f7eeaaa8d47210 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-12 04:24:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-12 06:05:07 +0900 [rubygems/rubygems] Remove `lockfile_should_be` helper It doesn't add anything. https://github.com/rubygems/rubygems/commit/ece3c864df commit 84202963c52e02cecad3e6b2fad478bfbeee1bc7 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-12 01:55:35 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-12 04:08:38 +0900 [Bug #18329] Fix crash when calling non-existent super method The cme is NULL when a method does not exist, so check it before accessing the callcache. Notes: Merged: https://github.com/ruby/ruby/pull/5108 commit a9a94540d68b523ecc4e2181e50b320cd5d176f1 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-11-11 06:33:17 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-12 03:47:45 +0900 Remove RCLASS(obj)->ptr when RVARGC is enabled With RVARGC we always store the rb_classext_t in the same slot as the RClass struct that refers to it. So we don't need to store the pointer or access through the pointer anymore and can switch the RCLASS_EXT macro to use an offset Notes: Merged: https://github.com/ruby/ruby/pull/5101 commit d08d13700c6527eb117af5df0a6c16e40aba6348 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-12 02:02:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-12 02:02:11 +0900 * 2021-11-12 [ci skip] commit dee2e9b2beea2f136801ca4594142a516f219549 Author: Soutaro Matsumoto <matsumoto@soutaro.com> AuthorDate: 2021-11-12 02:01:53 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-12 02:01:53 +0900 Bundle RBS 1.7.0 (#5105) * Bundle RBS 1.7.0 * tool/test-bundled-gems.rb: Use a correct path to Check if rbs is built * tool/test-bundled-gems.rb: lib/rbs/parse.y is no longer created Co-authored-by: Yusuke Endoh <mame@ruby-lang.org> Notes: Merged-By: soutaro <matsumoto@soutaro.com> commit c53aecee3bec524b91d7f2534291802a1cabb3f5 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-11-11 07:42:40 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-11 22:54:48 +0900 fix a memory leak introduced in 8bbd319 This commit fixes a memory leak introduced in an early part of the variable width allocation project that would prevent the rb_classext_t struct from being free'd when the class is swept. Notes: Merged: https://github.com/ruby/ruby/pull/5103 commit b5531adf4160304ca62b7d128af458704c9beb4e Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-11 18:01:10 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-11 18:04:00 +0900 quick fix for `test_initialize_HEAD` https://github.com/ruby/ruby/commit/52ab9bbee918c63faad32e3851b162691b984d40 makes a failure. ``` 1) Failure: HTTPRequestTest#test_initialize_HEAD [/tmp/ruby/v3/src/trunk/test/net/http/test_http_request.rb:53]: <{"accept"=>["*/*"], "user-agent"=>["Ruby"]}> expected but was <{"accept-encoding"=>["gzip;q=1.0,deflate;q=0.6,identity;q=0.3"], "accept"=>["*/*"], "user-agent"=>["Ruby"]}>. ``` I'm not sure it is correct, so please review later. commit cd51bf61a2178a73219f7884792dfb82ca64c082 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-11-11 17:59:22 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-11-11 17:59:22 +0900 test/openssl/test_ssl: adjust certificate expiry date test_connect_certificate_verify_failed_exception_message occasionally fails. Is it possible that OpenSSL sees a different clock from Ruby by more than 10 seconds? http://ci.rvm.jp/logfiles/brlog.trunk-random0.20211111-072828 Let's give more time after the certificate expiration date to see if this fixes the flakiness. We had similar occasional failures in test_x509store.rb before, which disappeared after ruby/ruby commit 7930a352a57c and ruby/openssl commit fb2fcbb13734. commit 52ab9bbee918c63faad32e3851b162691b984d40 Author: Shohei Maeda <irt_m.jrsyo@ntworkers.com> AuthorDate: 2021-06-06 18:49:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-11 17:34:00 +0900 [ruby/net-http] Send Accept-Encoding header on HEAD method https://github.com/ruby/net-http/commit/9d95c5e3e6 commit 33533fabd54e23bced64a74114ee7786478a6ee7 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-11-02 10:38:14 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-11-11 17:14:47 +0900 revival of must_not_null() Presence of RBIMPL_ATTR_NONNULL let C compilers to eliminate must_not_null(). Because null pointers are not allowed to exist there are no reason to call the function. In reality null pointers are still passed to those functions in a number of ways. Runtime check for them are definitely nice to have. fix [Feature#18280] Notes: Merged: https://github.com/ruby/ruby/pull/5068 commit 155bc42727a1328b07502fcd1a7b789e2677a09d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-11 13:55:30 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-11 14:00:32 +0900 [ruby/getoptlong] fixup 5f57f47572502173e2e8880f83ef7b3e2659f974 https://github.com/ruby/getoptlong/commit/5683297853 commit 6ecd30b402d02a51aef1ec48072ff4d103b7ef8f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-11 11:07:26 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-11 14:00:05 +0900 [ruby/getoptlong] Save the copy of `ARGV` It refers the same object and will be replaced. https://github.com/ruby/getoptlong/commit/5f57f47572 commit f5dcecf3456e5f52aa979cc2a59c5dc7b398e123 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-11-11 11:34:09 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-11-11 11:45:19 +0900 rb_file_size: add doxygen Must not be a bad idea to improve documents. [ci skip] commit ad84c5d1b047604cc36a12d388ff2caa1da954c1 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-11-11 11:33:29 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-11-11 11:45:19 +0900 rb_enc_code_to_mbclen: fix doxygen Wrong parameter name. [ci skip] commit 4b3830127f794e70187ca2986199947b2467b46f Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-11-11 11:29:45 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-11-11 11:45:19 +0900 RB_ENCODING_SET_INLINED: fix doxygen Wrong parameter name. [ci skip] commit a4a6e5cd2e69049c9e9296e597a429f849fbe749 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-11-11 11:18:44 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-11-11 11:45:19 +0900 ENCODING_MASK: fix doxygen link [ci skip] commit 1370b0876f4d67e20e8f50f3c048447befd71fdc Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-11-11 09:49:55 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-11-11 11:45:19 +0900 io/buffer.h: C linkage Because `make install` installs this header to target systems, it must be ready to be `#include`d form a C++ program. commit db316e627f32cf73e3cc8f8d67b67894f36c17f3 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-26 20:20:19 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-11 10:37:35 +0900 [ruby/getoptlong] Write a first test of getoptlong.rb https://github.com/ruby/getoptlong/commit/18cdb03fd4 commit 414b5565f7d0aeb27b43e8f3b81914314e03dfb0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-05 09:45:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-11 10:37:35 +0900 [ruby/tmpdir] [DOC] Fix syntax in example code [ci skip] RDoc expects example code to be valid syntax. https://github.com/ruby/tmpdir/commit/ee42540ebb commit 51c67ee61a57093cfd6f0e06a5aff77d479a37e1 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-11-10 21:20:46 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-11-11 09:35:16 +0900 Don't allow `fd == -1` to propagate to system calls. Notes: Merged: https://github.com/ruby/ruby/pull/5100 commit d5dd87d0db7270d5845ec016b3436fba608e27d7 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-11 07:13:20 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-11 07:14:50 +0900 [ci skip] Fix typo in test name Notes: Merged: https://github.com/ruby/ruby/pull/5102 commit 98cc6d158b501a4c30aa578239b35085a4612b94 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-11 03:52:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-11 03:52:47 +0900 * 2021-11-11 [ci skip] commit 8d5f38a8a43fd356da34d7881b5d0d1c6d115f1d Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-11-11 03:50:38 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-11-11 03:51:59 +0900 Use Primitive. in timev.rb for consistency with all other .rb files commit 8bcff5604b15fd29f357669dd8cb65a6618c9926 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-10 18:14:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-10 18:14:14 +0900 Tentative fix of subsec to `Time.at` [Bug #18293] commit 850912b6e080f972a2d58f5011073eb511b08df4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-10 17:06:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-10 17:47:12 +0900 Install pkg-config on 32-bit Ubuntu [ci skip] commit 4eb23c9ddae2d2fee38b7363f688fed105a6b0a6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-10 17:46:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-10 17:47:12 +0900 Commit miss [ci skip] commit 83bdc2f00c4565a091d88399e5a315a96f6afed6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-09 15:12:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-10 17:42:18 +0900 Simplify default values of `Time.at` [Bug #18293] commit cc33d07f46559bfd11098c6b39c7c59faa892af9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-10 17:41:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-10 17:42:09 +0900 Disable experimental warnings in test/runner.rb commit 943b6e4d9c480b9daf2352c28769a92eecf5f66a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-10 17:07:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-10 17:07:58 +0900 Fix format specifier commit 46e46eafd48c474ae8be0dd7d11bc43725de3d02 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-10 16:41:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-10 16:41:26 +0900 size_t is not for file size commit 81d0ce7e97af74a2086e143f9e349ee519bd1c4d Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-11-10 11:42:57 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-11-10 15:21:05 +0900 Mark IO::Buffer as experimental. Notes: Merged: https://github.com/ruby/ruby/pull/4621 commit 4b8903421828cb9d4de139180563ae8d8f04e1ab Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-07-02 19:41:16 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-11-10 15:21:05 +0900 IO::Buffer for scheduler interface. Notes: Merged: https://github.com/ruby/ruby/pull/4621 commit 56b90cf94465ce347a3d9a779363c78ce3deb180 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-11-10 14:09:08 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-11-10 14:09:08 +0900 Fix a typo and add `IO.` [ci skip] commit af74cc7504efa4d7fa5a0889e4ba97eade68abf1 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-10 10:08:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-10 10:08:48 +0900 * 2021-11-10 [ci skip] commit e8086e275b9a4896ac57dfeac9b22cbc2741d6d1 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-10 00:57:03 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-10 10:08:30 +0900 gc.h: move rb_objspace_garbage_object_p to internal/gc.h ... to allow class.c to use the function Notes: Merged: https://github.com/ruby/ruby/pull/5097 commit 5c892da7d7974aeed8e7dd97bb31d2394cc19356 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-09 17:06:01 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-10 10:08:30 +0900 class.c: descendants must not cause GC until the result array is created Follow up of 428227472fc6563046d8138aab17f07bef6af753. The previous fix uses `rb_ary_new_from_values` to create the result array, but it may trigger the GC. This second try is to create the result array by `rb_ary_new_capa` before the second iteration, and assume that `rb_ary_push` does not trigger GC. This assumption is very fragile, so should be improved in future. [Bug #18282] [Feature #14394] Notes: Merged: https://github.com/ruby/ruby/pull/5097 commit 0d3898ec7b94b737fd9e0a9df1d0a944a9709564 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-09 19:52:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-09 21:21:35 +0900 [rubygems/rubygems] Remove more unused stuff from make command parsing https://github.com/rubygems/rubygems/commit/eba7d173d4 commit ba3dfe6efe958b31f43b34c4e942d69be938cc43 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-09 19:47:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-09 21:21:34 +0900 [rubygems/rubygems] This method is never passed a block https://github.com/rubygems/rubygems/commit/d79ade274b commit d713b602eaf798b2b429347a772dc7268ce063be Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-10-15 20:47:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-09 21:21:34 +0900 [rubygems/rubygems] Fix assert_contains_make_command on make defined by environment variable. The `parse_make_command_line` in `assert_contains_make_command` fails to get the make targets correctly, when the make command is set with make options by environment variable such as `export make='make -j2'` at lib/rubygems/ext/builder.rb::make. So, we include the make options (eg, -XX) as a part of the command to fix the case. Note that this commit still doesn't fix the case of `export make='make -j 2'`. https://github.com/rubygems/rubygems/commit/7730ef3fa0 commit ec6352c10848553b7e8ddbc9f400aaae3358d5ab Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-09 19:30:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-09 21:21:33 +0900 [rubygems/rubygems] Improve error message when make command doesn't match https://github.com/rubygems/rubygems/commit/8c2725e9a6 commit 54bda176c6f1274c2311b02badee34002e4ea10e Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-09 17:31:17 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-09 17:31:17 +0900 test/ruby/test_iseq.rb: Prevent a warning http://rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20211109T063003Z.log.html.gz ``` [ 9898/21145] TestISeq#test_super_with_block_and_kwrest/home/chkbuild/chkbuild/tmp/build/20211109T063003Z/ruby/test/ruby/test_iseq.rb:1: warning: method redefined; discarding old touch /home/chkbuild/chkbuild/tmp/build/20211109T063003Z/ruby/test/ruby/test_iseq.rb:1: warning: previous definition of touch was here = 0.00 s ``` commit cf50f9484af9b7aa5afd7a342026d86d1906c423 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-09 17:30:28 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-09 17:30:28 +0900 test/ruby/test_enum.rb: Prevent a warning http://rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20211109T063003Z.log.html.gz ``` [ 1960/21145] TestEnumerable#test_to_a_keywords/home/chkbuild/chkbuild/tmp/build/20211109T063003Z/ruby/test/ruby/test_enum.rb:138: warning: method redefined; discarding old each /home/chkbuild/chkbuild/tmp/build/20211109T063003Z/ruby/test/ruby/test_enum.rb:11: warning: previous definition of each was here = 0.00 s ``` commit d5ae892519a1944b4869d06d1523648cf6e15d97 Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-09-14 01:06:22 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-09 17:10:36 +0900 Add doc for `a_call` and `a_return` events of TracePoint Notes: Merged: https://github.com/ruby/ruby/pull/4832 commit 75aae66c4f3eacd527cea71e0c8e486b630fc0a4 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-11-09 17:09:29 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-09 17:09:29 +0900 Some codes replace to `RBOOL` macro (#5023) * Some code replace and using RBOOL macro * Fix indent * Using RBOOL in syserr_eqq function Notes: Merged-By: nobu <nobu@ruby-lang.org> commit c1c13c58eebb7441d27536a32d73380d165d6eda Author: Nikita Vasilevsky <nikita.vasilevsky@shopify.com> AuthorDate: 2021-10-30 01:31:31 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-09 16:56:44 +0900 Add one more test example for swap instruction Notes: Merged: https://github.com/ruby/ruby/pull/5057 commit 5a3b2e61411f3ce516eefeb272787d3d2af13038 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-09 15:42:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-09 16:21:54 +0900 Needs `$` in `make` command line to be escaped commit 5680c38c75aeb5cbd219aafa8eb48c315f287d97 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-11-09 03:37:17 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-11-09 16:21:18 +0900 Use valid `ec` for postponed job. Postponed job can be registered from non-Ruby thread, which means `ec` in TLS can be NULL. In this case, use main thread's `ec` instead. See https://github.com/ruby/ruby/pull/4108 and https://github.com/ruby/ruby/pull/4336 Notes: Merged: https://github.com/ruby/ruby/pull/5094 commit 3628616dd10ddbdaa92378264149565295c9f191 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-05 21:31:31 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-09 16:11:10 +0900 Remove a redundant condition Notes: Merged: https://github.com/ruby/ruby/pull/5070 commit 64007fc57f360eab4b18b26389719a85f45b25c3 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-05 09:36:44 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-09 16:11:10 +0900 class.c (Class#descendants): Ingore subclasses created after estimation It is theoretically possible if a finalizer creates a subclass. Notes: Merged: https://github.com/ruby/ruby/pull/5070 commit 037da5066619e083b4770dc97cf6435892e2bebe Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-03 03:59:17 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-09 16:11:10 +0900 class.c: Use ALLOC_N instead of ALLOCA_N Notes: Merged: https://github.com/ruby/ruby/pull/5070 commit 428227472fc6563046d8138aab17f07bef6af753 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-02 19:23:36 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-09 16:11:10 +0900 class.c: calculate the length of Class.descendants in advance GC must not be triggered during callback of rb_class_foreach_subclass. To prevent GC, we can not use rb_ary_push. Instead, this changeset calls rb_class_foreach_subclass twice: first counts the subclasses, then allocates a buffer (which may cause GC and reduce subclasses, but not increase), and finally stores the subclasses to the buffer. [Bug #18282] [Feature #14394] Notes: Merged: https://github.com/ruby/ruby/pull/5070 commit 3ff0a0b40c2e1fbdad2286f1dafe837f822d0e0d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-09 15:16:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-09 15:20:44 +0900 Filter method names only if filtering method name only If sole `filter` option doesn't seem including test case name, match with method name only. And if the filter is a Regexp or String, it never matches method name symbols. commit 6cf7c0a48fb07a765d447404aba33636d9d87c89 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-09 14:48:10 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-09 14:52:48 +0900 test/readline/test_readline.rb: skip a test on i686-linux ... because readline library (or libtinfo) seems to cause SEGV internally even with Readline 8.1. This SEGV is caught as SystemStackError, which leads to a test failure. http://rubyci.s3.amazonaws.com/debian-i386/ruby-master/log/20211109T030008Z.fail.html.gz ``` 1) Failure: TestReadline#test_interrupt_in_other_thread [/home/chkbuild/chkbuild/tmp/build/20211109T030008Z/ruby/test/readline/test_readline.rb:568]: Unknown failure with exit status pid 13097 exit 1 Log: ** START **Readline::VERSION is 8.1. /home/chkbuild/chkbuild/tmp/build/20211109T030008Z/tmp/interrupt_in_other_thread20211109-6272-kcfqxo:13:in `readline': stack level too deep (SystemStackError) from /home/chkbuild/chkbuild/tmp/build/20211109T030008Z/tmp/interrupt_in_other_thread20211109-6272-kcfqxo:13:in `block in <main>' /home/chkbuild/chkbuild/tmp/build/20211109T030008Z/tmp/interrupt_in_other_thread20211109-6272-kcfqxo:13:in `readline': stack level too deep (SystemStackError) from /home/chkbuild/chkbuild/tmp/build/20211109T030008Z/tmp/interrupt_in_other_thread20211109-6272-kcfqxo:13:in `block in <main>' ``` commit 1290bdf1aeeefa5c7855b9654cc8aa9e1e740f45 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-09 14:39:39 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-09 14:39:39 +0900 test/ruby/test_fiber.rb: Extend timeout on Solaris The test usually takes 200 sec. on Solaris, so the timeout of 300 sec. looks too short. commit 1d609707b429ebb0311454cfa633afa1aca8073c Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-11-09 11:30:03 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-11-09 11:30:03 +0900 Fix a link [ci skip] commit d7432fdee585257686f381a5cf04ea53847bd6b8 Author: Nicholas Lee <nicholas.lee@appfolio.com> AuthorDate: 2021-11-09 08:52:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-09 10:56:17 +0900 [rubygems/rubygems] Use `shellsplit` instead of array of strings Previously, the command string to be used for the shell command was first generated and then split using shellsplit. This change reverts the current behavior as it breaks if the value of remote contains a space. https://github.com/rubygems/rubygems/commit/6649ee10b0 commit e014c9d607741180360d72e506885ab23dd032d5 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-09 06:33:04 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-09 06:41:03 +0900 [ci skip] Update NEWS.md for [Feature #18290] Notes: Merged: https://github.com/ruby/ruby/pull/5095 commit 39d3d24abbd63a109ebf70c229e3a6cab927fc90 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-09 05:15:38 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-09 05:39:53 +0900 [Feature #18290] Remove tests that test use of rb_gc_force_recycle Remove tests that assume objects get force recycled. Notes: Merged: https://github.com/ruby/ruby/pull/5096 commit 309406484b98fe0aea55016d8f5971b4e6b91761 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-05 22:52:07 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-09 04:05:54 +0900 [Feature #18290] Deprecate rb_gc_force_recycle and remove invalidate_mark_stack_chunk This commit deprecates rb_gc_force_recycle and coverts it to a no-op function. Also removes invalidate_mark_stack_chunk since only rb_gc_force_recycle uses it. Notes: Merged: https://github.com/ruby/ruby/pull/4363 commit aeae6e2842e1702dfb89b8ae69b48c4f5f64c662 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-11-05 22:51:53 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-11-09 04:05:54 +0900 [Feature #18290] Remove all usages of rb_gc_force_recycle This commit removes usages of rb_gc_force_recycle since it is a burden to maintain and makes changes to the GC difficult. Notes: Merged: https://github.com/ruby/ruby/pull/4363 commit aa5bccfc65cf47a10d72cefa4bc2ee097f135b4c Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-09 03:38:42 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-09 03:38:42 +0900 NEWS.md: Mention Process._fork [[Feature #17795]] commit 837493389fccd6b250071166591fc352bc93521e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-09 03:33:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-09 03:33:04 +0900 * 2021-11-09 [ci skip] commit efe7e6e949cc6137f2c918522f866cf6b99309ce Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-28 15:49:55 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-09 03:32:46 +0900 Bundle rbs 1.7.0.beta.5 Notes: Merged: https://github.com/ruby/ruby/pull/5042 commit bd2674ad3354bd20e026d237a461e88af3834604 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-08 20:46:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-08 22:15:21 +0900 [rubygems/rubygems] Use bundler-graph instead of bundler-viz https://github.com/rubygems/rubygems/commit/a54cca13db commit 7cc4e147fc2fba1ef9e06cf50f1916acdb886a24 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-08 16:05:04 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-08 18:35:22 +0900 Get rid of implicit expansion to `long double` on ix86 commit 395738e8a5a14d432d17a9fe106f62f54a81c7aa Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-08 18:05:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-08 18:33:41 +0900 Separate TestReadline#test_interrupt_in_other_thread This method is already known to fail on Travis-CI arm32-linux. commit a64f7e9c0077c970c184f98f67094202a41e02cf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-08 08:58:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-08 18:04:52 +0900 Try 32bit environment commit 2772f85648bc90a445390c8cc82272e53689508f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-08 16:56:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-08 17:08:01 +0900 Prefer ANSI-style prototypes over old K&R-style definitions commit b47f7afbc30169ffbaf6ba68db3c1d39e24793b5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-08 16:54:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-08 17:08:01 +0900 Fix filename typo [Bug #18140] commit b5ca8ebc0b43ac86ec1e4b7556f71695ca61d04f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-08 16:07:54 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-08 16:07:54 +0900 Update bundled_gems at 2021-11-08 commit 833c69ee829dc9d9c2ce0f89c7f5e88200b94a0f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-08 01:43:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-08 15:14:34 +0900 Convert IDs to Integers As the ID serial is 32bit value and internal IDs created in the parser are assigned from its maximum value, Symbol converted from it will exceed 32bit and overflow on 32bit platforms. commit f3bae1a2063766c29bc6f8db76abfa619ba462f7 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-08 12:52:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-08 12:52:24 +0900 * 2021-11-08 [ci skip] commit 3501e0cbb5b6043b851686d2649e5ff7e9cf2b77 Author: Kenta Murata <mrkn@users.noreply.github.com> AuthorDate: 2021-11-08 12:52:09 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-08 12:52:09 +0900 memory_view.c: Add _memory_view_entry member in rb_memory_view_t (#5088) Notes: Merged-By: mrkn <mrkn@ruby-lang.org> commit e0a5c3d2b71dfad038d7562fdd33f02ffd79232d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-07 17:03:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:46:26 +0900 [MinGW] Set job names commit 8dc2fce2bed922a64413784af7040f512b96e852 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-07 14:21:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:46:26 +0900 [MinGW] Highlight where groups commit 7068255b0cc796cf39f2939873ccfcb971e79d0c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-07 15:57:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:46:25 +0900 [MinGW] Run in sh commit acd82cc31a8a74bbced2da6b635aebe1051963ae Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-07 15:55:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:46:25 +0900 [MinGW] Run test-spec commit 5ebda74ae10e6a9da6833424c5e138ad7f5063af Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-07 15:50:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:46:25 +0900 [MinGW] Pass -j option via environment variables commit 6295e348a98d457bddce7fe4a0803a6dde00bc7d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-07 15:46:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:46:25 +0900 [MinGW] Clear BUNDLER_VERSION unconditinally commit dc4dd96b028adf8fe59cdd5fb1f173efb0974e7f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-07 15:43:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:46:25 +0900 [MinGW] Remove unnecessary encoding settings commit 8acb2a9b4069f55f71a80c747fc7c6bcb686abb7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-07 15:34:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:46:25 +0900 [MinGW] Use autogen commit ec032e86faf9ac128ac51e3394d9b4001a374b38 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-07 15:31:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:46:25 +0900 [MinGW] Clear prefix and move the directory to DESTDIR Also the destination will be created at the installation. commit ba0e3ea130357f311ba9b66fc80213adde5eab01 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-07 13:35:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:46:25 +0900 [MSWin] Pass TESTOPTS via RUBY_TESTOPTS commit 30583bc947858746e4f8fc21b366bffa8bab4ac7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-07 01:34:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:46:25 +0900 [MSWin] Split nmake step The workflow output grouping seems effective even in the middle of lines. commit 5eb54c495ff78d2d5fbbdff71b56460654e597f6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-08 00:02:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 20:39:16 +0900 [MinGW] Set job env vars at once commit ac642df228dc01b9fc94b76714433453561f511d Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-11-07 13:13:32 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-11-07 13:13:32 +0900 Revert "Fix typo in ChangeLog-2.0.0 [ci skip]" This reverts commit e5792e7d552235e17a93d50a26c375db1974148f. Because this is correct ChangeLog of https://github.com/ruby/ruby/commit/89fef02f1305887d97ddcf96cc4df9109ce414e2 and reverted commit makes inconsistency with https://github.com/ruby/ruby/commit/171c708b0c862ee92d6a46ac9def97193954638b commit 45db04ee604acb520dfc4605feac9ebf46a58057 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-07 12:40:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-07 12:40:43 +0900 * 2021-11-07 [ci skip] commit ec657f44dca3b84fde2a0b3b66c4e0e74a4cdce8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-13 16:48:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 12:40:27 +0900 Refine the error message for hidden variables Notes: Merged: https://github.com/ruby/ruby/pull/5035 commit 334b69e5042f47f89c8780c1d7efa32d70c84786 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-13 14:25:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-07 12:40:27 +0900 rb_id_serial_to_id: return unregistered ID as an internal ID ```ruby def foo(*); ->{ super }; end ``` This code makes anonymous parameters which is not registered as an ID. The problem is that when Ractors try to scan `getlocal` instructions, it puts the Symbol corresponding to the parameter in to a hash. Since it is not registered, we end up with a strange exception. This commit wraps the unregistered ID in an internal ID so that we get the same exception for `...` as `*`. Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org> Co-Authored-By: John Hawthorn <john@hawthorn.email> Notes: Merged: https://github.com/ruby/ruby/pull/5035 commit 66b0847602ffa47575371f4d5a9a04dc6013ba49 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-23 23:41:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-06 17:39:37 +0900 Check the reading size range commit e5792e7d552235e17a93d50a26c375db1974148f Author: 180909 <wjh180909@gmail.com> AuthorDate: 2021-11-06 10:46:09 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-06 10:46:09 +0900 Fix typo in ChangeLog-2.0.0 [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5080 Merged-By: nobu <nobu@ruby-lang.org> commit 666a9185953e84e861688ed5ea6f2ac71c4ace32 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-06 07:22:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-06 09:06:49 +0900 [rubygems/rubygems] GNU Make needs DESTDIR on Windows environment like msys or mingw https://github.com/rubygems/rubygems/commit/7fd987d30d commit fbd6cc5856d10f935dd8aea96826652dbb49d844 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-11-06 06:01:07 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-06 06:01:07 +0900 YJIT: Support iseq sends with mixed kwargs (#5082) * YJIT: Support iseq sends with mixed kwargs Co-authored-by: Kevin Newton <kddnewton@gmail.com> * Add additional comments to iseq sends Co-authored-by: Kevin Newton <kddnewton@gmail.com> Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit 9cc2c74b8381670f584ed31b81aedb66c8f61b34 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-11-06 05:54:23 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-06 05:54:23 +0900 YJIT: Implement checkkeyword (#5083) Co-authored-by: John Crepezzi <john.crepezzi@gmail.com> Co-authored-by: John Crepezzi <john.crepezzi@gmail.com> Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit 91a9062626733c7d11ea4795bd1957a21f2adec6 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-11-06 04:44:29 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-06 04:44:29 +0900 YJIT: use shorter encoding for mov(r64,imm) when unambiguous (#5081) * YJIT: use shorter encoding for mov(r64,imm) when unambiguous Previously, for small constants such as `mov(RAX, imm_opnd(Qundef))`, we emit an instruction with an 8-byte immediate. This form commonly gets the `movabs` mnemonic. In 64-bit mode, 32-bit operands get zero extended to 64-bit to fill the register, so when the immediate is small enough, we can save 4 bytes by using the `mov` variant that takes a 32-bit immediate and does a zero extension. Not implement with this change, there is an imm32 variant of `mov` that does sign extension we could use. When the constant is negative, we fallback to the `movabs` form. In railsbench, this change yields roughly a 12% code size reduction for the outlined block. Co-authored-by: Jemma Issroff <jemmaissroff@gmail.com> * [ci skip] comment edit. Please squash. Co-authored-by: Jemma Issroff <jemmaissroff@gmail.com> Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit 82ae9b092cf51062c49b95e81ad184e1dea0df1e Author: haruuzion <haruuzion@users.noreply.github.com> AuthorDate: 2021-10-08 01:08:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-06 01:39:24 +0900 [rubygems/rubygems] Fix url https://github.com/rubygems/rubygems/commit/6a5a80eff7 commit f1ca64ed7ca746fa2c547f1e2642aed37ed57f12 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-06 00:22:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-06 00:22:31 +0900 * 2021-11-06 [ci skip] commit e83c02a768af61cd0890a75e90bcae1119d8bd93 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-11-05 23:08:21 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-11-06 00:22:14 +0900 Delegate keywords from Enumerable#to_a to #each Fixes [Bug #18289] Notes: Merged: https://github.com/ruby/ruby/pull/5086 commit 907aa4752752869193f333c4114da85080ec03e3 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 03:27:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 23:20:50 +0900 [rubygems/rubygems] Fix `ruby setup.rb` command when `--prefix` is passed https://github.com/rubygems/rubygems/commit/8d04092f6e commit d47831d554a9fa3ba4a78371914cb2ceb1fec1f7 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 21:51:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 23:20:49 +0900 [rubygems/rubygems] Bin dir should fall inside destdir Since that's what happens in real life when `--destdir` is passed. https://github.com/rubygems/rubygems/commit/55637bdc8a commit ef6752c6c40579205c5876b5a2de82c35874c5d5 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 21:46:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 23:20:49 +0900 [rubygems/rubygems] Remove unnecessary test setup The method being unit tested here doesn't use `RbConfig::CONFIG["bindir"]`. https://github.com/rubygems/rubygems/commit/d3f092ad14 commit f5a4fdae251901d07cc043918c329b797b2ed094 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 21:27:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 23:20:48 +0900 [rubygems/rubygems] Remove unnecessarily changing GEM_HOME At this point gem paths are already loaded and memoize. Changing `GEM_HOME` has no effect. https://github.com/rubygems/rubygems/commit/a1f62f0939 commit 87a8b22455128adc4c3cdd5c1e0c4d25ae1edac3 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 20:20:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 23:20:48 +0900 [rubygems/rubygems] Simplify `--destdir` test https://github.com/rubygems/rubygems/commit/0571fd1ec6 commit e60c1f7556878c9e65a6adad537f29c07aea64ee Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 04:20:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 23:20:47 +0900 [rubygems/rubygems] Refactor setup tests to not always pass `--prefix` Standard usage should be tested by default. I will add a test for `--prefix` once I fix that option since it's not working correctly at the moment. https://github.com/rubygems/rubygems/commit/50a7e34586 commit 5b941ec90dd76ddb78a3c9e5179f3eee801b4036 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 04:31:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 23:20:47 +0900 [rubygems/rubygems] Remove unnecessary loop Rubygems installs a single executable. Make that explicit. https://github.com/rubygems/rubygems/commit/2839d15521 commit 56119c5245ac4fa8d7c22de584a226b44082f61e Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-05 20:03:11 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-05 20:03:11 +0900 Skip TestIRB::TestInit#test_recovery_sigint on Solaris The test randomly gets stuck on Solaris: http://rubyci.s3.amazonaws.com/solaris11-sunc/ruby-master/log/20211105T060014Z.fail.html.gz ``` 1) Error: TestIRB::TestInit#test_recovery_sigint: Timeout::Error: execution of assert_in_out_err expired timeout (100.0 sec) pid 3195 killed by SIGTERM (signal 15) | Switch to inspect mode. | exit | ``` I investigated the issue but I couldn't figure it out. This random failure is noisy, which makes it difficult to track the CI. So I skip the test on Soalris. Contribution is welcome. commit bfc0a71a82f2b615e4879b0f2b39fc9cfb296abb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-05 10:32:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-05 10:32:55 +0900 Suppress unused-function warnings commit f62f020f5654297c1a876ab7e9f93afbfe879f1d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-05 10:20:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-05 10:20:02 +0900 Add the test of `Dir.glob` when `sort: true` is given explicitly commit 1ce3706c58e1f70c758e616012a982f058bce24e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-05 09:34:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-05 09:58:46 +0900 [DOC] Fix indent as single paragraph [ci skip] commit f3812e6ce61a8a84aee12aec00e879780a8470eb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-05 09:33:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-05 09:58:46 +0900 [DOC] Needs `call-seq` directives [ci skip] commit 53e2bba0dd9b3e86aa5e8d40a62c3b12a16ac6b3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-05 08:51:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-05 09:58:45 +0900 [DOC] Markup the literal false, and constant [ci skip] commit 30886be9f4f42626b94b079885e826335594b8dd Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-04 13:36:35 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-05 09:34:46 +0900 Skip bundled gem with an extension library under with-static-linked-ext .. mainly to fix emscripten CI http://rubyci.s3.amazonaws.com/crossruby/crossruby-master-wasm64_emscripten/log/20211104T024621Z.fail.html.gz Notes: Merged: https://github.com/ruby/ruby/pull/5078 commit 16331d9abb23aa2c3840d69a11e71881e8954b08 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-04 14:10:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 07:35:25 +0900 [rubygems/rubygems] Explicitly ignored empty value for DESTDIR https://github.com/rubygems/rubygems/commit/69dcc02553 commit 33d01b73442ba2e434122077ce6ffdc419d21940 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-11-04 13:59:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 07:35:24 +0900 [rubygems/rubygems] Skip to set DESTDIR option when it's not provided for mswin platform https://github.com/rubygems/rubygems/commit/b93546c8d8 commit 1506c8228b775776ce846e5cfdb6ce4b81963808 Author: Alyssa Ross <hi@alyssa.is> AuthorDate: 2019-05-19 00:10:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 07:23:36 +0900 [rubygems/rubygems] Don't apply `--destdir` twice when running `setup.rb` Prior to this patch, if I ran: ruby setup.rb --destdir /foo Then Bundler files would be written into /foo/foo, because destdir was being prepended, even though `bundler_spec.bin_dir` already included destdir. https://github.com/rubygems/rubygems/commit/9e857ffb52 commit 9503dd91a5b207d2215f7873b0442f52d2eb5c94 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 05:01:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 07:23:36 +0900 [rubygems/rubygems] Fix `--destdir` handling on Windows Driver letters were not accounted for in one place. https://github.com/rubygems/rubygems/commit/fbe42460d7 commit 5e855be86be19240257e444a09a95e1ddb355043 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 06:13:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 07:23:35 +0900 [rubygems/rubygems] More refactoring of `--destdir` handling https://github.com/rubygems/rubygems/commit/f42c2025ed commit 70cbca48b8df97ba75e665e147f6ad8bb39e752d Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-11-05 06:04:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 07:23:35 +0900 [rubygems/rubygems] Refactor `--destdir` handling https://github.com/rubygems/rubygems/commit/8aab3d11b0 commit 2421527d6e4737c371bca0cf7e694f8a2a0f923d Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-11-05 05:05:41 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-05 05:05:41 +0900 YJIT code pages refactoring for code GC (#5073) * New code page allocation logic * Fix leaked globals * Fix leaked symbols, yjit asm tests * Make COUNTED_EXIT take a jit argument, so we can eliminate global ocb * Remove extra whitespace * Change block start_pos/end_pos to be pointers instead of uint32_t * Change branch end_pos and start_pos to end_addr, start_addr Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit 85b4cf16e2cae0577633c1acb1dc7413d58fcb5a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-05 00:54:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-05 00:54:21 +0900 * 2021-11-05 [ci skip] commit 0c69f2401ac513c16adc9f98d53984ca05f2564d Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-04 14:22:09 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-11-05 00:54:05 +0900 test/ruby/test_gc_compact.rb: Backpatch the URL to the PR Notes: Merged: https://github.com/ruby/ruby/pull/5077 commit 8821a0de0eb412dd61066ca6e5fea0eb331ae546 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-04 14:14:52 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-11-05 00:54:05 +0900 test/ruby/test_gc_compact.rb: Do not run on s390x The compaction tests get stuck randomly on s390x for unknown reason. http://rubyci.s3.amazonaws.com/s390x/ruby-master/log/20211104T030003Z.fail.html.gz ``` [13715/21145] TestGCCompact#test_gc_compact_statstimeout: output interval exceeds 1800.0 seconds. ``` We spent some time to investigate this issue, but we can't figure out why, and it is unlikely that we'll be able to fix it anytime soon. This random failure makes the CI unuseful, so tentatively we suppress this test for a while. A contribution from those who are familiar with s390x is welcome. Notes: Merged: https://github.com/ruby/ruby/pull/5077 commit 539c42ed893b5ce14b6831f5540dbe3424e9a065 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-03 18:54:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-04 23:06:25 +0900 [rubygems/rubygems] Fix typos https://github.com/rubygems/rubygems/commit/f328ef6f77 commit 3d8e1ee40f4aa780243458ee0e527807b948c8fd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-03 19:23:44 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-04 20:51:51 +0900 [ruby/net-http] Warn deprecated old constants https://github.com/ruby/net-http/commit/2a97b4729b commit b49dbe025f27a5024c579d3b690833ae8943d71d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-03 19:17:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-04 20:51:42 +0900 [ruby/net-http] Fix the typo in a constant name https://github.com/ruby/net-http/commit/dada6007bf commit 5f2c4e344dc2f19aab54523ae418800b08adaa61 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-29 20:42:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-04 20:44:04 +0900 [ruby/net-http] Reset keep_alive timer on new connection The last_communicated timestamp is for HTTP persistent connection, to decide whether the current TCP connection may be reused for the subsequent requests or not. Naturally, the timer must be reset if the connection is recreated since it is no longer relevant. https://github.com/ruby/net-http/commit/0a013de42d commit a53aab1273729c10b7e675ce8fd1a711d22c0cd0 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-11-04 12:57:49 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-11-04 12:58:09 +0900 Fix typos [ci skip] commit ee9f7fc2f758da1d16b66430c4142299179f2b3a Author: 180909 <734461790@qq.com> AuthorDate: 2021-11-04 11:17:24 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-04 12:08:12 +0900 fix typo in ChangeLog-1.9.3 Notes: Merged: https://github.com/ruby/ruby/pull/5076 commit e1ae889c9c41c282ae331dd0dd0d2e3e0b153b78 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-03 19:06:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-04 08:58:45 +0900 [ruby/racc] Fix a private method name https://github.com/ruby/racc/commit/1f52571225 commit acf5ccd1855f47e8fcd88de80fa005612adc8268 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-03 19:05:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-04 08:58:44 +0900 [ruby/racc] Fix typo in a local variable name https://github.com/ruby/racc/commit/03d0b86b90 commit 481aa61cb7b527328b7149c8a27c5e7e581b2091 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-04 08:56:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-04 08:56:52 +0900 * 2021-11-04 [ci skip] commit f6330a45f221c23d0b61043f7ca90f98091c1250 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-03 20:10:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-04 08:56:38 +0900 [ruby/rdoc] Fix typos in test method names [ci skip] https://github.com/ruby/rdoc/commit/8386333323 commit 5b8d22ebe60267283a5ca4a1c2ddba507b3d8ba9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-03 18:36:37 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-11-03 23:43:04 +0900 [ruby/openssl] Fix typos [ci skip] https://github.com/ruby/openssl/commit/708ebf2f7a commit b5d9c442675a18c63418ff692a67291ccecfa752 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-03 18:34:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-03 19:55:24 +0900 [ruby/optparse] Fix typo [ci skip] https://github.com/ruby/optparse/commit/0aa18752cf commit e9a13332e838b12a253ed7fda9f8b622a059b6b1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-03 19:11:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-03 19:11:45 +0900 Fix typos [ci skip] commit c5224c71aeba147a111131c16688a208c161ee75 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-30 07:20:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-03 17:42:39 +0900 [rubygems/rubygems] Fix `gem install` vs `gem fetch` inconsistency https://github.com/rubygems/rubygems/commit/b3e985799e commit 9fc7ea64a1deb1e342a54607d16b5cf7eb9ec351 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-03 14:00:51 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-03 14:00:51 +0900 configure.ac: don't use shutdown on emscripten ... to absorb a change on Ubuntu 21.10 commit 4b248e7994e68fa5075f62d4cbfb36514ffd7bfa Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-03 03:52:28 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-03 03:52:28 +0900 string.c: Follow up to ae2359f602bb467ca755eef02d73d361d35eaed7 * Mention `\0` * Make the example of hash replacement meaningful commit a4f834c41e13457627697e2406c9c7309a6f3661 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-03 03:05:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-03 03:05:21 +0900 * 2021-11-03 [ci skip] commit ae2359f602bb467ca755eef02d73d361d35eaed7 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-11-03 03:04:58 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-03 03:04:58 +0900 Enhanced RDoc for String (#5060) Treated: #slice! #sub #sub! #gsub #gsub! Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 8413749ec0edb07eede8a936d5473431a1a40966 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-02 23:41:01 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-02 23:41:01 +0900 ext/socket/extconf.rb: Fix the chech if if_indextoname is available The check had not work because "headers" were not passed. commit e0915ba67964d843832148aeca29a1f8244ca7b1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-02 18:34:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-02 19:17:37 +0900 Fix typos in ChangeLog files [ci skip] commit a2024081805af4e729bea029abb7bbe7c383dce2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-02 18:29:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-02 19:17:37 +0900 Fix typos commit c2dcaa73626ab7a44dcc357d9751d9e2285d56ba Author: Vít Ondruch <vondruch@redhat.com> AuthorDate: 2021-11-02 02:40:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-02 19:12:35 +0900 [rubygems/rubygems] Use OpenSSL constants for error codes. This fixes the following test error testing against OpenSSL 3.x: ~~~ 2) Failure: TestGemRequest#test_verify_certificate_extra_message [/builddir/build/BUILD/ruby-3.0.2/test/rubygems/test_gem_request.rb:358]: <"ERROR: SSL verification error at depth 0: invalid CA certificate (24)\n" + "ERROR: Certificate is an invalid CA certificate\n"> expected but was <"ERROR: SSL verification error at depth 0: invalid CA certificate (79)\n" + "ERROR: Certificate is an invalid CA certificate\n">. ~~~ Where the root cause is this OpenSSL commit: https://github.com/openssl/openssl/commit/1e41dadfa7b9f792ed0f4714a3d3d36f070cf30e It seems that OpenSSL upstream considers the constant value just an implementation detail and therefore this changes the test case to follow the suite. https://github.com/rubygems/rubygems/commit/8acf8e95dc commit 83704a28519632eabe41664d58071381dd1e7159 Author: 180909 <734461790@qq.com> AuthorDate: 2021-11-02 18:18:26 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-02 18:34:17 +0900 remove the repeat 'the' Notes: Merged: https://github.com/ruby/ruby/pull/5069 commit 905b6aaa7c5d327ab14bc7eaec13de5a34a82753 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-11-02 17:28:23 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-11-02 17:28:23 +0900 test/readline/test_readline.rb: Use TERM=vt100 to run the tests Readline seems to emit an escape sequence `"\e[?1034h` at an unpredictable timing when `TERM=xterm` or something. This leads to a noisy random test failure. http://rubyci.s3.amazonaws.com/amazon2/ruby-master/log/20211102T063005Z.fail.html.gz ``` 1) Failure: TestReadline#test_modify_text_in_pre_input_hook [/home/chkbuild/chkbuild/tmp/build/20211102T063005Z/ruby/test/readline/test_readline.rb:404]: <"> hello world\n"> expected but was <"\e[?1034h> hello world\n">. ``` This test is for Ruby's readline extension, not for readline library itself. So here this change force to use "TERM=vt100" to run the tests. commit 38785aa3b9ec7356d6c8ad32242c28fd04ccafcf Author: Carlos Palhares <chjunior@gmail.com> AuthorDate: 2021-10-26 04:25:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-02 10:24:35 +0900 Update licenses= documentation commit 17f8fd656818d62ab18027dc21e463768e1a9b54 Author: Carlos Palhares <chjunior@gmail.com> AuthorDate: 2021-10-26 03:50:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-02 10:24:00 +0900 Allow custom LicenseRef commit b74385e78d36f2d7ecba364e615c3424a55fa169 Author: Josef Šimánek <josef.simanek@gmail.com> AuthorDate: 2021-11-02 01:48:34 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-02 10:22:24 +0900 Remove SimpleCov at all. commit 4a39167260fbd0e8accf42ef7dee27ae73159f8f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-28 17:28:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-11-02 10:19:34 +0900 Removed the related code of `gem server` commit 1d88eec8e349b9571729bef40d93271cf2c789aa Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-02 00:28:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-02 00:28:41 +0900 * 2021-11-02 [ci skip] commit ed0f326e88ab695507d66729e3a4441d6888910b Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-30 16:48:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-02 00:28:28 +0900 [rubygems/rubygems] Leave ":" after MANPATH when not set So that system man pages still work after a gem with man pages overrides it. https://github.com/rubygems/rubygems/commit/1031879b87 commit 2fa51c70683ef8198bddb3332eb62c9239cbde8f Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-11-01 23:54:59 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-11-01 23:54:59 +0900 YJIT: Support kwargs sends with all defaults (#5067) * YJIT: Support kwargs sends with all defaults Previously keyword argument methods were only compiled by YJIT when all keywords were specified in the caller. This adds support for calling methods with keyword arguments when no keyword arguments are specified and all are filled with the defaults. * Remove unused send_iseq_kwargs_none_passed Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit b474049c78dc8d6e24aec4c8073240b61b6869f7 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-11-01 17:23:07 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-11-01 17:48:03 +0900 [ruby/openssl] x509name: improve docs for X509::Name Add docs for X509::Name.parse_openssl and X509::Name.parse_rfc2253, which are currently undocumented despite being widely used. Small changes are also made to #to_s and the class description to recommend using RFC 2253-based methods. Fixes: https://github.com/ruby/openssl/issues/470 https://github.com/ruby/openssl/commit/74041a35d4 commit 1ac7f23bb8568b41e511bbe5dfc85c141cc8b2c2 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-25 00:09:24 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-11-01 17:48:02 +0900 [ruby/openssl] ssl: disallow reading/writing to unstarted SSL socket OpenSSL::SSL::SSLSocket allowed #read and #write to be called before an SSL/TLS handshake is completed. They passed unencrypted data to the underlying socket. This behavior is very odd to have in this library. A verbose mode warning "SSL session is not started yet" was emitted whenever this happened. It also didn't behave well with OpenSSL::Buffering. Let's just get rid of it. Fixes: https://github.com/ruby/openssl/issues/9 https://github.com/ruby/openssl/commit/bf780748b3 commit f0226f9a017e288d1c91f7a1777996804784fb8a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-01 16:07:34 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-01 16:07:34 +0900 Update bundled_gems at 2021-11-01 commit b93a5f96c8f94ff3c96dcb7d13a9afc241987cda Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-11-01 12:50:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-11-01 12:50:23 +0900 bundled_gems: Pull before new commit [ci skip] commit 266c90eaf944aa6d51791177966c10fd44c39e4e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-11-01 02:01:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-01 02:01:52 +0900 * 2021-11-01 [ci skip] commit 4e7e057692578204a6fb2f7170bb8c5803f0f9e0 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-28 16:51:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-11-01 02:01:36 +0900 [rubygems/rubygems] Memoize materialized specs when requiring `bundler/setup` Calling `Bundler.definition.specs` will memoize materialized specs. However, requiring `bundler/setup` will end up materializing the same set of specs, but not memoize them. This change makes things consistent. https://github.com/rubygems/rubygems/commit/e4c2b52824 commit 13a9597c7ca83fced5738e9345660ae6aef87eb7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-31 15:20:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-31 18:27:55 +0900 Argument forwarding definition without parentheses [Bug #18267] Notes: Merged: https://github.com/ruby/ruby/pull/5065 commit 7da6e9b3ecc520c272e06426407626284f0f021c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-31 15:16:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-31 15:16:45 +0900 * 2021-10-31 [ci skip] commit b7f7117bdc78a4a342a57dad1a340b158492ccf3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-31 13:55:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-31 13:55:14 +0900 Rename `in_kwarg` as `in_argdef` as unrelated to keywords Notes: Merged: https://github.com/ruby/ruby/pull/5064 commit 1b59ad57ae2fa4cfccaab97f22f943333080ea0c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-31 13:49:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-31 13:49:21 +0900 Reduce parser stack usage at pattern matching Notes: Merged: https://github.com/ruby/ruby/pull/5064 commit a46c220320778c29612b80ebf2fee28a81eaa380 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-10-30 19:24:41 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-30 19:24:41 +0900 Add `rb_mod_exc_raise` function and replace duplicate code Notes: Merged: https://github.com/ruby/ruby/pull/5063 Merged-By: nobu <nobu@ruby-lang.org> commit 99dad28b7c14fce45653a3573172389cb0424341 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-30 12:26:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-30 12:26:06 +0900 Apply the timeout scale to also separated workers commit 1d0ce1a349bcf836d547d618b346345ae5fca44d Author: Ulysse Buonomo <buonomo.ulysse@gmail.com> AuthorDate: 2021-09-26 00:28:48 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-30 10:23:07 +0900 [DOC] Fix `TracePoint.trace` format [ci skip] Signed-off-by: Ulysse Buonomo <buonomo.ulysse@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4894 commit 4e0747a8a29e4d61744a802aee2c15289c2f9d19 Author: Yuta Saito <kateinoigakukun@gmail.com> AuthorDate: 2021-10-28 21:08:35 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-30 10:18:33 +0900 Allow the thread-model to be switched by configure option This change adds --with-thread=IMPL option to the configure. If not supplied, default implementation for each platform will be used. Notes: Merged: https://github.com/ruby/ruby/pull/5043 commit 8590d61ea9b6b91c89a14a8d0f6829c8a3a8c6c8 Author: Yuta Saito <kateinoigakukun@gmail.com> AuthorDate: 2021-10-28 15:51:40 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-30 10:18:33 +0900 Select including thread impl file at config time Notes: Merged: https://github.com/ruby/ruby/pull/5043 commit ccda26efe7c6acf7edd1262dd2826b8c7008ff75 Author: Yuta Saito <kateinoigakukun@gmail.com> AuthorDate: 2021-10-28 15:48:45 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-30 10:18:33 +0900 Split thread-model config into another ac file This is a first step to allow the thread-model implementation to be switched by configure's option Notes: Merged: https://github.com/ruby/ruby/pull/5043 commit 6c812c6f4e882d3a12ec0a9fabae4d6b86ef729f Author: 180909 <734461790@qq.com> AuthorDate: 2021-10-15 17:42:58 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-30 10:16:17 +0900 add missing http response code in doc Notes: Merged: https://github.com/ruby/ruby/pull/4970 commit 2898805535104c330e1e5c64c8065a108f1f2895 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-13 04:31:50 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-30 10:15:40 +0900 Use rdoc-ref to fix a few links in the README This may break linking on GitHub, but it's more important for the links to work in the documentation generated by rdoc. Fixes [Bug #14743] Notes: Merged: https://github.com/ruby/ruby/pull/4958 commit 09bdb43567b0ae3c46180073043136ec8ec0f6a2 Author: Peter Leitzen <peter@leitzen.de> AuthorDate: 2021-10-19 00:33:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-30 09:59:59 +0900 Clarify docs about magic comments placement Magic comments like `frozen_string_literal` may appear everywhere within the first comment section while `encoding` have to be the first line, or second line after shebang. Notes: Merged: https://github.com/ruby/ruby/pull/4985 commit f634d1ee00e8327f1e91a5af3792c0e30c38c330 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-29 22:51:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-30 06:11:39 +0900 [rubygems/rubygems] Better error when installing a git lockfile and git not present https://github.com/rubygems/rubygems/commit/28f4842196 commit a954f273a89f517de188bdd77e73a80a9c9dad2c Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-10-30 04:59:35 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-10-30 04:59:35 +0900 Cleanup GC.auto_compact spec * Make the supported check more obvious. commit 800dad62970989c0afeb26f1780c53683335a8d9 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-10-30 04:54:17 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-10-30 04:54:17 +0900 Skip GC.auto_compact= spec for platforms not supporting it * See https://github.com/ruby/spec/pull/891 commit 2e14fb7df752573da98be84a686d8bbd210b13d8 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-10-30 03:58:49 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-30 03:58:49 +0900 Add comments about send method types (#5059) Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit 99c60d4b25040d712fbed2ffcc8e1044c5e0fe07 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-30 00:40:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-30 02:22:42 +0900 Get rid of exponential backtracks found by CodeQL Since these regexps are used at build/installation, they are not vulnerabilities. Notes: Merged: https://github.com/ruby/ruby/pull/5056 commit 6cee10d8fd679801abcc2eb1350bb2cd81048f39 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-30 00:58:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-30 00:58:38 +0900 * 2021-10-30 [ci skip] commit d7279f0894d94da41367fe96d9b08ebfee6122d4 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-10-29 22:23:29 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-10-30 00:58:22 +0900 make obj_free return true when it frees an object Previously obj_free returned true when it could not free a slot because of a finalizer, and false when it successfully frees a slot. Notes: Merged: https://github.com/ruby/ruby/pull/5055 commit ed8540ebf400e7574f5a8e5c7e3f1d50f76b263d Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-10-29 18:38:41 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-10-29 22:17:30 +0900 Prefer size pool heap macros over direct access Notes: Merged: https://github.com/ruby/ruby/pull/5054 commit 5e52fd4bd14a668dd7d85a67f824f2667c6d45ea Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-29 21:40:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-29 21:40:11 +0900 Preserve the encoding of message from outer local variable In the case of read-only but referring an unshareable object. commit ec2e04c90d96541502c9b96e66900b4bb01676bb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-29 17:34:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-29 18:53:57 +0900 Preserve the encoding of message from outer local variables Notes: Merged: https://github.com/ruby/ruby/pull/5053 commit 0ad57158c7fb2892094c6a3b0dc306ba0a8a3735 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-29 17:30:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-29 18:53:57 +0900 Remove redundant calls The ArgumentError should raise in `isolate`. Notes: Merged: https://github.com/ruby/ruby/pull/5053 commit 71b370f6dda2f6a1d0216e276399557b55138fcd Author: Josef Šimánek <josef.simanek@gmail.com> AuthorDate: 2021-10-26 08:20:12 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-29 18:00:47 +0900 [rubygems/rubygems] Enforce bundler platform (and default gem) to keep invalid gemspec test compatible with ruby-trunk. https://github.com/rubygems/rubygems/commit/a77061d4e9 commit 9b7afd3cfff791a90ac116fdaadf9df1ab2cde99 Author: Josef Šimánek <josef.simanek@gmail.com> AuthorDate: 2021-10-26 04:00:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-29 18:00:47 +0900 [rubygems/rubygems] Update mirror_probe realword specs to not rely exactly at raised HTTP exception. - this exception differs across Ruby versions. https://github.com/rubygems/rubygems/commit/38c6927a5f commit 0029e0948a80b4d8721c16448e37dd2a0d3df25a Author: Josef Šimánek <josef.simanek@gmail.com> AuthorDate: 2021-10-26 02:17:00 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-29 18:00:46 +0900 [rubygems/rubygems] Install stringio for standalone spec. - previously it was required already by net/http, but it is not anymore using ruby-trunk - https://github.com/ruby/net-http/commit/996d18a43f34557cb0b2fcf41b93131d48a235f4 - https://github.com/ruby/ruby/commit/364044e0909692315bd6c2f0e1d968ede9c2beb8#diff-a1d29a94def02829fd4f9ba591199acf079e028f5a2002a77c363eb01212e112 https://github.com/rubygems/rubygems/commit/be1779655a commit b179166421af52648ab84c0f82580cffef5a80d3 Author: Josef Šimánek <josef.simanek@gmail.com> AuthorDate: 2021-10-24 06:30:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-29 18:00:46 +0900 [rubygems/rubygems] Assert NoMethodError message only partially in downloader_spec. - latest ruby adds error_highlight gem introducing backtrace into exception message https://github.com/rubygems/rubygems/commit/08c70f9dd0 commit fd17ae8205d2835ce75c7b9c091df92673d60430 Author: Josef Šimánek <josef.simanek@gmail.com> AuthorDate: 2021-10-24 06:15:14 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-29 18:00:46 +0900 [rubygems/rubygems] Lock racc version in platform_spec. - latest ruby is shipped with racc 1.6 making this spec failing - this spec is related to platform locking, changing version should not do any harm https://github.com/rubygems/rubygems/commit/3e18b626cb commit 17fb785d1557d35fc9e28af59bdbef50ddbd08d9 Author: Frederik Dudzik <frederik.dudzik@shopify.com> AuthorDate: 2021-10-22 04:23:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-29 18:00:46 +0900 [rubygems/rubygems] Vendor tsort into rubygems So that it loads a consistent version of the library and `rubygems` is never affected by gem activation conflicts related to `tsort`. Getting CI green required updating one `bundler` spec, because `tsort` is no longer loaded by `bundle clean` until after `BUNDLE_PATH` has been changed, so to ensure it is found, it needs to be installed under `BUNDLE_PATH` as well (which will be different from the global system path on Bundler 3, meaning installing `tsort` to the global system path is not enough there). This spec workaround can be removed once we also vendor `tsort` inside `bundler`. https://github.com/rubygems/rubygems/commit/d326880999 commit f45af5f0a427a85fd157bbb1461a7dc33d30eb1b Author: Frederik Dudzik <frederik.dudzik@shopfiy.com> AuthorDate: 2021-10-20 04:35:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-29 17:32:52 +0900 Support gemification of tsort Co-authored-by: Frederik Dudzik <frederik.dudzik@shopify.com> Co-authored-by: Jacques Chester <jacques.chester@shopify.com> commit a9be84db82cea8bf3096167400d2c01b448e7e82 Author: Josef Šimánek <josef.simanek@gmail.com> AuthorDate: 2021-10-24 06:57:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-29 17:22:25 +0900 [rubygems/rubygems] Add new default gems to setup_spec exempts. - error_highlight was introduced at https://github.com/ruby/ruby/commit/e94604966572bb43fc887856d54aa54b8e9f7719 orriginally as error_squiggle later renamed at https://github.com/ruby/ruby/commit/9438c99590f5476a81cee8b4cf2de25084a40b42 - ruby2_keywords was introduced as a placeholder gem only at https://github.com/ruby/ruby/commit/21d2463fbc5094aa2ad92a21c910dccdc928b920 https://github.com/rubygems/rubygems/commit/c9ebe7c7d2 commit 79f9053599da6374bd18ea14df7b2d9af6fef419 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-28 06:46:14 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-29 17:13:18 +0900 [rubygems/rubygems] Unskip inline spec that can pass now on the latest rubies https://github.com/rubygems/rubygems/commit/a81d4421b4 commit 2a90ad7aa5dd434b200f66e20a98eba645b5838b Author: Frederik Dudzik <frederik.dudzik@shopify.com> AuthorDate: 2021-10-23 02:28:30 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-29 17:13:03 +0900 [rubygems/rubygems] use Rubocop Lint/Debugger check rather than custom spec We have a quality spec that check for debugger statements. Rubocop has a cop that tests for the same thing. As such it makes sense to remove the spec and activate the cop. https://github.com/rubygems/rubygems/commit/dc1eb6eec5 commit 27220b2fe4632f499180385e5c4c866e7740e3aa Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-29 11:04:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-29 11:04:58 +0900 Skip CodeQL if only document files changed [ci skip] commit ffd8592ebc45b53eda725de6bddef9cb6f314a92 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-29 10:58:37 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-10-29 10:58:56 +0900 Update stdlib version commit c1228f833c5925c01b2aed1544d9c7fc2421e79b Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-29 01:58:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-29 10:57:46 +0900 vm_core.h: Avoid unaligned access to ic_serial on 32-bit machine This caused Bus error on 32 bit Solaris Notes: Merged: https://github.com/ruby/ruby/pull/5049 commit 92ad520ad0372ad64ece6af6bbb6823e629c5d5b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-28 18:18:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-29 10:57:02 +0900 Merge macOS CIs to reduce concurrency On GitHub Actions, the macOS runners seem much more expensive than Ubuntu, and its limit is the most significant bottlenecks for our CIs. As the "check" tasks usually finish 3 or 4 times faster than "test-bundler-parallel", it will be balanced by running all three "check" tasks sequentially. Notes: Merged: https://github.com/ruby/ruby/pull/5046 commit 96648c509353bb5972bb3a4866ab38e0143e9886 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-29 10:31:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-29 10:32:52 +0900 Mitigate the timeout of tests [ci skip] * The worker timeouts seem working for test-all. * The bundled gems have increased. commit 3e743d31473686a0365e60b3f233707ef58625fe Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-29 07:01:49 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-29 07:01:49 +0900 Cleanup some RDoc (#5050) Mostly adding blank line before and after code segment, to improve compliance with doc\documentation_guide.rdoc. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 9b751db99cb70c1f63e34f92955442167079d330 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-29 01:03:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-29 06:39:57 +0900 Fix script_lines in loaded iseq as nil Notes: Merged: https://github.com/ruby/ruby/pull/5047 commit f8bbd608c9a0f34e44c4b14f7b913da061e71a70 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-29 05:11:11 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-29 05:11:11 +0900 Enhanced RDoc for Numeric (#4994) Treats: #eql? #<+> #floor #ceil #round #truncate #step Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit e53d07f583866e6df7a88963ada33cad68018ebd Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-28 05:10:25 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-29 02:43:02 +0900 Rename ::YJIT to RubyVM::YJIT Since the YJIT Ruby module is CRuby specific and not meant for general use, it should live under RubyVM instead of at top level. Notes: Merged: https://github.com/ruby/ruby/pull/5038 commit d8e97169baf3073366f768a52956c43a1d4b0806 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-28 05:15:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-29 02:40:35 +0900 [rubygems/rubygems] Only delete cached gem when it's corrupted Rescuing all errors here might end up hiding other errors if the deletion of the cached gem itself raises an error for some reason. Let's be more conservative. https://github.com/rubygems/rubygems/commit/3d80dfba08 commit cbf2078a25c3efb12f45b643a636ff7bb4d402b6 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-29 01:10:32 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-29 02:00:06 +0900 need to mark script_lines Notes: Merged: https://github.com/ruby/ruby/pull/5048 commit acb2f86caa384fd7a32d4fe682b9fa719015c1c7 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-29 01:57:29 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-29 01:57:29 +0900 string.c: Add some comments about STR flags commit c75df796d875b02d7b97974c7fe840f0a9de171f Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-10-29 01:54:01 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-10-29 01:54:01 +0900 Update to ruby/spec@21a48d9 commit 3bf36979d888cfa958c22fbf094ad10dabfe624d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-29 00:28:34 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-29 00:28:34 +0900 * 2021-10-29 [ci skip] commit 0a9cbe8562d9a58ec129b34a5bfda20cee3283df Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-29 00:02:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-29 00:22:26 +0900 Skip tests if only document files changed commit d51ba1e1be3ecbe5a02e4463f151e178de1c2a6e Author: osyo-manga <manga.osyo@gmail.com> AuthorDate: 2021-10-28 18:21:27 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-28 18:21:27 +0900 Add changes Enumerable#each_cons and each_slice in NEWS [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/5044 Merged-By: nobu <nobu@ruby-lang.org> commit e76e1d3ce4bf65b3c7f56e09dd5f51b79538df18 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-28 17:42:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-28 17:42:36 +0900 Downloader: retry when RFC 2616 noncompliant dates [ci skip] zlib.net rarely returns the current time in RFC 2616 noncompliant format in the response header, and the checksum does not match in that case (maybe creating the tarball on the fly?). commit 1d666ed50f8b4b3779583381882a0b3edd3cff0e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-28 12:06:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-28 14:45:19 +0900 Fix leap day with UTC offset [Bug #18274] `struct vtm::year` is a Ruby integer instance, but not a C integer type. Notes: Merged: https://github.com/ruby/ruby/pull/5041 commit 77544caaf46503b8e56d5b37703bfd1e9fb3cbc6 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-28 14:31:02 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-28 14:31:02 +0900 add `make runirb` rule it's start irb on built ruby (not installed ruby). commit efcf18f13ecffe5cdbe74cc532246366f60d7858 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-28 13:45:37 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-28 13:45:53 +0900 Update TypeProf to 0.20.2 commit 179aa26f4fe19ceeb9eceb40e23f7b50d65d1b49 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-28 13:14:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-28 13:14:31 +0900 Prune stale worktrees before checking out a new pull request [ci skip] commit d8444593774466d835b982c215035d98bc52f3e0 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-28 09:12:14 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-10-28 09:22:17 +0900 Fix a warning ``` ../gc.c:2342:45: warning: comparison of integers of different signs: 'short' and 'size_t' (aka 'unsigned long') [-Wsign-compare] GC_ASSERT(size_pools[pool_id].slot_size == slot_size); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ``` Add cast to short, because `GC_ASSERT`s in `size_pool_for_size` already use cast to short. commit da22e43ce07040c71bf7ea3aff75b86aae60e7e5 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-28 08:23:18 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-10-28 09:07:22 +0900 Fix a warning ``` ../gc.c:2342:25: warning: array subscript is of type 'char' [-Wchar-subscripts] GC_ASSERT(size_pools[pool_id].slot_size == slot_size); ^~~~~~~~ ``` commit b74bf8dd8800e4d47923b99cf48e18c70ed59dbe Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-28 08:58:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-28 08:58:59 +0900 Follow up the RString change [ci skip] Since 46b66eb9e8e6de2d5750591e532310e8f8599d90, already `ary` has been enclosed in `embed`. commit 30942c19c039b8424f1648ee3bbdcc5e81698ebf Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-28 02:00:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-28 02:00:25 +0900 * 2021-10-28 [ci skip] commit fdbae38546c6cd352e5becfd6c555ea22eb64b96 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-27 04:15:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-28 02:00:05 +0900 YJIT: move --yjit-stats at_exit call into Ruby This change fixes `-v --yjit-stats`. Previously in this situation, YJIT._print_stats wasn't defined as yjit.rb is not evaluated when there is only "-v" and no Ruby code to run. Notes: Merged: https://github.com/ruby/ruby/pull/5022 commit 6875d6d1fa086fcec58c9d888cbacc1e108a0935 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-26 09:28:21 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-28 02:00:05 +0900 Expect multi-line -v output for -DRUBY_DEVEL in tests On -DRUBY_DEVEL builds, `ruby -v` can print extra info about the last commit on a separate line, breaking some tests that expect a single line. Assert only the first line instead. Notes: Merged: https://github.com/ruby/ruby/pull/5022 commit 0d9913e52f3cf3014f2e7a9d9276440a9cd396ea Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-26 09:22:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-28 02:00:05 +0900 Fix indentation in test Notes: Merged: https://github.com/ruby/ruby/pull/5022 commit 367884c65912b3305d18f74b84b7c9e396d14161 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-27 23:57:08 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-27 23:57:08 +0900 Fix yjit_asm_tests.c as C99 compliant (#5033) * rb_bug should be variadic * Prefer ANSI-style prototypes over old K&R-style definitions * Add missing argument types Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit a6104b392ab347c323c93a51fb3b95c3c2cc9e8f Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-10-27 23:55:43 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-27 23:55:43 +0900 YJIT: Support newhash with values (#5029) * YJIT: Implement newhash with values * YJIT: Add test of duphash * Fix compilation on macos/clang Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit 5086c25f6015558877f85c3f1c014780b08fd3ce Author: Vít Ondruch <vondruch@redhat.com> AuthorDate: 2021-10-21 20:02:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-27 19:56:19 +0900 Properly exclude test cases. Lets consider the following scenario: ~~~ irb(#<Test::Unit::AutoRunner::Runner:0x0000560f68afc3c8>):001:0> p suite OpenSSL::TestEC => OpenSSL::TestEC irb(#<Test::Unit::AutoRunner::Runner:0x0000560f68afc3c8>):002:0> p all_test_methods ["test_ECPrivateKey", "test_ECPrivateKey_encrypted", "test_PUBKEY", "test_check_key", "test_derive_key", "test_dh_compute_key", "test_dsa_sign_asn1_FIPS186_3", "test_ec_group", "test_ec_key", "test_ec_point", "test_ec_point_add", "test_ec_point_mul", "test_generate", "test_marshal", "test_sign_verify", "test_sign_verify_raw"] => ["test_ECPrivateKey", "test_ECPrivateKey_encrypted", "test_PUBKEY", "test_check_key", "test_derive_key", "test_dh_compute_key", "test_dsa_sign_asn1_FIPS186_3", "test_ec_group", "test_ec_key", "test_ec_point", "test_ec_point_add", "test_ec_point_mul", "test_generate", "test_marshal", "test_sign_verify", "test_sign_verify_raw"] irb(#<Test::Unit::AutoRunner::Runner:0x0000560f68afc3c8>):003:0> p filter /\A(?=.*)(?!.*(?-mix:(?-mix:memory_leak)|(?-mix:OpenSSL::TestEC.test_check_key)))/ => /\A(?=.*)(?!.*(?-mix:(?-mix:memory_leak)|(?-mix:OpenSSL::TestEC.test_check_key)))/ irb(#<Test::Unit::AutoRunner::Runner:0x0000560f68afc3c8>):004:0> method = "test_check_key" => "test_check_key" ~~~ The intention here is to exclude the `test_check_key` test case. Unfortunately this does not work as expected, because the negative filter is never checked: ~~~ irb(#<Test::Unit::AutoRunner::Runner:0x0000560f68afc3c8>):005:0> filter === method => true irb(#<Test::Unit::AutoRunner::Runner:0x0000560f68afc3c8>):006:0> filter === "#{suite}##{method}" => false irb(#<Test::Unit::AutoRunner::Runner:0x0000560f68afc3c8>):007:0> filter === method || filter === "#{suite}##{method}" => true ~~~ Therefore always filter against the fully qualified method name `#{suite}##{method}`, which should provide the expected result. However, if plain string filter is used, keep checking also only the method name. This resolves [Bug #16936]. Notes: Merged: https://github.com/ruby/ruby/pull/5026 commit 9fc2f5375d2ff4defc7581caf6f65f48f5ee83f5 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-27 16:55:15 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-10-27 16:55:29 +0900 Sort URLs by issue numbers [ci skip] commit 5ff47e0c8a97940a6f77f961ab43ebea87256dfa Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-27 13:19:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-27 16:28:10 +0900 Check old-style definitions Notes: Merged: https://github.com/ruby/ruby/pull/5034 commit 219f54152aaad31b40e19eef4f01b88730734e62 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-27 16:18:18 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-10-27 16:22:04 +0900 Update stdlib versions commit 489e5e3a8293553578757664b338009667a8f204 Author: Satoshi Moris Tagomori <tagomoris@gmail.com> AuthorDate: 2021-08-24 21:00:00 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-27 16:13:43 +0900 the core problem is the Proc is not shareable Notes: Merged: https://github.com/ruby/ruby/pull/4771 commit 9541b3b7c07eeca437857bb5430dbc68d3c04858 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-02-25 15:52:27 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-27 15:44:27 +0900 random.c: simplify Random object deallocation This is a follow-up for commit 265c0022390e ("Do not allocate ractor-local storage in dfree function during GC", 2021-02-09). The comparison with the default rb_random_mt_t is useless in the first place, since it is never equal: no actual Random object is associated with it. [Bug #17653] https://bugs.ruby-lang.org/issues/17653 Notes: Merged: https://github.com/ruby/ruby/pull/4224 commit ed5f8eaf490fee0b186496b82519c5be29ec7e8f Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-26 20:35:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-27 14:47:21 +0900 [rubygems/rubygems] Don't warn when a lockfile is locked to a dev version Even if it's newer than the running versions. Dev versions are not released to rubygems.org, so the warning message suggests a command that doesn't work. And dev versions are currently non deterministic (2.3.0.dev can be many different versions), so the warning doesn't really make sense at the moment. https://github.com/rubygems/rubygems/commit/6f31af27ef commit 4c32fcb84f19a3821c25f7a01ac995af3826d83e Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-27 11:25:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-27 11:29:20 +0900 [ruby/error_highlight] Make the formatter mechanism support Ractor Now the formatter configuration is per Ractor. DefaultFormatter is used if not set. DefaultFormatter#message_for is now a class method to allow sub-Ractors to call the method. https://github.com/ruby/error_highlight/commit/9fbaa8ab7c commit 33844f3096ed15eb1568d6aa333d8040ec9f074a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-27 10:16:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-27 10:16:52 +0900 Prefer ANSI-style prototypes over old K&R-style definitions commit e5319dc9856298f38aa9cdc6ed55e39ad0e8e070 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-10-18 23:23:54 +0900 Commit: Jean Boussier <jean.boussier@gmail.com> CommitDate: 2021-10-27 05:27:30 +0900 pack.c: add an offset argument to unpack and unpack1 [Feature #18254] This is useful to avoid repeatedly copying strings when parsing binary formats commit 717ab0bb2ee63dfe76076e0c9f91fbac3a0de4fd Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-27 04:35:21 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-27 04:35:21 +0900 Add Class#descendants Doesn't include receiver or singleton classes. Implements [Feature #14394] Co-authored-by: fatkodima <fatkodima123@gmail.com> Co-authored-by: Benoit Daloze <eregontp@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4974 Merged-By: jeremyevans <code@jeremyevans.net> commit a4d5ee4f31bf3ff36c1a8c8fe3cda16aa1016b12 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-10-23 03:03:23 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-10-27 02:11:35 +0900 [Bug #18264] Fix memory leak in TracePoint TracePoint leaks memory because it allocates a `rb_tp_t` struct without ever freeing it (it is created with `RUBY_TYPED_NEVER_FREE`). Notes: Merged: https://github.com/ruby/ruby/pull/5008 commit f180fa6ca3f0972413ed37a72cde7b202a7ba85f Author: Steven Nunez <octosteve@github.com> AuthorDate: 2021-10-27 00:51:35 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-10-27 02:10:49 +0900 Fix Typo Notes: Merged: https://github.com/ruby/ruby/pull/5028 commit 66e318503feb480a718ece7a18d743a283e2104f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-27 02:05:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-27 02:05:22 +0900 * 2021-10-27 [ci skip] commit 26353c75a94469bad7a0e6a6aa81d968e64952d5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-27 00:50:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-27 02:05:06 +0900 Embed bare `double` if `sizeof(double) == sizeof(VALUE)` Notes: Merged: https://github.com/ruby/ruby/pull/5027 commit e3a783b14191fef175c9a59996afdc744c8edc4c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-26 23:39:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-27 02:05:06 +0900 Align `RFloat` at VALUE boundary Notes: Merged: https://github.com/ruby/ruby/pull/5027 commit afdca0e780760e008e26f4c9fc7262a0a4fe56bb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-26 20:14:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-26 20:17:00 +0900 Fix unaligned access to `double` in RFloat commit e1ecda297e1b184d824fb4045169a20bba98a9ea Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-26 20:12:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-26 20:17:00 +0900 Make new object for negated float as `Float` is always frozen now commit 37395ffa05f04f90e34f18c6d59c9bd9ec1df292 Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-10-26 19:34:27 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-10-26 19:36:52 +0900 Make the metaclass of Refinement explicitly Otherwise, singleton methods of Module are not inherited unless Refinement.singleton_class is called. commit 8a49c7e4812a3f6d027dac1a574f47f125886935 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-26 11:55:42 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-26 17:06:57 +0900 Revert "introduce check code for mysterious EBADF" This reverts commit 7864efa105921eb3900c843126f2e0db02b9c6ae. commit d1424f7f7e0903c4b9c676edda02ecddd4333fef Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-26 11:55:36 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-26 17:06:57 +0900 Revert "check other IO#close calls" This reverts commit a1c4cab11d613d7df037a81a770ee44a23a2e9be. commit 049e1f8560d2f5c06afa6b8fbcf7d4c8e0132561 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-25 10:03:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-26 14:43:12 +0900 Fix typo commit 5c2b6441660cdabf1efc745c25f2b1a41bb3b087 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-26 11:35:57 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-26 11:39:52 +0900 fix random EBADF problem ```ruby r, w = IO.pipe r.close IO.for_fd(w.fileno).close ``` This code closes a file descriptor `w.fileno`, but `w` doesn't know the closing. Another code can open same file descriptor with opening file (`f`). After that, the `w` will GCed and `w.fileno` is closed again, and `f.fileno` is closed too, so IO operations for `f` (`f.close`) will cause EBADF. To fix this issue, do this test in another process. commit 7d4c59203ffe16a7409358f69a48768a9e6d0fb1 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-10-26 09:30:42 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-26 09:30:42 +0900 improve doc coverage [ci skip] Just split the comment for struct's one and array's one. commit a0029ae2b68cec3a4cb298967afbc9192d331c10 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-10-26 09:24:56 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-26 09:30:12 +0900 just another evidence that @shyouhei is an idiot [ci skip] (gdb) ptype/o struct RString /* offset | size */ type = struct RString { /* 0 | 16 */ struct RBasic { /* 0 | 8 */ VALUE flags; /* 8 | 8 */ const VALUE klass; /* total size (bytes): 16 */ } basic; /* 16 | 24 */ union { /* 24 */ struct { /* 16 | 8 */ long len; /* 24 | 8 */ char *ptr; /* 32 | 8 */ union { /* 8 */ long capa; /* 8 */ VALUE shared; /* total size (bytes): 8 */ } aux; /* total size (bytes): 24 */ } heap; /* 24 */ struct { /* 16 | 24 */ char ary[24]; /* total size (bytes): 24 */ } embed; /* XXX 8-byte padding */ /* total size (bytes): 24 */ } as; /* total size (bytes): 40 */ } (gdb) commit b49ec78fd02836d4db4807fcdc86886138927c70 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-10-25 14:05:30 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-26 09:05:46 +0900 more on eliminating $make Notes: Merged: https://github.com/ruby/ruby/pull/5005 commit b682f763397abbbee3a47569d36fcb49127a3e0a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-10-25 13:39:27 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-26 09:05:46 +0900 GNUMAKEFLAGS is too new for mac It is relatively well known that mac does not update its command line tools, and make is no exception. They ship GNU make 3.x, which didn't yet implemented GNUMAKEFLAGS. Resort to MAKEFLAGS there. Notes: Merged: https://github.com/ruby/ruby/pull/5005 commit 748688a63d8ab621d4b2ab91cbccb5cad2c7797c Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-10-22 11:15:10 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-26 09:05:46 +0900 .github: use GNUMAKEFLAGS instead of JOBS A bit readable to me. See also https://github.com/ruby/ruby/pull/4880 Notes: Merged: https://github.com/ruby/ruby/pull/5005 commit 92ec010595bed29567fc08dd4d52d4c4518f0fd4 Author: Jenny Shen <jenny.shen@shopify.com> AuthorDate: 2021-10-07 06:39:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-26 08:01:55 +0900 [rubygems/rubygems] Add support to build and sign certificates with multiple key algorithms https://github.com/rubygems/rubygems/commit/967876f15d Co-Authored-By: Frederik Dudzik <frederik.dudzik@shopify.com> commit 10fe8495cd9568be79b4c254742eb0f667e84988 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-10-26 03:53:22 +0900 Commit: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> CommitDate: 2021-10-26 03:53:22 +0900 Update YJIT code owners. Revert accidental commit. commit 722d43ad5e2685c4ca6edf090755eeca1a8cc8ce Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-10-26 03:29:36 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-26 03:29:36 +0900 Test PR commit cf52a2c9ba0e2add78f50c32dfadda8e7808d2e9 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-10-26 03:28:39 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-26 03:28:39 +0900 Add code owners for YJIT sources Code owners are automatically tagged as reviewers on pull requests commit a5b6598192c30187b19b892af3110a46f6a70d76 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-08-26 23:06:32 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-10-26 02:26:23 +0900 [Feature #18239] Implement VWA for strings This commit adds support for embedded strings with variable capacity and uses Variable Width Allocation to allocate strings. Notes: Merged: https://github.com/ruby/ruby/pull/4933 commit 6374be5a8188ff5ed2c70b9f1d76672c87a0eda7 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-08-03 03:22:47 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-10-26 02:26:23 +0900 [Feature #18239] Refactor RVARGC alloc functions The allocation functions no longer assume that one RVALUE needs to be allocated. Notes: Merged: https://github.com/ruby/ruby/pull/4933 commit 46b66eb9e8e6de2d5750591e532310e8f8599d90 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-08-03 01:16:24 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-10-26 02:26:23 +0900 [Feature #18239] Add struct for embedded strings Notes: Merged: https://github.com/ruby/ruby/pull/4933 commit 09fa773e04f183e5eb685f07e174efa2cf77f9dc Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-26 01:58:01 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-26 01:58:01 +0900 ast.c: Use kept script_lines data instead of re-opening the source file (#5019) ast.c: Use kept script_lines data instead of re-open the source file Notes: Merged-By: mame <mame@ruby-lang.org> commit 33113c6b64b9017e8b31b6c5e9cbcd7bdf30f05a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-26 01:51:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-26 01:51:20 +0900 * 2021-10-26 [ci skip] commit 557fa389155810f38f111c00a649c313a639dbb5 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-10-26 00:02:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-26 01:51:05 +0900 [rubygems/rubygems] Fix Bundler::Digest#sha1 on big-endian systems As noticed by @nobu https://github.com/rubygems/rubygems/pull/4989#discussion_r735674633 From wikipedia: https://en.wikipedia.org/wiki/SHA-1#SHA-1_pseudocode > append ml, the original message length in bits, as a 64-bit big-endian integer. `Q` is native endian, so little-endian on most modern hardware. The original code from RubyDigest reverses the bytes: https://github.com/Solistra/ruby-digest/blob/d15f906caf09171f897efc74645c9e31373d7fd1/lib/ruby_digest.rb#L521 But that makes the code non-portable, the correct way is to directly ask for a big-endian representation. https://github.com/rubygems/rubygems/commit/ba2be01ea4 commit 244c98e635a01cc7cfde9e24ed4b44413e6c3e75 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-25 23:45:22 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-25 23:45:22 +0900 Strip out YJIT at build time when unsupported or disabled (#5003) In an effort to minimize build issues on non x64 platforms, we can decide at build time to not build the bulk of YJIT. This should fix obscure build errors like this one on riscv64: yjit_asm.c:137:(.text+0x3fa): relocation truncated to fit: R_RISCV_PCREL_HI20 against `alloc_exec_mem' We also don't need to bulid YJIT on `--disable-jit-support` builds. One wrinkle to this is that the YJIT Ruby module will not be defined when YJIT is stripped from the build. I think that's a fair change as it's only meant to be used for YJIT development. Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit e943511455acfd70dc3bd085038969a11802d688 Author: Ian C. Anderson <ian@iancanderson.com> AuthorDate: 2021-10-25 23:40:33 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-25 23:40:33 +0900 YJIT: Implement duphash (#5009) `duphash` showed up in the top-20 most frequent exit ops for @jhawthorn's benchmark that renders github.com/about The implementation was almost exactly the same as `duparray` Co-authored-by: John Hawthorn <john@hawthorn.email> Co-authored-by: John Hawthorn <john@hawthorn.email> Notes: Merged-By: maximecb <maximecb@ruby-lang.org> commit 1c0c8d5da2abc84a56ca4b66b73e0c262df0fbbe Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-25 21:30:16 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-25 21:30:16 +0900 test/ruby/test_jit.rb: Add a test for checkmatch insn commit 5bcef26d24fdd5756d2678aca03190d03a82ad9a Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-25 21:28:44 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-25 21:28:44 +0900 test/ruby/test_jit.rb: Print a hint at exit of the original process Otherwise, the hint is printed whenever fork is called. http://rubyci.s3.amazonaws.com/debian9/ruby-master/log/20211025T093004Z.log.html.gz ``` [20244/21156] TestThread#test_fork_while_lockedyou may want to add tests for following insns, when you have a chance: checkmatch you may want to add tests for following insns, when you have a chance: checkmatch you may want to add tests for following insns, when you have a chance: checkmatch = 0.19 s ``` commit 9d286180916e23bb2d9e6bf43cd75f439a1939ce Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-11 00:21:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:52 +0900 [rubygems/rubygems] Avoid loading the `digest` gem unnecessarily OpenSSL includes what we need. https://github.com/rubygems/rubygems/commit/955f3b72ca commit a959342abf3c77fc5f08a91107f5f27cfe1766a7 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-11 19:43:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:52 +0900 [rubygems/rubygems] Remove comment that seems no longer accurate We require things inline or autoload them for efficiency and to avoid as much as possible conflicting with user's choice of gems. But I removed the require and observed no deadlocks when activating gems. https://github.com/rubygems/rubygems/commit/7d6333e842 commit 9fbf3a1f6fbe75fb971692469fb708c9b6ae6c2e Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-11 22:42:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:51 +0900 Unify issue template and ISSUES.md document Some crucial information to ease maintainers work, like the advice of upgrading rubygems and bundler, was one step away from the issue template, making it easier for some users to miss. Now all relevant information is written directly in the bug report template. commit b4a43e4f577807303b0e465a27eefff2793fe3ea Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-14 19:03:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:51 +0900 [rubygems/rubygems] Show proper error when previous installation of gem can't be deleted Instead of showing the bug report template with an error at a random place. https://github.com/rubygems/rubygems/commit/882ad3ab57 commit 00412be20469407cd6da813eab6bfa5b63cd945f Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-14 19:03:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:51 +0900 [rubygems/rubygems] Show a proper error if gem path is not writable Instead of showing the bug report place with an error at a randome place. https://github.com/rubygems/rubygems/commit/241854ce73 commit f6d190950055f8700b144ab075971edd08754d52 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-14 19:10:22 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:51 +0900 [rubygems/rubygems] Catch up with recent error message modification https://github.com/rubygems/rubygems/commit/ae374c1f31 commit 7073870dfaa31581b2ff6787224712ad6bdd2f15 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-22 03:28:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:51 +0900 [rubygems/rubygems] Improve readability by splitting updating the cache and searching it https://github.com/rubygems/rubygems/commit/d0df25bb0f commit f7f85c1febd23eec04f78bc461b21ea604a865a9 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-21 07:04:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:51 +0900 [rubygems/rubygems] Manage global gem cache directly Previously, it was maintained in sync with the standard cache. That was less efficient, and it caused some error messages to point to non existent files. https://github.com/rubygems/rubygems/commit/931f8cb8a9 commit 4fc29d17b36e12311c1fe1d2f63e463bbf8ad725 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-21 19:38:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:51 +0900 [rubygems/rubygems] Cached gem path resolution should consider default gems https://github.com/rubygems/rubygems/commit/83b2b845b3 commit 4edcda67b321de12d2fdc5005ff1230d8d0a0c3f Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-21 04:15:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:51 +0900 [rubygems/rubygems] Simplify gem downloading inside bundler We can skip most stuff in `Gem::RemoteFetcher#download`, and use `Gem::RemoteFetcher#update_cache_path` directly. This has the benefit of allowing us to remove some workarounds to support several rubygems versions, but also allows us to pass the target folder where the gem should be downloaded directly and skip the logic inside `Gem::RemoteFetcher#download` to infer the cache path. This will be useful later to fix some issues with the `global_gem_cache` feature flag. https://github.com/rubygems/rubygems/commit/8fe74a77e4 commit 03a563b47e0f021f3b7a8dc14b162068071b4d53 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-21 04:06:18 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:51 +0900 [rubygems/rubygems] Remove unused `let` https://github.com/rubygems/rubygems/commit/7e1316e454 commit 57d990ddab2ea59cc183f7ba239784a614f42c0f Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-21 04:01:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:51 +0900 [rubygems/rubygems] Raise original exception https://github.com/rubygems/rubygems/commit/3c93b9fd21 commit 7b821bc9b5c4505d4202536d6cbaa6df60c7e737 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-21 03:58:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:50 +0900 [rubygems/rubygems] Add missing requires These methods rescue a constant defined by `rubygems/remote_fetcher`, so they should technically require it. The require is provided by `gem_remote_fetcher` anyways but I was running a unit spec that stubs that method, so I was getting an undefined constant error hiding another error. https://github.com/rubygems/rubygems/commit/8bedae4034 commit 9b1b1718666ab73bb2a9200a074b8c836cde8b30 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-21 02:27:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:50 +0900 [rubygems/rubygems] Use `Gem::Specification#file_name` consistently https://github.com/rubygems/rubygems/commit/13b933f49a commit 38542cfffc02216eb9de7e470f3e1574dee1aeea Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-21 02:02:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:50 +0900 [rubygems/rubygems] Extract a `default_cache_path` helper https://github.com/rubygems/rubygems/commit/8319305d58 commit edc1813190b83169e4cf1ed9cc1419ccb5c3b594 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-21 01:49:34 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:48:50 +0900 [rubygems/rubygems] Small refactor Extract final cache path to a variable and pass that to `download_gem`. It actually fits better the parameters documentation since it's the final directory where the downloaded gem will be placed. https://github.com/rubygems/rubygems/commit/1429db6a04 commit 13068ebe32a7b8a1a9bd4fc2d5f157880b374e1d Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-25 20:47:19 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-25 20:47:19 +0900 process.c: Add Process._fork (#5017) * process.c: Add Process._fork This API is supposed for application monitoring libraries to hook fork event. [Feature #17795] Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged-By: mame <mame@ruby-lang.org> commit 1eac38c6093a03688c2f046cfb6a16028b9395f5 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-25 20:45:05 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-25 20:45:05 +0900 test/ruby/test_rubyvm.rb: prevent "assigned but unused variable" warnings http://rubyci.s3.amazonaws.com/centos7/ruby-master/log/20211025T093004Z.log.html.gz ``` [ 4896/21159] TestRubyVM#test_keep_script_lines(none):3: warning: assigned but unused variable - b (none):6: warning: assigned but unused variable - c (none):1: warning: assigned but unused variable - a <compiled>:3: warning: assigned but unused variable - b (none):3: warning: assigned but unused variable - b (none):6: warning: assigned but unused variable - c (none):1: warning: assigned but unused variable - a <compiled>:3: warning: assigned but unused variable - b ``` commit 7da9c25aa48c5783f8c9ad9ca4a72dd246871a98 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-25 20:44:29 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-25 20:44:29 +0900 test/ruby/test_refinement.rb: Prevent deprecation warnings during test http://rubyci.s3.amazonaws.com/centos7/ruby-master/log/20211025T093004Z.log.html.gz ``` /home/chkbuild/chkbuild/tmp/build/20211025T093004Z/ruby/test/ruby/test_refinement.rb:777: warning: Refinement#include is deprecated and will be removed in Ruby 3.2 /home/chkbuild/chkbuild/tmp/build/20211025T093004Z/ruby/test/ruby/test_refinement.rb:840: warning: Refinement#prepend is deprecated and will be removed in Ruby 3.2 /home/chkbuild/chkbuild/tmp/build/20211025T093004Z/ruby/test/ruby/test_refinement.rb:2620: warning: Refinement#include is deprecated and will be removed in Ruby 3.2 ``` commit 00c7b91f9103fa8bc38ef294f097160c2ce92c56 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-25 20:43:42 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-25 20:43:42 +0900 test/ruby/test_marshal.rb: Prevent "assigned but unused variable" warning http://rubyci.s3.amazonaws.com/centos7/ruby-master/log/20211025T093004Z.log.html.gz ``` /home/chkbuild/chkbuild/tmp/build/20211025T093004Z/ruby/test/ruby/test_marshal.rb:925: warning: assigned but unused variable - objects ``` commit 5af3f7f3574c16ec76fb44b21beec17a74f4417a Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-10-18 17:12:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-25 20:24:32 +0900 [rubygems/rubygems] Vendor a pure ruby implementation of SHA1 This allows `Source::Git` to no longer load the `digest` gem as it is causing issues on Ruby 3.1. https://github.com/rubygems/rubygems/pull/4989/commits/c19a9f2ff7 commit 86e3d77abb8a033650937710d1ab009e98647494 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-25 20:00:51 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-25 20:00:51 +0900 Make Coverage suspendable (#4856) * Make Coverage suspendable Add `Coverage.suspend`, `Coverage.resume` and some methods. [Feature #18176] [ruby-core:105321] Notes: Merged-By: mame <mame@ruby-lang.org> commit 54379e3d7d297cc8b3ea61ad98c6cc337dc04882 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-25 16:05:24 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-25 19:42:42 +0900 Update TypeProf to 0.20.1 Notes: Merged: https://github.com/ruby/ruby/pull/5018 commit 7394514bde24af482d4db5a89eb3fcd28f87ac11 Author: Daniel Colson <danieljamescolson@gmail.com> AuthorDate: 2021-10-23 04:43:27 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-25 19:02:50 +0900 [rubygems/rubygems] Simplify and remove some unused code When `install_with_build_args` was added in https://github.com/rubygems/rubygems/commit/be96283985cb49c023112117b2ac2dea0d9becf1, there were two versions of the method: the default version in the base class that still used the locking `with_build_args`, and an override in the `Future` class (for Rubygems 2.0 and up) that yielded without calling `with_build_args`. The `with_build_args` version of the method was removed in https://github.com/rubygems/rubygems/commit/8a5b71e3e8072c64a0f3cab838ba330f5e87e37a while removing a bunch of the old Rubygems compatibility code. This commit removes `with_build_args`, since it no longer appears to be used (the build args are passed as a keyword argument to `spec.source.install` instead, since https://github.com/rubygems/rubygems/commit/be96283985cb49c023112117b2ac2dea0d9becf1). The commit also removes `install_with_build_args` and the conditional around it, since the method wasn't doing anything different than `install`, and it had a comment that was no longer accurate. https://github.com/rubygems/rubygems/commit/ba543a60eb commit a1c4cab11d613d7df037a81a770ee44a23a2e9be Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-25 17:34:35 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-25 17:38:23 +0900 check other IO#close calls http://ci.rvm.jp/results/trunk@ruby-iga/3690333 > tool/lib/test/unit/parallel.rb:68:in `close': Bad file descriptor (Errno::EBADF) commit 7864efa105921eb3900c843126f2e0db02b9c6ae Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-25 15:43:46 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-25 15:47:09 +0900 introduce check code for mysterious EBADF parallel test randomly failed with EBADF. This patch checks which suite causes this error. ex) http://ci.rvm.jp/results/trunk@ruby-iga/3690219 ``` /tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:88:in `close': Bad file descriptor (Errno::EBADF) /tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:88:in `ensure in _run_suite' /tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:89:in `_run_suite' /tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:30:in `block in _run_suites' /tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:29:in `map' /tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:29:in `_run_suites' /tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:128:in `run' /tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:211:in `<main>' ``` commit b74f9d656a028430d942fb609f79c4027f0549fa Author: Tanaka Akira <akr@fsij.org> AuthorDate: 2021-10-25 12:25:13 +0900 Commit: Tanaka Akira <akr@fsij.org> CommitDate: 2021-10-25 12:25:13 +0900 add example for buffer: argument of pack. commit 66d09501c2476c55664135209e657477a626afb6 Author: 180909 <734461790@qq.com> AuthorDate: 2021-10-25 12:15:55 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-25 12:15:55 +0900 fix typo [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4972 Merged-By: nobu <nobu@ruby-lang.org> commit dfb47bbd17c3c2b8ce17dbafaf62df023b0224b2 Author: TSUYUSATO Kitsune <make.just.on@gmail.com> AuthorDate: 2021-10-25 12:13:44 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-25 12:13:44 +0900 Fix `Enumerable#each_cons` and `Enumerable#each_slice` to return a receiver Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com> Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/1509 Merged-By: nobu <nobu@ruby-lang.org> commit aa09c8dae0ac2901264f2882467fac3083b52f32 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-25 08:38:44 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-10-25 08:38:44 +0900 Fix links [ci skip] commit 4fb71575e270092770951e6a69bf006c71fadb55 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-25 00:55:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-25 01:04:51 +0900 [DOC] Fix code markup [ci skip] Code markup in RDoc must not be concatenated with anothr word. commit df4445128b52196488e3a6b3f7d8c04d0515979d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-25 00:43:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-25 00:43:45 +0900 * 2021-10-25 [ci skip] commit e10dfdf6234ec4f0a11eeee91132d39cfaf6fd24 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-23 19:24:02 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:48 +0900 [ruby/openssl] bn: expand BIGNUM_RAND and BIGNUM_RAND_RANGE macros Now that BN.pseudo_rand{,_range} are alias, those macros are only used once. Let's expand the macros for better readability. https://github.com/ruby/openssl/commit/7c2fc00dee commit e19186707a78e6e739646dac1430dc3066cf9bad Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-03-21 00:20:04 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:48 +0900 [ruby/openssl] bn: make BN.pseudo_rand{,_range} an alias of BN.rand{,_range} BN_pseudo_rand() and BN_pseudo_rand_range() are deprecated in OpenSSL 3.0. Since they are identical to their non-'pseudo' version anyway, let's make them alias. https://github.com/ruby/openssl/commit/2d34e85ddf commit 1b5ccc8a0c27273d2f944f9914bcbdda3ad803f7 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-05-17 16:18:45 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:47 +0900 [ruby/openssl] pkey, ssl: use EVP_PKEY_eq() instead of EVP_PKEY_cmp() OpenSSL 3.0 renamed EVP_PKEY_cmp() to EVP_PKEY_eq() because that was a confusing name. https://github.com/ruby/openssl/commit/d42bd7fcdb commit ee7131614c584db6e469865e19a5842e0e48680a Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-02-22 05:52:01 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:47 +0900 [ruby/openssl] pkey/ec: use EC_GROUP_free() instead of EC_GROUP_clear_free() EC_GROUP_clear_free() is deprecated in OpenSSL 3.0. EC_GROUP does not include any sensitive data, so we can safely use EC_GROUP_free() instead. https://github.com/ruby/openssl/commit/e93a5fdffc commit 555788b62216996686387cdabd54f7fe10161d28 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-06-30 16:12:14 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:46 +0900 [ruby/openssl] pkey/ec: deprecate PKey::EC::Point#make_affine! and make it a no-op It converts the internal representation of the point object to the affine coordinate system. However, it had no real use case because the difference in the internal representation has not been visible from Ruby/OpenSSL at all. EC_POINT_make_affine() is marked as deprecated in OpenSSL 3.0. https://github.com/ruby/openssl/commit/e2cc81fef7 commit 16272d9ae98dfa8296d477a8e255d35f4a3d29e9 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-06-22 18:50:17 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:46 +0900 [ruby/openssl] hmac: use EVP_MD_CTX_get_pkey_ctx() instead of EVP_MD_CTX_pkey_ctx() OpenSSL 3.0 renamed EVP_MD_CTX_pkey_ctx() to include "get" in the function name. Adjust compatibility macro so that we can use the new function name for all OpenSSL 1.0.2-3.0. https://github.com/ruby/openssl/commit/c106d888c6 commit 040387d265e405c769867dbedd47c723185bc944 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-22 13:57:47 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:45 +0900 [ruby/openssl] digest: use EVP_MD_CTX_get0_md() instead of EVP_MD_CTX_md() if exists The function was renamed in OpenSSL 3.0 due to the change of the lifetime of EVP_MD objects. They are no longer necessarily statically allocated and can be reference-counted -- when an EVP_MD_CTX is free'd, the associated EVP_MD can also become inaccessible. Currently Ruby/OpenSSL only handles builtin algorithms, so no special handling is needed except for adapting to the rename. https://github.com/ruby/openssl/commit/0a253027e6 commit cfa4fa636efefddd70df82f1b0bf0d1c96bf1cf7 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-02-22 06:37:00 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:45 +0900 [ruby/openssl] bn: use BN_check_prime() in OpenSSL::BN#prime{,_fasttest}? In OpenSSL 3.0, BN_is_prime_ex() and BN_is_prime_fasttest_ex() are deprecated in favor of BN_check_prime(). https://github.com/ruby/openssl/commit/90d51ef510 commit fa24e7a57e15900c01fa84d7ff5b0905f6bb6092 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-03-19 19:18:25 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:44 +0900 [ruby/openssl] ssl: use SSL_get_rbio() to check if SSL is started or not Use SSL_get_rbio() instead of SSL_get_fd(). SSL_get_fd() internally calls SSL_get_rbio() and it's enough for our purpose. In OpenSSL 3.0, SSL_get_fd() leaves an entry in the OpenSSL error queue if BIO has not been set up yet, and we would have to clean it up. https://github.com/ruby/openssl/commit/e95ee24867 commit d5aa3fcae68483b0458fbe9f1b64bd0256f9673c Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-02-22 05:47:58 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:44 +0900 [ruby/openssl] ssl: use SSL_CTX_load_verify_{file,dir}() if available SSL_CTX_load_verify_locations() is deprecated in OpenSSL 3.0 and replaced with those two separate functions. Use them if they exist. https://github.com/ruby/openssl/commit/5375a55ffc commit 19ef7082baa5097e3d4cddb68c98ea1ec8e34a88 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-02-22 05:37:01 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:43 +0900 [ruby/openssl] ts: use TS_VERIFY_CTX_set_certs instead of TS_VERIFY_CTS_set_certs OpenSSL 3.0 fixed the typo in the function name and replaced the current 'CTS' version with a macro. https://github.com/ruby/openssl/commit/2be6779b08 commit 3d16401508c3efb44eefbb2d4dfb68b850407397 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-02-22 18:58:29 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:43 +0900 [ruby/openssl] ossl.c: use ERR_get_error_all() if available OpenSSL 3.0 deprecated ERR_get_error_line_data() in favor of ERR_get_error_all(), as part of the error queue structure changes. https://github.com/ruby/openssl/commit/8e98d2ecc8 commit 32d49e93cf958adf85eb12fa361f49f26d9559b7 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-09-27 13:32:03 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-25 00:40:42 +0900 [ruby/openssl] ext/openssl/ossl.h: add helper macros for OpenSSL/LibreSSL versions Add following convenient macros: - OSSL_IS_LIBRESSL - OSSL_OPENSSL_PREREQ(maj, min, pat) - OSSL_LIBRESSL_PREREQ(maj, min, pat) https://github.com/ruby/openssl/commit/00abee791d commit 1ea53253606600c4f115d9acde9e858fd74f4851 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-24 18:36:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-24 19:35:29 +0900 Reduce YJIT runs on Ubuntu [ci skip] commit fe77a0339284b9ae5edf8f1365210545c5ba5298 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-24 18:35:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-24 19:35:28 +0900 Use `${{}}` for if statement commit 408605aae7bd7b64f5fabd3e8706a61ee25ff55b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-24 17:47:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-24 19:24:50 +0900 EWOULDBLOCK is always defined since 74ba9c248890 Notes: Merged: https://github.com/ruby/ruby/pull/5015 commit 3d7c92df089226f3608757c45da1a4403b1dcee9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-24 17:42:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-24 19:24:50 +0900 Extract io_again_p to check if EAGAIN or EWOULDBLOCK Notes: Merged: https://github.com/ruby/ruby/pull/5015 commit 9822ebee5b35d9b6581ed64ac3b4bb05c972eab3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-10-25 18:32:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-24 19:24:50 +0900 suppress warnings by parenthesizing unclear expressions Notes: Merged: https://github.com/ruby/ruby/pull/5015 commit 7459a32af3e89ea9990efb4d76bfdc869e480ffe Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-10-25 18:32:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-24 19:24:50 +0900 suppress warnings for probable NULL dererefences Notes: Merged: https://github.com/ruby/ruby/pull/5015 commit e5c2bf55d0c5b71227284a577301b3c48894032e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-23 01:43:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-24 19:24:50 +0900 Suppress sign-compare warning Notes: Merged: https://github.com/ruby/ruby/pull/5015 commit b69c38e62e0b7006d2c345a88a400f2fe2cb80b9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-23 01:38:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-24 17:50:35 +0900 Refactor associated pointer Notes: Merged: https://github.com/ruby/ruby/pull/5014 commit 8d6e9b66580278900020abf77dc1aa6427a060f9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2016-06-05 20:41:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-24 16:20:34 +0900 Suppress false warning for freed pointer commit 1be2875e1d8dcd9854a3eec127861f351bc2f168 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-24 09:25:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-24 09:25:20 +0900 [flori/json] Bump version to v2.6.1 https://github.com/flori/json/commit/2db5894cfa commit 4cbce7943816ee5d37e20ef2506880e016b88916 Author: Josef Šimánek <josef.simanek@gmail.com> AuthorDate: 2021-10-24 08:56:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-24 09:25:01 +0900 [flori/json] Bump JSON::VERSION to 2.6.0. https://github.com/flori/json/commit/da94d9f059 commit d04d6bbc6cf14a4e3ca292095a00c1956e63d9fb Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-06 18:51:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-24 08:49:14 +0900 [ruby/psych] Prefer `require_relative` for internal requires https://github.com/ruby/psych/commit/a0f55ee85a commit 48cd633094e5e57d1120c5d81afdbeb2290837b3 Author: Josef Šimánek <josef.simanek@gmail.com> AuthorDate: 2021-10-24 08:24:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-24 08:48:40 +0900 [ruby/psych] Add stringio as a dependency. https://github.com/ruby/psych/commit/86e3049579 commit bd65757f394255ceeb2c958e87f862139dd37e7b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-24 05:58:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-24 05:58:05 +0900 * 2021-10-24 [ci skip] commit 53dcb3541bbe454cfad9ee8c711ef6ca565d64ce Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-10-23 06:41:54 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:48 +0900 NEWS: StringScanner 3.0.1 is released Notes: Merged: https://github.com/ruby/ruby/pull/5011 commit c0c43276a10cd6ebb8b0f6d820c6811bb6aa012c Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-09-04 04:18:31 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:48 +0900 [ruby/strscan] Bump version If we use the same version as the default strscan gem in Ruby, "gem install" doesn't extract .gem. It fails "gem install" because "gem install" can't find ext/strscan/ to be built. https://github.com/ruby/strscan/commit/3ceafa6cdc Notes: Merged: https://github.com/ruby/ruby/pull/5011 commit 76e277a08189d8b68454267887b40b2efb5c2e38 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-10-23 06:27:13 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:33 +0900 NEWS: CSV 3.2.1 is released Notes: Merged: https://github.com/ruby/ruby/pull/5010 commit ee948fc1b4cb1ad382beee709008bb93b8f6ba75 Author: rm155 <86454369+rm155@users.noreply.github.com> AuthorDate: 2021-10-11 11:21:42 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:33 +0900 [ruby/csv] Add support for Ractor (https://github.com/ruby/csv/pull/218) https://github.com/ruby/csv/commit/a802690e11 Notes: Merged: https://github.com/ruby/ruby/pull/5010 commit 274882be62e5996d804e87103586feaeec381820 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-10-23 06:26:03 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:33 +0900 [ruby/csv] Use test-unit gem instead of test-framework of ruby repo https://github.com/ruby/csv/commit/9c4add0d31 Notes: Merged: https://github.com/ruby/ruby/pull/5010 commit 8fde54a3b5073d10aff10d359a3f10818d57ea2c Author: Anthony Hernandez <roguegdi27@gmail.com> AuthorDate: 2021-05-11 09:41:26 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:33 +0900 [ruby/csv] CSV(): Add support for Ruby 3 (https://github.com/ruby/csv/pull/215) The implementation of the `CSV` shortcut method is broken in Ruby 3 for calls that look like this: ```ruby CSV(write_stream, col_sep: "|", headers: headers, write_headers: true) do |csv| ... end ``` The above will result in the following error when the `CSV` method attempts to pass on arguments to `CSV#instance`: ``` ArgumentError: wrong number of arguments (given 2, expected 0..1) ``` The issue is due to the changes in Ruby 3 relating to positional & keyword arguments. This commit updates the `CSV()` shortcut implementation to work with Ruby 3, and also updates the documentation for the shortcut method. https://github.com/ruby/csv/commit/310dee45fa Notes: Merged: https://github.com/ruby/ruby/pull/5010 commit 1073975013d62ff65d673874256fa318db4ef208 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-06 14:19:52 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:33 +0900 [ruby/csv] CI: Stop coverage mesurement https://github.com/ruby/csv/commit/5ff3b95018 Notes: Merged: https://github.com/ruby/ruby/pull/5010 commit 8ba98f83b0fa8634c68e2d86e71718cc8097bfcf Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-09-12 07:34:15 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:33 +0900 [ruby/csv] Use "\n" for the default row separator on Ruby 3.0 or later https://github.com/ruby/csv/commit/1f9cbc170e Notes: Merged: https://github.com/ruby/ruby/pull/5010 commit 7f3dd601c895354c041988251a0be05a8a423664 Author: Joakim Antman <antmanj@gmail.com> AuthorDate: 2021-10-04 04:10:48 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:33 +0900 [ruby/csv] Changed line ending handling to consider the combination \r\n as a single entry when row is faulty (https://github.com/ruby/csv/pull/220) https://github.com/ruby/csv/commit/29cef9ea9d Notes: Merged: https://github.com/ruby/ruby/pull/5010 commit 39ecdabe67d1bc7c864ada6f282590dbc9d3a14e Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-09-15 15:58:57 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:33 +0900 [ruby/csv] Resolve CSV::Converters and HeaderConverters lazy It's for Ractor. If you want to use the built-in converters, you should call Ractor.make_shareable(CSV::Converters) and/or Ractor.make_shareable(CSV::HeaderConverters). https://github.com/ruby/csv/commit/b0b1325d6b Notes: Merged: https://github.com/ruby/ruby/pull/5010 commit 8aaa1c279f7c05a22dd108888d425565fc43e26f Author: Vince <vince.reuter@gmail.com> AuthorDate: 2021-08-06 05:40:05 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:33 +0900 [ruby/csv] doc: Match text to the struct name (https://github.com/ruby/csv/pull/217) https://github.com/ruby/csv/commit/744e41130c Notes: Merged: https://github.com/ruby/ruby/pull/5010 commit e40baca33d44057263c7119bb07ab1401ced5d1b Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-06-06 05:34:21 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-10-24 05:57:33 +0900 [ruby/csv] Bump version https://github.com/ruby/csv/commit/3025070cea Notes: Merged: https://github.com/ruby/ruby/pull/5010 commit 185c5738211e16f289aa7448823f678348597bb5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-23 22:18:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-23 22:19:04 +0900 Add INSTRUBY_OPTS to INSTRUBY_ARGS [ci skip] For extra options from the `make` command line. Also add explicit `--install` option to install-nodoc. commit cda8bc3657b58a5376e7bd7beec346505ebe5893 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-23 13:35:04 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-23 13:38:40 +0900 [ruby/openssl] test/openssl/test_ssl: use assert_raise in test_bad_socket The Ruby tree disallows assert_raises. https://github.com/ruby/openssl/commit/9b4f761e74 commit 35b9d8d39317cc5ed9eeb11d3ecbb7335b81ed91 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-10-23 02:14:00 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-23 13:38:40 +0900 [ruby/openssl] Raise an exception if the IO object passed to SSLSocket isn't a file SSLSocket#connect eventually calls `GetOpenFile` in order to get the underlying file descriptor for the IO object passed in on initialization. `GetOpenFile` assumes that the Ruby object passed in is a T_FILE object and just casts it to a T_FILE without any checks. If you pass an object that *isn't* a T_FILE to that function, the program will segv. Since we assume the IO object is a file in the `connect` method, this commit adds a `CheckType` in the initialize method to ensure that the IO object is actually a T_FILE. If the object *isn't* a T_FILE, this class will segv on `connect`, so I think this is a backwards compatible change. https://github.com/ruby/openssl/commit/919fa44ec2 commit 47975ece4096cdab16b3f200f93ea2377dfb41ac Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-05-31 14:17:21 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-23 13:38:39 +0900 [ruby/openssl] test/openssl/test_pkey_rsa: disable test_no_private_exp on OpenSSL 3.0 OpenSSL::PKey::RSA#set_key does not exist when built with OpenSSL 3.0, so it is not possible to create an RSA object with incomplete state. https://github.com/ruby/openssl/commit/ca03c9c070 commit 95044fa13b2df0377305c747c4d2b36cbdfbb750 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-18 02:35:35 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-23 13:38:39 +0900 [ruby/openssl] test/openssl/test_pkey: use EC keys for PKey.generate_parameters tests OpenSSL 3.0 refuses to generate DSA parameters shorter than 2048 bits, but generating 2048 bits parameters takes very long time. Let's use EC in these test cases instead. https://github.com/ruby/openssl/commit/c732387ee5 commit d67fe1e9de70592622b6c3f0f7353337886e7c35 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-03-21 00:23:31 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-23 13:38:38 +0900 [ruby/openssl] test/openssl/test_ssl: fix illegal SAN extension A certificate can only have one SubjectAltName extension. OpenSSL 3.0 performs a stricter validation and certificates containing multiple SANs will be rejected. https://github.com/ruby/openssl/commit/558cfbe5f5 commit 79d5abd01ba51b205aa7da2ec133da6230580682 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-13 23:20:55 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-23 13:38:38 +0900 [ruby/openssl] test/openssl/test_pkcs12: fix test failures with OpenSSL 3.0 OpenSSL's PKCS12_create() by default uses pbewithSHAAnd40BitRC2-CBC for encryption of the certificates. However, in OpenSSL 3.0, the algorithm is part of the legacy provider and is not enabled by default. Specify another algorithm that is still in the default provider for these test cases. https://github.com/ruby/openssl/commit/998406d18f commit d26e64e0eb68b9906a1d24971bef59be597b5924 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-07-10 13:56:38 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-23 13:38:38 +0900 [ruby/openssl] test/openssl/test_ssl: relax regex to match OpenSSL's error message OpenSSL 3.0 slightly changed the error message for a certificate verification failure when an untrusted self-signed certificate is found in the chain. https://github.com/ruby/openssl/commit/b5a0a19850 commit 54047b6d0646b38cceaa2546c9ae57b5d9c4c988 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-18 02:17:28 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-23 13:38:37 +0900 [ruby/openssl] test/openssl/test_digest: do not test constants for legacy algorithms Remove availability test for MD4 and RIPEMD160 as they are considered legacy and may be missing depending on the compile-time options of OpenSSL. OpenSSL 3.0 by default disables them. https://github.com/ruby/openssl/commit/a3e59f4c2e commit 5a8e1c520ac71c76f6424f9ef5aef64a79527f78 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-09-27 15:34:28 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-23 13:38:37 +0900 [ruby/openssl] test/openssl/test_ssl: assume ECC support Disabling ECC support of OpenSSL is impractical nowadays. We still try to have the C extension compile on no-ec builds (as well as no-dh or no-engine, etc.) as long as we can, but keeping test cases for such an extreme scenario is not worth the effort. https://github.com/ruby/openssl/commit/2cd01d4676 commit 0e805e73cedbce3748c979049c17c74f3f0eca43 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-09-27 15:32:39 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-23 13:38:36 +0900 [ruby/openssl] test/openssl/test_ssl: assume TLS 1.2 support Current versions of OpenSSL and LibreSSL all support TLS 1.2, so there is no need for checking the availability. https://github.com/ruby/openssl/commit/a175a41529 commit 37632a0ac635082e4ca9ca5b1c8da6b6770ff0ed Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-05-31 11:44:05 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-23 13:38:36 +0900 [ruby/openssl] test/openssl/utils: remove dup_public helper method It uses deprecated PKey::{RSA,DSA,DH}#set_* methods, which will not work with OpenSSL 3.0. The same can easily be achieved using PKey#public_to_der regardless of the key kind. https://github.com/ruby/openssl/commit/7b66eaa2db commit e353bcd1113187185e06eac64b5f63956c30e2d9 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-10-23 10:56:26 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-10-23 10:56:26 +0900 Sync did_you_mean commit 93badf47704eece8b7a2b084f18a03a9083fb1a8 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-10-23 10:22:14 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-10-23 10:22:14 +0900 Disable did_you_mean in TestPatternMatching commit 905be49bf6b83f7dedb555f3f897f669cb16f1ad Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-10-23 10:14:01 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-10-23 10:14:01 +0900 Remove the test for DYM's verbose formatter commit 66df18c55e929de4d133cd9e71807a70de392ec0 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-10-23 10:00:23 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-10-23 10:00:23 +0900 Sync did_you_mean again commit 22249bbb371d794c0330c1a4512f2581c1040297 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-10-23 09:56:26 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-10-23 09:56:26 +0900 Revert "Sync did_you_mean" This reverts commit e22d293e06966733e71a7fd9725eee06c03d0177. commit e22d293e06966733e71a7fd9725eee06c03d0177 Author: Yuki Nishijima <yk.nishijima@gmail.com> AuthorDate: 2021-10-23 09:35:40 +0900 Commit: Yuki Nishijima <yk.nishijima@gmail.com> CommitDate: 2021-10-23 09:35:40 +0900 Sync did_you_mean commit f80069820e1f7d44ef9c385254d498468a352021 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-23 02:41:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-23 06:22:41 +0900 YJIT: Don't take VM lock on constant IC fill when disabled While theoretically it's fine to take the lock and then immediately release it, we don't need to do it when YJIT is off. Notes: Merged: https://github.com/ruby/ruby/pull/5007 commit 7246c5b811a7b937854efb821cc457f101ad5ff1 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-10-23 06:03:57 +0900 Commit: Sutou Kouhei <kou@clear-code.com> CommitDate: 2021-10-23 06:03:57 +0900 NEWS: Fiddle 1.1.0 is released commit 199ba9c377be894d407d27fb1ab2defe119398d7 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-23 01:38:05 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-23 01:38:05 +0900 update NEWS about last commits. commit 41f6ce9f1cd9c48d787b2f50e0c14f934e9e48d8 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-23 01:33:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-23 01:33:10 +0900 * 2021-10-23 [ci skip] commit df9fac5ccd905d57251ffa89f28959c1b2a294eb Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-22 18:22:00 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-23 01:32:55 +0900 update doc/ractor.md about ivars Notes: Merged: https://github.com/ruby/ruby/pull/5006 commit a7776077be7b1754b4306f00694a8f4d42009159 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-22 18:06:36 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-23 01:32:55 +0900 add vm_ivar_of_class_set benchmark for a class's ivar setter Notes: Merged: https://github.com/ruby/ruby/pull/5006 commit acb23454e57e1bbe828e7f3114430cab2d5db44c Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-22 17:24:34 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-23 01:32:55 +0900 allow to access ivars of classes/modules if an ivar of a class/module refer to a shareable object, this ivar can be read from non-main Ractors. Notes: Merged: https://github.com/ruby/ruby/pull/5006 commit 6b9285e8d45e88c5b014b8428520ffa2401789ad Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-22 23:54:51 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-22 23:56:07 +0900 'uri/https' is needed `URI.parse('https://a.b.c/')` needs 'uri/https'. commit ba4bf8a1e6554c47b5559a6568ebb8aea5a21d9e Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-22 23:53:42 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-22 23:53:42 +0900 Fix simple test on platforms where compaction is not supported 844588f9157b364244a7d34ee0fcc70ccc2a7dd9 made it so that trying to call gc_verify_compaction_references on unsupported platform result in an exception rather than a crash. Rescue the exception in a YJIT btest that uses gc_verify_compaction_references. Notes: Merged: https://github.com/ruby/ruby/pull/5004 Merged-By: XrXr commit d09cb64ae5c618f1cb2d90c544b7e0bc55ebb003 Author: rm155 <rohitmenon@verizon.net> AuthorDate: 2021-08-06 10:14:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-22 19:49:34 +0900 [ruby/mutex_m] Make VERSION shareable https://github.com/ruby/mutex_m/commit/a839e29d04 commit 553f234a07fe000cf5416793c1f9c0273518d906 Author: Tiago <cardoso_tiago@hotmail.com> AuthorDate: 2021-09-21 06:53:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-22 19:48:36 +0900 [ruby/uri] URI#HTTP#origin and URI#HTTP#authority (https://github.com/ruby/uri/pull/30) https://github.com/ruby/uri/commit/bf13946c32 Co-authored-by: Samuel Williams <samuel.williams@oriontransfer.co.nz> commit c8ad024e8e89550009bc4ee76fd6a4b22e18e207 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-10-06 20:49:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-22 19:48:22 +0900 [ruby/delegate] gemspec: Drop unused executables directives https://github.com/ruby/delegate/commit/81a3c32140 commit aee4940d5e45f6502aa661662d0ee142a45b98dc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-22 17:08:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-22 17:14:00 +0900 Reduce YJIT runs on macOS [ci skip] MacOs concurrency on GitHub Actions is limited, and the performance is relatively poor. commit 93691d07525773b4b77eeaba347e8d910ab3dcbb Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-22 13:04:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-22 15:53:49 +0900 Import bigdecimal-3.1.0.dev commit 22a7f7ec5a23bf37c31b227ca0ebb198bfcda2af Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-22 13:53:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-22 15:06:41 +0900 Refinement#include and Refinement#prepend have been deprecated commit 598382f686ef1a9687fbc814f8cf1c5ef5c97cfe Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-22 14:43:27 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-22 14:43:38 +0900 debug.gem 1.3.1 commit 9f4f3bd1cce879d1de906b332353e5e9c051df00 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-22 13:53:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-22 13:53:21 +0900 Refinement#include and Refinement#prepend have been deprecated commit 4446942f1ab79b9687b009936d5365cfa846258f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-21 21:52:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-22 12:47:34 +0900 Extract UNPACK_FETCH commit 6469038ae2ca8a5f0ea8c1274030996240e7df70 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-10-22 12:41:13 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-10-22 12:41:14 +0900 Fix TestRubyOptions#test_enable for -DMJIT_FORCE_ENABLE --enable=all didn't work when cppflags=-DMJIT_FORCE_ENABLE was given. commit 844588f9157b364244a7d34ee0fcc70ccc2a7dd9 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-10-22 05:27:56 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-10-22 07:47:38 +0900 Push compaction page alignment check down It seems like `gc_verify_compaction_references` is not protected in case alignment is wrong. This commit pushes the alignment check down to `gc_start_internal` so that anyone trying to compact will check page alignment I think this method may be getting called on PowerPC and the alignment might be wrong. http://rubyci.s3.amazonaws.com/ppc64le/ruby-master/log/20211021T190006Z.fail.html.gz Notes: Merged: https://github.com/ruby/ruby/pull/5001 commit bdfc23cba9c7ade8f4528f38b19b0ea11c0d56c4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-22 04:07:32 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-22 04:07:32 +0900 YJIT: don't compile attr_accessor methods when tracing (#4998) 2d98593bf54a37397c6e4886ccc7e3654c2eaf85 made it so that attr_accessor methods fire C method tracing events. Previously, we weren't checking for whether we are tracing before compiling, leading to missed events. Since global invalidation invalidates all code, and that attr_accessor methods can never enable tracing while running, events are only dropped when YJIT tries to compile when tracing is already enabled. Factor out the code for checking tracing and check it before generating code for attr_accessor methods. This change fixes TestSetTraceFunc#test_tracepoint_attr when it's ran in isolation. Notes: Merged-By: maximecb commit d0cad8ad83a72455c35afc5300f090c7742af007 Author: Justin Searls <searls@gmail.com> AuthorDate: 2021-10-22 01:58:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-22 03:33:44 +0900 [rubygems/rubygems] Re-enable `default_ignores` option for standard I am not sure why this flag was turned off (it wasn't explained in my commit message in 0365dc852767ae589376a7aad1fb129738e408b0 or in my PR in #4411). Whatever the reason, without `default_ignores` turned on, most default CI configurations will immediately fail, as they most likely vendor and cache their dependencies under `vendor`, which will cause standard to run against all the vendored gems and (most likely) fail. I think we should remove this before this feature is released. https://github.com/rubygems/rubygems/commit/677f74be48 commit 32a8cb965c28455ea8bce8d7d84efab456db773f Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-10-22 01:49:58 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-22 01:49:58 +0900 Add link to YJIT blog post to NEWS.md Requested by @nurse commit ad1f7f2a8e0232207033320856f22eb4d6653793 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-22 00:28:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-22 00:28:26 +0900 * 2021-10-22 [ci skip] commit 119626da947bf6492ef7a27abf3bf12de5d0d95a Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-22 00:02:28 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-22 00:26:02 +0900 Force disable yjit on OpenBSD TestRubyOptions#test_enable was broken on OpenBSD after the yjit merge. --yjit (and --enable-all, which enables --yjit) fails on OpenBSD because yjit uses an insecure mmap call (both writable and executable), in alloc_exec_mem, which OpenBSD does not allow. This can probably be reverted if yjit switches to a more secure mmap design (writable xor executable). This would involve initially calling mmap with PROT_READ | PROT_WRITE, and after writing of executable code has finished, using mprotect to switch to PROT_READ | PROT_EXEC. I believe Firefox uses this approach for their Javascript engine since Firefox 46. commit d74f1e1623a622b2e880e7043857e13b5919c47e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 21:19:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 21:19:16 +0900 Added version of readline-ext commit c5345979e89e95f920e07352038ccb2c83dcf0f8 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 21:16:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 21:17:45 +0900 Bump up readline-ext version to 0.1.3 commit 03fd60937dab442906f00e3d0dbba8d10b1c66a8 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 21:07:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 21:07:23 +0900 Update the merged versions of default gems. commit eac7a71062be3539ff9e6628343b079ed94d010c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 14:57:19 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 21:05:39 +0900 [ruby/prettyprint] Bump up prettyprint version to 0.1.1 https://github.com/ruby/prettyprint/commit/0e8eee5f5f commit ba3c2593ab6b219a50ec3ca09b7b618bb6833443 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 15:03:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 21:04:14 +0900 [ruby/pp] Bump up pp version to 0.2.1 https://github.com/ruby/pp/commit/06b839b9ca commit 9f398d023b16d844ced4e3100a85e115853af218 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 20:08:26 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 21:03:08 +0900 [ruby/securerandom] Bump up securerandom version to 0.1.1 https://github.com/ruby/securerandom/commit/5f9d3d1dfa commit aca0dcc5f97c2dd5690e167e22e945a21535a512 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 15:26:58 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 21:02:37 +0900 [ruby/rinda] Bump up rinda version to 0.1.1 https://github.com/ruby/rinda/commit/d394ba107e commit b8d49d0d01662c87628e7d5e9285a9d71d2df96a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 20:38:56 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 21:01:34 +0900 [ruby/optparse] Bump up optparse version to 0.2.0 https://github.com/ruby/optparse/commit/1226b670e6 commit cb4c98f94966b2434339a44b9ceba44cafff7fc8 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 20:06:05 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 21:01:06 +0900 [ruby/net-http] Bump up net-http version to 0.2.0 https://github.com/ruby/net-http/commit/f3e65e2a31 commit cc2f76041df460056a40876a993a45b75185b007 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 19:57:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 21:00:53 +0900 [ruby/net-protocol] Bump up net-protocol version to 0.1.2 https://github.com/ruby/net-protocol/commit/088e52609a commit 8ef125c838fdcc1ef5581667b0b3b8d6441cd830 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 15:53:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 21:00:04 +0900 [ruby/uri] Bump up uri version to 0.11.0 https://github.com/ruby/uri/commit/1619f713e6 commit 422b057d65ae429cf6cd4200366d833174837ec8 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 13:54:31 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 20:54:33 +0900 [ruby/ostruct] Bump up ostruct version to 0.5.0 https://github.com/ruby/ostruct/commit/c535a406f8 commit 7529fe82f097e3432ba1450b4fc1109e3cfa8572 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 20:20:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 20:54:20 +0900 [ruby/io-wait] Bump up io-wait version to 0.2.0 https://github.com/ruby/io-wait/commit/f6a1b10a59 commit 8eb8522f47c9a9ddbc56ee98f88449bc79de022d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 20:46:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-21 20:53:53 +0900 [ruby/stringio] Bump up stringio version to 3.0.1 https://github.com/ruby/stringio/commit/f7c40aa339 commit 6b08aaf228d43e42be09742470749c73a134d30f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 20:14:34 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-21 20:14:57 +0900 [ruby/fileutils] Bump up fileutils version to 1.6.0 https://github.com/ruby/fileutils/commit/918d19e4f2 commit 6606597109bdb535a150606323ce3d8f5750e1f6 Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-10-21 16:21:08 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-10-21 16:31:54 +0900 Deprecate include/prepend in refinements and add Refinement#import_methods instead Refinement#import_methods imports methods from modules. Unlike Module#include, it copies methods and adds them into the refinement, so the refinement is activated in the imported methods. [Bug #17429] [ruby-core:101639] commit 7185c00fcc330db8951b684f548ba3d10983bb92 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-09-30 17:30:04 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-21 16:17:39 +0900 freeze (make shareable) script_lines Notes: Merged: https://github.com/ruby/ruby/pull/4913 commit c7550537f11dcf6450a9d3df3af3fa1f4fe05b15 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-09-30 16:58:46 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-21 16:17:39 +0900 `RubyVM.keep_script_lines` `RubyVM.keep_script_lines` enables to keep script lines for each ISeq and AST. This feature is for debugger/REPL support. ```ruby RubyVM.keep_script_lines = true RubyVM::keep_script_lines = true eval("def foo = nil\ndef bar = nil") pp RubyVM::InstructionSequence.of(method(:foo)).script_lines ``` Notes: Merged: https://github.com/ruby/ruby/pull/4913 commit 3b16d07e457264d7c171f8d1fcfaddb0dad90f57 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-10-21 14:08:42 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-10-21 14:08:43 +0900 Fix test_version again for RUBY_YJIT_ENABLE=1 commit 76f9bc7e660c6b46b9f80712d415151f32280e2d Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-10-21 13:57:48 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-10-21 13:57:49 +0900 Reduce the amount of false positive notifications While f6048e592c520e20ba498ba4d553f07f02213a61 tried to approach the instability mentioned there, unfortunately the Travis arm32 environment seems unstable by itself. I already saw 2 different failures in the last 4 builds: https://app.travis-ci.com/github/ruby/ruby/jobs/544382885 https://app.travis-ci.com/github/ruby/ruby/jobs/544361370 Let's revisit this when this kind of thing stops happening. commit 582316870639fc13e77a63c7704beacb2686da7b Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-21 13:48:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-21 13:49:20 +0900 [ruby/psych] Bump up psych version to 4.0.2 https://github.com/ruby/psych/commit/69a713f860 commit 4d4bdcf368d72c7dbedbc58fb3ebcad8447ffcd8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-21 13:06:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-21 13:07:48 +0900 Move the test file commit 58956dba168eb47b7ceba82f2e915d65eb3db240 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-21 12:58:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-21 13:07:48 +0900 Fix for out-of-place build commit 18b65508e28b42849bb7523014aa7f2296fe6c60 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-21 12:57:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-21 13:07:48 +0900 Suppress warnings commit 66a64e6f16c0db8d6c049d5885e63a3c61f9bc18 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-10-21 12:44:20 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-10-21 12:52:21 +0900 Fix tests with cppflags=-DYJIT_FORCE_ENABLE https://github.com/ko1/build-ruby/commit/0dbd95c6250594b6ddadc3c4424b071704083187 commit 8684946b211db5edd113e1ae6df1bc77d045b4a8 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-10-21 04:51:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 08:15:45 +0900 Add bit about YJIT to NEWS.md Notes: Merged: https://github.com/ruby/ruby/pull/4997 commit 7637175a84ee0c11ee6846c12e12bdc3d9a025ed Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-21 08:12:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-21 08:12:53 +0900 * append newline at EOF. [ci skip] commit 6a9e2b3cc381fd1b6c5ec5eddb077ea5468ef75e Author: Alan Wu <alanwu@ruby-lang.org> AuthorDate: 2021-10-21 08:04:22 +0900 Commit: Alan Wu <alanwu@ruby-lang.org> CommitDate: 2021-10-21 08:04:22 +0900 YJIT: Show GCC that the mmap probing loop runs at least once Fixes: ./src/yjit_asm.c:196:8: warning: 'mem_block' may be used uninitialized [-Wmaybe-uninitialized] commit 00be5846e4793b718da19dafec3f4ecf2d6d0692 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-20 05:43:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Fix non RUBY_DEBUG build warnings On non RUBY_DEBUG builds, assert() compiles to nothing and the compiler warns about uninitialized variables in those code paths. Replace those asserts with rb_bug() to fix the warnings and do the assert in all builds. Since yjit_asm_tests.c compiles outside of Ruby, it needed a distinct version of rb_bug(). Also put YJIT_STATS check for function declaration that is only defined in YJIT_STATS builds. commit cffa1162758a67dd73da6cd911d593f67f05ea7b Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-21 02:20:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Do kwarg shuffle after checking for interrupts Previously, we were shuffling keyword arguments before checking for interrupts. In the case that we side exit in the interrupt check, we left the interpreter with an already-shuffled argument list for the call, resulting in a double shuffle, leaving the locals in the wrong order for the callee. Do keyword shuffling after all the possible side exits. Co-authored-by: Kevin Newton <kddnewton@gmail.com> commit c062028d3785d5d56deb1be6c4c5733f7f9f19ac Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-20 06:51:40 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 YJIT: check machine arch before enabling So we don't try to run x64 on ARM. commit b74d6563a665f225f182c4921db68852bbb7e1f1 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-19 06:01:40 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Extract yjit_force_iv_index and make it work when object is frozen In an effort to simplify the logic YJIT generates for accessing instance variable, YJIT ensures that a given name-to-index mapping exists at compile time. In the case that the mapping doesn't exist, it was created by using rb_ivar_set() with Qundef on the sample object we see at compile time. This hack isn't fine if the sample object happens to be frozen, in which case YJIT would raise a FrozenError unexpectedly. To deal with this, make a new function that only reserves the mapping but doesn't touch the object. This is rb_obj_ensure_iv_index_mapping(). This new function superceeds the functionality of rb_iv_index_tbl_lookup() so it was removed. Reported by and includes a test case from John Hawthorn <john@hawthorn.email> Fixes: GH-282 commit 2e2430564aa32b68f9e2d99e1f1e273bee3defda Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-10-19 04:49:22 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Update yjit.md commit adcee68aa02d33b3a2a0eb8ade3bb53b9ca6c1d8 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-18 23:54:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Doc: remove outdated note about hooking into the interpreter DAE remember MicroJIT? commit 8a9a2d004951dc0c9e724fbb050d14b75d4fcd1d Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-18 23:53:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Move test_yjit_asm.sh into misc Since conventionally scripts don't live at the top level of the repo. commit 5906a5a7329e34a43dc46d4fc3cdf1b04cc13d0a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-19 00:30:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Add comments about special runtime routines YJIT calls When YJIT make calls to routines without reconstructing interpreter state through jit_prepare_routine_call(), it relies on the routine to never allocate, raise, and push/pop control frames. Comment about this on the routines that YJTI calls. This is probably something we should dynamically verify on debug builds. It's hard to statically verify this as it requires verifying all functions in the call tree. Maybe something to look at in the future. commit 1e23b1a6c2614c8e3a1be0be4df6dee9202701d5 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-18 23:25:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Actually, tabs are okay in Makefile commit 454fbe10460e7758718f637d0af82823c16b5ec4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-18 22:49:36 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Expand tabs commit 38f364b8f5df77a82cd485bb848fe78ba2fd5ab9 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-18 22:33:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Update dependencies commit da305dd23e68d1b30be5f7e21c798ee3519f23c1 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-10-18 22:06:03 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Match the main-branch location of yjit in inits.c commit 40608d0b7bd20c20595f7f2f04d35bb2190cc031 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-16 07:26:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Fix indentation in ruby.c commit 95e337f815b68b50d4455c4c9a8722b8794bfffa Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-16 06:15:42 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Warn when trying to use YJIT in --disable-jit-support builds commit ff863f3818dfc8576f72f2a794756bc3b96fdbe9 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-16 06:15:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Show --yjit in help message commit 11096da6cc655b301b91e985e9ba1bad748e91bf Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-16 05:51:57 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Improve YJIT command line option parsing Previously, options such as "--yjit123" would enable YJIT. Additionally, the error message for argument parsing mentioned "--jit-..." instead of "--yjit-...". commit d11ea2520e24fdc7114a6400f00c96d241665bff Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-10-16 06:19:17 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Update yjit.md commit de0af4faada742ca5113318776aa2d96e403a982 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-16 04:49:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Revert "Disable YJIT while running MJIT tests (#62)" This reverts commit 60f3f25cc421b75b3dbf02fef759c4857bf3ef46. We don't need to pass --disable-yjit when running MJIT tests anymore because we are off by default. commit 27358b6ee488a51cfa89a096d287a12a1950967c Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-16 03:10:10 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Simplify code for YJIT const cache in compile.c Since opt_getinlinecache and opt_setinlinecache point to the same cache struct, there is no need to track the index of the get instruction and then store it on the cache struct later when processing the set instruction. Setting it when processing the get instruction works just as well. This change reduces our diff. commit 28632ea7ba583328acc2f91f2de63a476c536c32 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-16 02:41:21 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Mention YJIT in Capstone autoconf check commit 63faab3c362941b57295307a381154d03c3b7fc9 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-16 02:30:01 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Minimize diff in existing workflow files commit 4cad89308027d56b984fec0f9c796637832fb258 Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-10-15 02:48:24 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Add String#bytesize Fixes: https://github.com/Shopify/yjit/issues/258 Co-authored-by: Aaron Patterson tenderlove@ruby-lang.org commit 5d2e5218f643917e3add702e48ebe48ce7cb80ba Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-09 05:50:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Use env var to turn on YJIT for test-bundled-gems tool/test-bundled-gems.rb use sub processes for testing bundled gems and doesn't support RUN_OPTS. We weren't enabling YJIT for these tests. Use an include config with RUBY_YJIT_ENABLE to turn on YJIT for these tests. Note that we only test with the default call threshold in this setup, which is the same as before YJIT was off by defauft. The --yjit-call-threshold command line was never passed to the tests. commit ec4a79a7466a0670b2b6218be8f59f570fa9bad9 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-09 04:26:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Remove YJIT CI configs for tests make check runs "make check" runs "make test-spec" and "make test-all", so they don't need to be individual elements of the matrix. commit 413397b91e5740f41a0d32f819efe4276f42dc09 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-09 04:22:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Turn on YJIT for repeat-count=2 runs through env var It wasn't on at all before... Since it's a snowflake "include" matrix element, might as well test the env var with it. commit 27661ee8a358626691a39c0ebe405b6bd8f66a2f Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-09 03:44:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Turn on YJIT in macOS workflow It wasn't on at all and the printout of RUBY_DESCRIPTION at the end of `make check` wasn't saying +YJIT. commit efed45966b3aac728bbbe2cfc7ec937b7712c146 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-08 07:05:10 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Show +YJIT in version string and RUBY_DESCRIPTION There might be code out there that expect `ruby -v` to print only one line. Since MJIT shows +JIT in `ruby -v` and RUBY_DESCRIPTION, let's show +YJIT. The crash report doesn't show anything about MJIT, so adjust the test. The "test_ruby_version" test was unaware of RUBY_YJIT_ENABLE and so was failing when the variable is set and inherited into the children processes it spawns. Explicitly unset the variable in the test. commit 13261f00fbe844261f364d51fc97318758d87c2b Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-10-09 03:40:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 More simple bootstrap tests for kwargs commit 32b5125c5eb40422ef8a92a9886986a9ee4dc299 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-08 03:59:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 else if style commit 35b37c5873d49b7e2ac2d406532635b0871c8dcf Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-10-08 03:50:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Update yjit_codegen.c Co-authored-by: Alan Wu <XrXr@users.noreply.github.com> commit 201721b713d2cb8b7f7374c9c5ba037c3b8f540d Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-10-08 03:50:12 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Update yjit_codegen.c Co-authored-by: Alan Wu <XrXr@users.noreply.github.com> commit 56b1b93a0c504b93f7536effca155c0fdeebeb8e Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-10-08 00:01:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Feedback, tests, and rebase for kwargs commit c5acbd0208aa61e05718f73a093c7c6bdc142091 Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-10-07 00:15:25 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Bail out if passing keyword arguments to only positional and/or optional methods commit 06a826b8c88e4d76d90bb5b9c3644387321b5fbc Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-10-06 04:32:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Set up the callee stack pointer properly taking into account the bits object commit 5759d840c3bfc5a2b7a127948a8703c1b584c911 Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-10-05 23:38:41 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:43 +0900 Correct for positional required arguments commit 266e12ac2262db776c6138e144628b9f31d763a8 Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-10-05 02:08:57 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Push the unspecified_bits_value onto the stack commit 9aed5809e11ab4dc7db044d312d585732cfc1d5f Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-09-30 02:43:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Reuse stack swapping logic commit 2c0891be204f270028e533bd1196a034a599d8f8 Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-09-29 04:51:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Get kwargs reordering working commit 885bb972bfd80cb1c6ca4e5f521e823a1ae14c4a Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-09-29 03:45:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Get kwargs working for all passed in the correct order commit 1f25bba7b7d8851039df82fe3809387629256c78 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-08 06:53:59 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 YJIT_STATS instead of RUBY_DEBUG for --yjit-stats in help printout commit d4fae3e390c884f23048d8070d456d9f4f7d3233 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-08 06:52:36 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Say YJIT is disabled by default in ruby --help commit d355bf17ba54d608b0dd1eda5a09b35fb3b2a4c6 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-08 03:55:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Style fix in ruby.c commit 34f1595405f8c709e3c98f66d7e49f2b2c816feb Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-08 03:49:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Enable leaked global tests in YJIT workflows commit 99facbc07077fb34655a2b132414493dcb0cbe43 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-08 03:48:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Correct workflow name for YJIT Ubuntu commit 4705db6a37db61cb9da90a5c6a57015cb6fda50f Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-10-08 00:57:10 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Try turning off test-bundler-parallel to see if that fixes all the build errors commit 21e58acef347bb3891262ab38ac211c8d877efd7 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-10-01 21:45:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Don't enable YJIT by default. More tests on both Ubuntu and MacOS. Add RUBY_YJIT_ENABLE env var and YJIT_FORCE_ENABLE compile-time constant. Rename YJIT_STATS to RUBY_YJIT_STATS. commit 7c08538aa3a366409784f6a8b7aa013b85633803 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-07 06:44:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Cleanup diff against upstream. Add comments I did a `git diff --stat` against upstream and looked at all the files that are outside of YJIT to come up with these minor changes. commit 884b6f3dbb33ef98fbfe96e7c70ccc8bb5735829 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-07 05:34:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Move YJIT internal macros away from yjit.h. Tweak style Since this file is exposed to the rest of the codebase and they don't really need to know about things like PLATFORM_SUPPORTED_P. commit ed723ca76fb9447093d64ef238f76f0e2c116bdd Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-08 01:57:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Remove yjit_backend to help with upstreaming The new backend isn't used at the moment and adds to our diff against upstream so remove it for now. We can reverse the removal later with git history. commit 506c037a166e7b06b7dbacba3412a356bead7b16 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-07 04:49:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Cleanup iseq.c minimize diff with upstream Most of these are vestiges of our old setup where we hack into the interpreter loop. commit 735b3a7748c5dfb1ee5e67962d3b86333fbe5212 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-06 05:56:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Tweak mjit_exec() to remove YJIT symbol exports We were exporting a couple of symbols in yjit.h because they could be used by code generated by MJIT. We don't want MJIT calling into YJIT code anyways so let's stop exporting them to libruby.so. Also adjust indentation and comments in mjit_exec(). commit b242ea87da6fabba04bc515b7bce26dc1ce0199e Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-02 08:10:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Re-enable leaked global check YJIT should be able to pass this check now. commit f6da559d5b88981000d4c575b6384f59d30dec22 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-02 07:38:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Put YJIT into a single compilation unit For upstreaming, we want functions we export either prefixed with "rb_" or made static. Historically we haven't been following this rule, so we were "leaking" a lot of symbols as `make leak-globals` would tell us. This change unifies everything YJIT into a single compilation unit, yjit.o, and makes everything unprefixed static to pass `make leak-globals`. This manual "unified build" setup is similar to that of vm.o. Having everything in one compilation unit allows static functions to be visible across YJIT files and removes the need for declarations in headers in some cases. Unnecessary declarations were removed. Other changes of note: - switched to MJIT_SYMBOL_EXPORT_BEGIN which indicates stuff as being off limits for native extensions - the first include of each YJIT file is change to be "internal.h" - undefined MAP_STACK before explicitly redefining it since it collide's with a definition in system headers. Consider renaming? commit 25eed2848344f19385b39daaac8ca5eef79f9466 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-02 06:46:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Remove unused function commit 7eea96c7803138776bf2bc3f26a42bdb39ccca8c Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-06 05:07:57 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Fix gen_getclassvariable We need to reconstruct interpreter state before calling into the routines to be able to raise exceptions. I'm getting a crash in debug build with: make test-all 'TESTS=test/ruby/variable.rb' RUN_OPTS='--yjit-call-threshold=1 --yjit-max-versions=1' commit 70c5bbf84b569d293c0162c084c99d2ca609d9be Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-10-05 00:26:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Fix counter names for getblockparamproxy. Print in --yjit-stats. commit f021b35273c385ca469ba594527bb1fb53e30f96 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-10-04 23:00:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Reduce line length for YJIT option descriptions commit fab469b6787220648f6c5bb8104f9a1246d9eadd Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-10-04 21:52:01 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Document YJIT options in --help commit c8e157bb5c9553e7b444921878044996a1c24ca0 Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-09-30 05:06:40 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Implement getclassvariable in yjit Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> commit 4fc20a8c911793d03107e8eae2042deb028d0d75 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-10-04 21:11:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Move Ruby's README back where it was commit 3dd4abfcd026442d99742959445eb8a223f569cf Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-10-04 21:09:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Move YJIT's README into doc/yjit/yjit.md commit 6392702375c066cc15b15b47de1603d384690caf Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-10-04 21:07:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Incorporate feedback from the PR into yjit_hacking.md commit d4a75dd9766c1f803687bf54f7b8886739b3e867 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-10-02 00:45:03 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Add a YJIT hacking doc with some internals; change the README text a bit to reflect its current condition commit f911e264a1d539b6c99542d07f72af10ed91ae87 Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-10-02 02:43:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Add counted side exit to getblockparamproxy This is so we know the specific reason we're exiting this instruction. Co-authored-by: Aaron Patterson tenderlove@ruby-lang.org commit be06112d48b763da1e3f29b03e5e59d2a44e7b72 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-10-01 20:17:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:42 +0900 Fix changes from rebase commit f36a5a98c02ba38d05d345104b1a6d0c0c1af29b Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-30 05:11:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 style: line break before "else" commit ec4998bd69e2d09d89440f27fc15be05f2a63f21 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-30 04:38:57 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 style: switch statements indent Case labels get half an indent and the opening brace is on the same line as "switch". commit a10cf74e5c727cce2612958dca1c5ac6ece1a098 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-30 03:58:01 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 style: align pointer "*" to the right commit 5b68d14c2fcacc2f185a1933ce9b102cb06b1ba5 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-28 14:28:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Add optimized Thread.current commit 5c15850ea622d8ad86fa14cb5b9ba6f03abb232e Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-28 03:54:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Use jit_guard_known_klass() for hashes in opt_aref The old heap object check is not as efficient as the one in jit_guard_known_klass(). Also, the old code saves cfp->sp after popping the operands off the stack, which might cause the operands to be not marked by the GC in some circumstances. commit 9dce2d51326c7db947507f32a9d33a0d22bbafbd Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-25 07:09:22 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Also do String#str commit 1a5109cb5f8945f52f90ee420cde669f117b90c4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-25 07:03:10 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Comment edits and moving functions around in the file commit a09adac2d76342fd4a0d97905b3397758689c817 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-25 05:57:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Add specialization for String#to_s on plain strings When calling "to_s" on an instance of String, the method simply returns self. In this situation most of the work comes from setting up the method call. It turns out that both railsbench and liquid-render do this a lot. When generating code for opt_send_without_block, we already generate a known class guard, so we can detect when the receiver is a String instance. Since gen_send_cfunc() is also used for gen_invokesuper(), and gen_invokesuper() doesn't generate a known class guard, a new nullable parameter for specialized codegen function is added. Closes GH-245 commit 79015926eb81ac93700146d42c343f568d3ddfbb Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-25 00:08:23 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Try to get getblockparamproxy to support level > 0 commit 8edb29e5a013da5a74fba9c2484bd6d3913bfb4b Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-24 05:27:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Reconstruct interpreter state before calling rb_ivar_get() It could raise ractor exceptions. The included test didn't run properly before this change. commit d0a213b30d04372d1a1b5012246ac7da3236db31 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-23 05:11:45 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Remove a memory load in gen_send_iseq Instead of loading from meory for REG_SP, do a register rename instead. It's cheaper. commit 0a108601eff5a1e69a4dd5dc170e9eaa807d4788 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-23 05:56:42 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Add counters for version invalidation reasons I noticed that there were two st_table iterators that do exactly the same thing so I merged them into one. commit e48fc07d11551a9a47034a03219e73c99bc4a38d Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-09-23 02:04:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Fix counter names commit 7704a6990aad2b9f979ada573497ddb7e46eefab Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-09-23 01:02:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Fix typo in comment commit a0790e6335094e0124bae3d5b53ed2264fc7a791 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-09-23 00:04:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Break up callsite_not_simple into multiple cases. commit 0c1aa17556357ca3cb5802d7a23965ed820973e4 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-23 05:16:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Remove a few more uses of the global cb/ocb commit 78b5e95e41cefd36702c37293bab95fdede38369 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-22 07:16:23 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Add a slowpath for opt_getinlinecache Before this change, when we encounter a constant cache that is specific to a lexical scope, we unconditionally exit. This change falls back to the interpreter's cache in this situation. This should help constant expressions in `class << self`, which is popular at Shopify due to the style guide. This change relies on the cache being warm while compiling to detect the need for checking the lexical scope for simplicity. commit f1eb48cb23c949ce8163c6b6d2042cecd0d79ea9 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-22 05:09:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Step 2 to remove the global cb/ocb objects. commit c55d4cafc241706d1255d8609d3d7c6f04d0706a Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-22 03:04:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Pass the global cb through codegen functions commit 0385ca2e97ba29653251dba96ab8cf0f21765bb4 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-21 23:59:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Try to break the code page refactoring into smaller steps commit c46bda6f191b01121ebbc8afa88b35683b6417a9 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-21 03:55:10 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Fix excessive invalidation for opt_getinlinecache YJIT expects the VM to invalidate opt_getinlinecache when updating the constant cache, and the invalidation used to happen even when YJIT can't use the cached value. Once the first invalidation happens, the block for opt_getinlinecache becomes a stub. When the stub is hit, YJIT fails to compile the instruction as the cache is not usable. The stub becomes a block that exits for opt_getinlinecache which can be invalidated again. Some workloads that bust the interpreter's constant cache can create an invalidation loop with this behavior. Check if the cache is usable become doing invalidation to fix this problem. In the test harness, evaluate the test script in a lambda instead of a proc so `return` doesn't return out of the harness. commit 6ef1609fab0f5bee0592ef9c9cb82e34af8d5efd Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-21 06:35:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Correct margin for stack overflow test In vm_push_frame(), the stack overflow test is done against a decremented cfp. YJIT wasn't accounting for that in its stack overflow tests. commit 7482744e042992e7d9a00151b6f6f073b185f9ee Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-21 03:51:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Add jit_obj_info_dump commit 561882e96ee5d1d7486512d566ffb6d5bf6817a1 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-21 03:43:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Add comment explaining argc + 2 commit 9951a9a8ece77ad8aa2a8871b009e2f1fb776987 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-09 15:33:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Implement invokebuiltin commit 6055078b24ce9878aafad406fe72711311f9744f Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-09-18 03:47:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Update README.md commit e04c3af52253948139c250b25263c992a9b2f23c Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-09-18 03:43:12 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Update README.md commit 5506f2761f6a65ab49f415b57120eb928154625e Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-18 00:38:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Add test for setlocal commit 82f60df5aa1e25f027a0a3fbd516d1272de39211 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-18 00:26:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Implement generic setlocal commit 90de2dc703adee6432e0ecf68e4c96adf6c9509c Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-18 00:26:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Extract gen_get_ep commit 2ff26b9ec28c9a4e0ae7a4a009da99fd200cc5e0 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-18 00:38:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Fix opt_aset comptime_key check commit a6cf515e6acdc4c308e8fe8f284fd381b0a0285c Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-17 01:39:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Rearrange stats printout for consistency commit 82405ac48ae457de9b54e18545743ab2a58bf989 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-16 02:59:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Add counters for tracking invalidations commit 1f09eb66e6cc1019ba88e421f1ba8186c071a6ed Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-16 00:31:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Expand tabs commit 0ad9d1fa48e4ced310ae70c53f9cf82ebea586b6 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-09-16 00:15:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Update yjit_codegen.c commit 5e37f280d1628152b7bb3e72b009504a20226031 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-15 04:31:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Remove vm_opt_aset commit ba9d01b3cf043d52a80af6fc9c377d6b63062442 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-14 06:31:12 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Specialize based on types of opt_aset commit 121d8f47274d53a013f9306a3e53a6f37e66a8e5 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-16 00:36:44 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Compile out declaration for runtime stats on non stats builds Checked on default build, RUBY_DEBUG build, and YJIT_STATS build. commit a71590e6814a488a7bfc7e86a59f6782c8a5d276 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-15 00:11:03 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:41 +0900 Don't store cfp->pc when doing iseq calls We set it before calling routines and when we are exiting. commit 1f6641681b216d0de5f89c817ee451a0153fa1d4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-15 00:02:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 No need to do ec->cfp = reg_cfp on exits It's already up to date. We set it when we do iseq calls and it's set properly on entry. If it's not set properly exceptions wouldn't work. commit 9fff8fdb59fe79e52bf0985db3edc4d8e1ce54fb Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-15 05:14:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Update suggested ./configure in README commit bc7652998eb0f05379ba4247ab5202dc853496fa Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-15 04:13:15 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Fix warnings about redefining YJIT_STATS Follow up for ecb5b383a0c17550b9b27663005049ddac871edb. Now that YJIT_STATS is defined in yjit.h, it should be the only place that defines it. commit 0ee8c606626cd3f92a07a4b1ae7ab546e22031ab Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-15 04:06:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Add missing percent sign in printout commit a68e61f08904ecc5a8b551a90894475da2f0ae9b Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-15 01:07:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Add tests against side exits for non-fixnum commit 7d99e8560135ffb1ddb96368b2eac4a9b5d9964d Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-15 00:58:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Check for comptime fixnum in gen_fixnum_cmp commit f1b7568f5ad6f001d848bbe5677b9ff340d58c90 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-15 00:49:22 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Check for comptime fixnums in opt_and and opt_or commit cb9bc13fcb2f78513338aa463aaf7544ebbfbfba Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-14 11:21:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Check for comptime integers in opt_plus and opt_minus commit fd10634b1abb3deeb50a1f09a41404af24cd25d7 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-15 00:57:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Move forward declaration up commit bd8cfb351b8a286af947d0a7c0431026751756cf Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-15 01:35:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Fix misplaced ivar_set_method exit counter commit 217f7cb16fe466b8be3cdb969655b4512d5e95fa Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-09-14 17:31:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Include errno message in mmap failure output It might help figure out why it is failing. commit 96fd8afbf4d93b6831ca119fd8c1f07dfa9abd07 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-20 06:02:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Skip opt_case_dispatch commit fc13ff14a2a78173dd4a1e93c8f4e3665a4e8555 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-11 06:01:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Add comments to getspecial commit bf8557f48719434261f9cf4051582868dca95363 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-11 07:01:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Add comments for new function commit 25f8431d46c0b394c6003356cf5f0c78a1cbd122 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-11 06:25:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 only compile for T_OBJECT types commit 5bc0343261cc420d08fb8462ba9ad616c7596b1d Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-11 05:41:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Refactor attrset to use a function This new function will do the write barrier / resize the object / check frozen for us commit 5092d6129a9f1d57752a29f4808fe74e1c6a666b Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-12 15:29:24 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Fix opt_eq for overridden equality commit 554d76afb4ca5cf623fb76bde90fce6f87971be8 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-09 04:47:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Revert "disable yjit when testing mjit" This reverts commit e8622ce5c0a09c7213e4d536ddd0ef3ea68377ef. commit afc5db43ca5d62feefac97f911a5d4ac33e9feda Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-09 03:49:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 is this right? commit b78c50d800a5afca84a26a7a14b0ecbb04f838e8 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-09 02:21:03 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Don't check MJIT if it's not enabled commit 9d5beb6fde45c8182d8dc6b8baade2fa5a6f4e07 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-09 01:47:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Disable YJIT by default if MJIT_FORCE_ENABLE is on Compile time flag seems pretty forceful, so let MJIT turn on by default if it is used. commit ea453acf596ba436838ce17809c1cf6dc70fa738 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-09 01:35:23 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 disable MJIT when --enable-all is set commit 44214e8ad9e8ba1adf704c8231b4ecced77d3b7a Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-09 10:47:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Implement getspecial commit cc2aa1221f96055c1d1d70ea4407b1ee12ed9a6b Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-11 00:04:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Fix avg_len_in_yjit We weren't counting completing an entire method in YJIT as exits so the avg_len_in_yjit for ./miniruby --yjit-call-threshold=1 --yjit-stats -e'def foo; end; foo' was infinite. commit cbb0271dd6256601aa6aea669ceac4f82fdb75fe Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-11 00:22:36 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Deduplicate side exits Send instructions currently generate the exact same side exit twice. Cache the exit the first time we generate it. Also add a comment explaining what side exits do. Closes GH-117. commit 6e1f2519cc851961939c4de61613161de3caf998 Author: Benson Muite <bkmgit@users.noreply.github.com> AuthorDate: 2021-09-10 16:33:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Info for Fedora and choosing C compiler commit 11599e5e1ebed485089a994753a9c3c79416c037 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-10 04:35:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Add rb_darray_clear() for Kevin. Fix some warnings. commit f380856923f066e02fb1233c720a6abdc645d11f Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-09 02:14:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Add fixes for feedback commit f30f2990601612af9378f1c33b1a1144986ba6f6 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-04 14:15:17 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Use C_ARG_REGS earlier commit c2b1934475bd2494b47b2441ac89188215fa60cc Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-04 09:07:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Add tests against opt_eq side exits commit 10f1d808d57ac3e8e5c30385b61300d3cc40b0db Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-04 07:25:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Remove rb_opt_equality_specialized commit 9ebcd576f367280c60064bc98fe35b1f2fb27e2b Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-28 10:35:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 String and fixnum equality commit 6db5e80dd7e91fcfaf55727dbe24619d964cfac4 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-13 04:02:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Use method dispatch for opt_eq commit 692f94ba0c878b30ebf96480b0f7e58f7f0ffa08 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-09 09:48:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Add jit_rb_obj_equal commit 4b58d698b14752f4dfd405637df384c758cae396 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-09 01:01:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Count interpreter instructions when -DYJIT_STATS=1 The interpreter instruction count was enabled based on RUBY_DEBUG as opposed to YJIT_STATS. In builds with YJIT_STATS=1 but RUBY_DEBUG=0, the count was not available. Move YJIT_STATS in yjit.h where declarations are expoed to code outside of YJIT. Also reduce the changes made to the interpreter for calling into YJIT's instruction counting function. commit 9bd6ce47454a03ad1cec422f36017bcae56790dd Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-09-09 00:20:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Update README.md commit 580e1bab18dbf5fd3cb2916372b0dfcfbe3b682c Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-08 05:59:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 disable yjit when testing mjit commit a1d42c37f4d849db71561e2ca60eb279719f6172 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-09-08 05:04:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Update ruby.c commit 234ab816bacd3b9d7895d1acacaee28e0ade4166 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-08 04:57:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Exit if YJIT and MJIT are both enabled YJIT and MJIT can't be running in the same process otherwise they'll clobber each other. We should show an error and exit if they're both enabled. commit 013a4a31d65810c9c1b8d34d12a7b766261440a3 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-08 06:06:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:40 +0900 Prevent stats being enabled late at run-time commit 640b162b51a704d890c44af9c76fffa4eaf28ca9 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-04 08:06:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Exit when the object is frozen Exit when the object is frozen, also add tests commit 376f5ec1a1c744ca6a78726dbf9886e30b3400fa Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-03 09:03:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Add a write barrier to ivar set We need to fire the write barrier during ivar set. This function extracts the write barrier function then calls it. Co-Authored-By: John Hawthorn <john@hawthorn.email> commit 307a4369e15b65665b1245bc97f465e962543803 Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-08-27 05:37:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Implement setivar method calls commit ce02aefabbc4536e3b7f8b13e4c9dc1ac3d258b4 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-04 17:35:22 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Allow calling variadic cfuncs with many args We have a check to ensure we don't have to push args on the stack to call a cfunc with many args. However we never need to use the stack for variadic cfuncs, so we shouldn't care about the number of arguments. commit 922aed92b5e4602571d191e62904304458c9998d Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-01 08:53:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Add codegen for rb_true and rb_false These are used by .nil? and therefore opt_nil_p commit fd34c831f6f61691cb9f2d171c690c9769183437 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-04 17:50:25 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Allow special case of expandarray with nil commit d098c5560b7ae43f6f6798bedd9561f80604986f Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-08-31 04:42:04 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Shave a few instructions off of leave The code path for leave that returns to the interpreter (gen_leave() -> yjit_gen_leave_exit()) used to have the logic: ``` cfp->sp++; cfp->sp[-1] = return_val; cfp->sp--; return return_val; ``` The SP changes it made was unnecessary and this change removes it. After this change, `leave` doesn't adjust the `cfp->sp` of the caller and only writes `cfp->sp[0]`. To accommodate this in the JIT-to-JIT return case, return stubs have an `sp_offset` of 1. The change removes sp adjustment from the JIT-to-JIT return case, too, making it more efficient. Also, since the C method case of `send` has an `sp_offset` of 1 after the call, this change enables block version sharing. commit ed85e8a33ac13c75967f8a893bb5de22b729c1ef Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-08-28 04:41:24 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Use reg1 in GEN_COUNTER_INC to avoid clobbering RAX commit c210fade27c2f39f078c9b1aec71a05532fb832b Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-17 19:26:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Implement newrange commit 3a3f7066986b6d0a24a6f7c72d2304381269b30d Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-31 12:57:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Additional invokesuper tests commit 3ecc6befcdfb14c6bfd345bd6bebd2e84dc32c27 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-31 12:58:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Implement invokesuper using cfp->ep[ME] check This fixes and re-enables invokesuper, replacing the existing guards with a guard on the method entry for the EP. commit fbde1d9bee1da0a27ead6ce3ae7bc4411b10198d Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-08 14:49:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Store block callee_cme in darray This allows a block version to have dependencies on multiple CMEs. commit 9d5b3e1d0f3d44a52dffb6ec1f09c361c3b419c7 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-09-01 03:26:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Add a small test for the code GC commit e527912fe0188f8dc614bdbef25bfdb724fea9ed Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-28 01:11:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Use jit_prepare_routine_call commit 69a2531249f17cb3a3bf0fde85256d5a20324344 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-05-22 12:18:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Implement gen_putstring commit 2c93ef7ab33a122f6f37fd7cab0bef48c3965a36 Author: Ufuk Kayserilioglu <ufuk.kayserilioglu@shopify.com> AuthorDate: 2021-08-28 01:03:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Add YJIT logo Adding YJIT logo with a link to https://yjit.org commit 2bd99d7d7a0537e4ad9fa49ca2c455b78c6045a3 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-08-27 06:11:41 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 typo, rename, comment commit 812597676ba2b1e3c41c50e9da624441e0c40a6b Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-27 03:45:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Avoid immediate side exits in checktype Previously checktype only supported heap objects, however it's not uncommon to receive an immediate, for example when string interpolating a Symbol or Integer. commit 54db64f7a59f1f14b280a80491336a128f792b42 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-08-27 03:58:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 filter out internal events. add comments. reorder commit 4b815abb373801b94d2471997f1467421620c1e5 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-08-27 03:28:59 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Lock, don't loock. commit 0ca04e2dd4d8624df09bf9065b4b96266da4771c Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-08-27 03:41:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Only clear the JIT function when we invalidate the entry block We should only clear the JIT function when the entry point is invalidated. Right now we only support compiling functions with a PC offset of zero (functions that take optional parameters can start at non-zero PC), so this patch just checks that the index is 0 before clearing the jit function commit b5a0baf1c0f969bba966ca0791f27487de5b1067 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-08-26 23:11:15 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Allow to toggle YJIT stats collection from runtime For use cases where you want to collect the metrics for a specific piece of code (typically a web request) you can have the stats turned off by default and then turn them on at runtime before executing the code you care about. commit 924e3ca84fba717f03bea7a4636f623f8e24b484 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-08-26 06:08:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 fix typo commit bd876c243aeace00ea312d0a5bbff091ccc84ba2 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-08-26 06:00:45 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 TracePoint support This change fixes some cases where YJIT fails to fire tracing events. Most of the situations YJIT did not handle correctly involves enabling tracing while running inside generated code. A new operation to invalidate all generated code is added, which uses patching to make generated code exit at the next VM instruction boundary. A new routine called `jit_prepare_routine_call()` is introduced to facilitate this and should be used when generating code that could allocate, or could otherwise use `RB_VM_LOCK_ENTER()`. The `c_return` event is fired in the middle of an instruction as opposed to at an instruction boundary, so it requires special handling. C method call return points are patched to go to a function which does everything the interpreter does, including firing the `c_return` event. The generated code for C method calls normally does not fire the event. Invalided code should not change after patching so the exits are not clobbered. A new variable is introduced to track the region of code that should not change. commit 0562459473f44c270784074a09a33ea30d68e457 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-08-26 05:51:41 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Redo the ivtable lookp once the ivar is set commit b3e993a64bb10e20280a7a5c604f9f0fe3939a4b Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-08-26 05:10:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Make sure that there is always an index table entry for getivars commit 7f2828d1c86c5508a49260bcecbfc2e78c00e49f Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-08-25 05:11:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Update README commit 0dc3bba6f2b2b1b23e1ec9dd2ec29f932c292db0 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-08-24 19:32:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Allow to compile with --yjit-stats support but not the full RUBY_DEBUG RUBY_DEBUG have a very significant performance overhead. Enough that YJIT with RUBY_DEBUG is noticeably slower than the interpreter without RUBY_DEBUG. This makes it hard to collect yjit-stats in production environments. By allowing to collect JIT statistics without the RUBy_DEBUG overhead, I hope to make such use cases smoother. commit 2ba090a1f9258035b40374f9ff9da3ff920701cd Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-08-10 22:10:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Add toregexp to yjit The FIXME is there so we remember to investigate why insns clears the temporary array. Is this necessary? If it's not we can remove it from both. Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> commit dd5082d7ca31adc66f885aed1af789adaf262a64 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-08-24 03:53:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Use cmov to handle Qundef case in getivar instead of side-exit commit c4b99d6a427060cadde7f5561c5a3db626bc26ba Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-08-23 23:43:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Add ASM comment commit 918668b4a92594675ee0dcbf698b320f015f01e0 Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-08-18 23:26:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 update README with correct repository URL commit e18b0b6ebab74e16774bc6121ffba785564b9fd6 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-20 06:03:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Implement putspecialobject commit 3edf29668ee2f8015d560508accbb35c85568823 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-19 09:32:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Add opt_regexpmatch2 commit 595fdf8d669da043fd0ca4bed7cb0c593595a80c Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-10 15:49:44 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Assign directly to C_ARG_REGS now when possible commit 8fa0ee4d404f7cc9ff64f8bafcd53f43aed64914 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-05 08:17:36 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:39 +0900 Use callee-saved regs for REG_SP, REG_EP, REG_CFP commit ed8aa3409a606a1c254eb94f7446827a11c66df2 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-11 07:41:27 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Detach mapping to local in ctx_set_local_type Similar to the previous fix to ctx_clear_local_types, we must detach mappings to a local if we are changing its value. commit 6d852e847e163fad0f2ccebe59c57d6921d3c472 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-09 18:11:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Fix stack size check for ctx_get_opnd_type Previously all stack operands would become unknown once the stack grew beyond a certain size. This worked, but unnecessarily hid available information. commit 48dca3348ae47fec5f2fa39ae899cbf62f2fae44 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-05 07:18:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Move yjit_type_of_value into yjit_core.c commit d78ea4abec1d030af2c5d99b03b3b4d959bd138c Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-28 15:41:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Implement verify_ctx for debugging commit a02002dc4f051515c0b65c17b2ed797bac454b56 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-28 15:40:51 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 More detection of immediate constants commit 2e707ee66f484c11d4548011911ad17bec2063b9 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-04 02:31:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Don't generate entry point when PC != 0 If we hit this at PC > 0 (ie. with an optional argument) the provided types and context are likely incorrect and it is likely this block can't be used. commit d2e8b99b5bc485b864d25c4293002214b0c64ced Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-08-05 02:23:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Implement tostring instruction for yjit Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> commit 5b4305f71c90d498c91d7b5038758e3557938802 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-07-27 09:19:01 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Simpler fix for -DUSE_EMBED_CI=0 Nobu pointed out that saving the old ci to a local is enough to keep it reachable. commit 8cf01dd25c126cf19b9146b71992b53c4541382e Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-07-27 09:17:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Revert "Fix use-after-free on USE_EMBED_CI=0" This reverts commit 1e0f2e4b09ca9443524acf4b50ffd50a80f330f3. commit 641ef34ddec2f8dd9af951f419fb084befea8175 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-02 05:05:51 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Allow upgrading first N types when stack is large commit 5d155fc8a1c44087142539d51b27410388552599 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-30 08:40:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Improve comments for mapping functions commit 786e51217806de2d5ba2eb62154045abdfa9771a Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-29 12:05:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Add regression test of invalid mapping merge This should have referenced MAX_TEMP_TYPES, not MAX_LOCAL_TYPES. commit 42574768a153bceb303fa74d50eb50a024f98173 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-28 15:38:24 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Fix ctx_clear_local_types commit 250b97da9be7d8d62be8055249497d9a93d83302 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-28 15:35:01 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Make ctx_diff aware of mappings commit 6c80150d402758fa07470cb88d5a15b1ffd15e6c Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-15 03:36:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Introduce ctx_{get,set}_opnd_mapping commit 4ea69e5c0b6163dbc6cdd75b2a44720d2b84a5f6 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-15 03:52:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Rename to ctx_upgrade_opnd_type commit 53079ca585161b882b37945b31802f6d477bbb1e Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-15 04:42:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Return if fixnums impossible commit f4f940e5a63e542a59fc7510332efb38ccafc10f Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-07-30 01:41:59 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Save PC and SP before accessing globals These instructions are marked as not leaf in insns.def, which indicate that they could raise exceptions and/or call Ruby methods. commit b91078ea743fda959ad42f17562c4f3091bcf585 Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-07-28 03:57:30 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Add setglobal to yjit Adds yjit support for setting global variables. Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Co-authored-by: John Hawthorn <john@hawthorn.email> commit dd23e4658b8587adf8d6fed96b574a979b169e46 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-07-28 00:54:45 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 If codeblock is NULL because YJIT is disabled, YJIT.runtime_stats should return Qnil commit 50029fb127c38b345dc781ea8f67bfc372cc5390 Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-07-28 02:48:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Add getglobal to yjit Adds getglobal to yjit and a test for it. Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> commit 6aa4637272204b7017a0414393ab05be6fa07672 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-21 02:22:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Fix and uncomment getlocal test Previously, under the scraper, this would side-exit because it was returning to a C method. Now that we use the jit_func entrypoint, this test no longer side-exits. commit 1891dcaa9faee3684d6c8abfc34cab5b01a63632 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-07-21 01:34:04 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Add flag so we can easily tell if all stats avail. Comment out broken test. commit 736eb29a3c8f5ee18b76c98428350c8ab8b361a0 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-07-20 09:25:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Fix use-after-free on USE_EMBED_CI=0 The old code didn't keep old_operands[0] reachable while allocating. You can crash it by requiring erb under GC stress mode. commit a0bb731f4f71ad3e57be57fb0a1a7347107dbf0d Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-07-20 00:26:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Add some YJIT runtime tests This is just for helping my own understanding, but could be useful for others as well. commit 71cef74432ef67edfd5635a9b9f8dffbbc33d392 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-20 03:12:51 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Clear JIT code when tracepoints get enabled Clear out any JIT code on iseqs when tracepoints get enabled. We can't handle tracepoints right now, so we'll just try to recompile later. commit e8617d0e7ea8039f3757896f547107f51566256b Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-16 07:43:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Make sure we can still compile with the JIT disabled If `--disable-jit-support` is passed to configure, then `jit_func` is removed from the iseq body and we can't compile YJIT. This commit detects when the JIT function pointer is gone and disables YJIT in that case. commit 41f405c486a01c1a16c3f102c11d41c8fbbafe60 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-16 06:30:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Remove the scraper Now that we're using the jit function entry point, we don't need the scraper. Thank you for your service, scraper. ❤️ commit 84a1e04e5873e511c8454983c3c34c6494bc5491 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-16 05:35:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Change register definitions to match the entry point calling convention The JIT entry point passes the CFP as RSI and the EC as RDI. Lets match that so we don't have to shuffle registers around. commit 2a59bd73125053a8f5a8d6ec129ef81f3da82fad Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-16 05:06:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Disable YJIT in MJIT tests commit 5336f6dadab17a511592dc739da4232dc02c2a16 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-16 04:40:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 make compiler happy commit 8fd3e0e9ff158205f473cd625298aedfe65fa0af Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-16 03:31:59 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:38 +0900 Fix BOP invalidation Instead of mutating the iseqs, just clear the JIT function. commit 05b5a7f01139a3c9610b80194e4385928dd4cd55 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-16 03:09:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Add a guard that we start executing on the first PC Methods with optional parameters don't always start executing at the first PC, but we compile all methods assuming that they do. This commit adds a guard to ensure that we're actually starting at the first PC for methods with optional params commit 0fdcdd267f7c3a482467f60e00049b88da1ae88c Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-14 08:04:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 fix alignment commit d0174d99c6fcbeae2d5cdaa34908b9ac117bb9c3 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-08 03:15:40 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Always use `ret` to return to the interpreter Always using `ret` to return to the interpreter means that we never have to check the VM_FRAME_FLAG_FINISH flag. In the case that we return `Qundef`, the interpreter will execute the cfp. We can take advantage of this by setting the PC to the instruction we can't handle, and let the interpreter pick up the ball from there. If we return a value other than Qundef, the interpreter will take that value as the "return value" from the JIT and push that to the SP of the caller The leave instruction puts the return value on the top of the calling frame's stack. YJIT does the same thing for leave instructions. However, when we're returning back to the interpreter, the leave instruction _should not_ put the return value on the top of the stack, but put it in RAX and use RET. This commit pops the last value from the stack pointer and puts it in RAX so that the interpreter is happy with SP. commit b70383fbea8d4acc49eceed24c83d87637412ff4 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-07-19 20:19:25 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 YJIT stats should always include the inlined and outlined sizes, regardless of RUBY_DEBUG and --yjit-stats/YJIT_STATS settings commit adfecd8f4d1d9a7f26c3acc309c371839b59ab3d Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-16 08:49:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Allow asserts on results, rather than stdout commit 9c9e23e2770bef9bc0168957676a2c2aa4f3dc1c Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-16 08:38:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Add assert_no_exits alias commit 4040ca82938445f8c1959c5b1e8619803ff78b1b Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-26 15:50:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 more testing commit 073e3b2eab769d7ac04092b41704310a094dde81 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-26 06:47:23 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Add test for recursion commit 7ed1e3ff0ba0f4fce1b500f27d1c68d94cc5f3b3 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-24 08:38:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Add test of yjit compilation commit 4dc821e643fc8b3356b8c868014d42bdff0f8cee Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-26 05:14:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Add YJIT.enabled? commit 9a436da064b966c1278ac530c6d6f2d02b0636dc Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-07-16 04:35:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Ensure we guard the value before we return Otherwise you can end up not implicitly calling `to_ary`, which if it has side-effects will result in different behavior. commit 1943b27fe9f7ad237a1c5119550d2d71958cf4cd Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-07-16 03:57:27 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Update yjit.rb commit 84920fe8eeab41d44dbe3c6b8ca076471694c3be Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-07-16 03:56:17 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Update yjit.rb Co-authored-by: Rafael França <rafael.franca@shopify.com> commit a9c96222a980970de865958f3d1b9a4fde6efed1 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-14 06:43:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Dup strings so we can mutate them I guess the strings are frozen, so we need to dup before mutating commit 27681f269463b65b566eb857c36a504db9190618 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-07-16 01:29:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 It's RUN_OPTS, not RUNOPTS!!! via @tenderlove commit 341d5bdcb229858935300056695f178a0ee4f8ff Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-07-15 02:46:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Code review for expandarray and tests commit 97025db90eaaa44770e4627ea3edc918086f3c0d Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-07-15 02:02:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Convert jumps to cmov commit bfde30c326788c614ea72c76b9ae22cfb5eef950 Author: Kevin Deisz <kevin.deisz@gmail.com> AuthorDate: 2021-07-08 03:45:48 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Implement expandarray commit be648e0940054a693105b1a3da6c2675ee724499 Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-07-15 04:16:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Implement splatarray commit cb5571eece818b33d2f6a33b892e7cda31231e69 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-13 05:35:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Flatten mappings when clearing locals We clear locals when we know their values might change (ex. when performing a method call). However previously values on the stack which were originally pushed from a local would still point back to that local. With this commit, when clearing locals, we'll now iterate over the mappings of the stack and copy the known type from the local to the stack mapping, removing the association to the local. This should mean both that we'll retain any information we already know about the local type, and that if a local is modified we won't incorrectly infer it's new type from the existing value on the stack. commit d5f18f7845f0f0fb3024ada63a552deac9c11ad7 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-07-14 23:08:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Add (void) for no arg functions commit 350b686a2c6cc8f27466222cf8520a8fda931ea2 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-07-14 03:56:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 First pass at code page GC object. commit 2440fafba00b6646b312a0c74798523bfa44bfe9 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-13 07:38:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 rb_struct_define_under needs a trailing NULL The last parameter to rb_struct_define_under needs to be NULL otherwise we can get a SEGV. commit dc8aca1883ebc76e02ff7097405d48f489c3535f Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-13 04:33:24 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Use push and pop in jit_rb_obj_not to avoid corrupting types commit 0c390e99652a2a8880f06be17c663d3408e97772 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-07-13 04:28:03 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Add assertions of types in jit_guard_known_klass commit 51c84f003391a45460d188be155a3e85057234fd Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-07-08 04:26:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Code page allocation code commit 09679f486c4e0d1bb09c98239c29620ea45533c5 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-08 04:43:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Add an lldb script to print YJIT comments This script is an lldb helper that just loops through all the comments stored and prints out the comment along with the address corresponding to the comment. For example, I'm crashing in JIT code at address 0x0000000110000168. Using the `lc` helper I can see that it's probably crashing inside the exit back to the interpreter ``` (lldb) bt 5 * thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x22220021) frame #0: 0x0000000110000168 * frame #1: 0x00000001002b5ff5 miniruby`invoke_block_from_c_bh [inlined] invoke_block(ec=0x0000000100e05350, iseq=0x0000000100c1ff10, self=0x0000000100c76cc0, captured=<unavailable>, cref=0x0000000000000000, type=<unavailable>, opt_pc=<unavailable>) at vm.c:1268:12 frame #2: 0x00000001002b5f7d miniruby`invoke_block_from_c_bh [inlined] invoke_iseq_block_from_c(ec=<unavailable>, captured=<unavailable>, self=0x0000000100c76cc0, argc=2, argv=<unavailable>, kw_splat=0, passed_block_handler=0x0000000000000000, cref=0x0000000000000000, is_lambda=<unavailable>, me=0x0000000000000000) at vm.c:1340 frame #3: 0x00000001002b5e14 miniruby`invoke_block_from_c_bh(ec=<unavailable>, block_handler=<unavailable>, argc=<unavailable>, argv=<unavailable>, kw_splat=0, passed_block_handler=0x0000000000000000, cref=0x0000000000000000, is_lambda=<unavailable>, force_blockarg=0) at vm.c:1358 frame #4: 0x000000010029860b miniruby`rb_yield_values(n=<unavailable>) at vm_eval.c:0 (lldb) lc 0x11000006d "putobject_INT2FIX_1_" 0x110000083 "leave" 0x110000087 "check for interrupts" 0x110000087 "RUBY_VM_CHECK_INTS(ec)" 0x110000098 "check for finish frame" 0x1100000ed "getlocal_WC_0" 0x110000107 "getlocal_WC_1" 0x11000012a "opt_send_without_block" 0x110000139 "opt_send_without_block" 0x11000013c "exit to interpreter" ``` commit ba9aa1f8efb77c6cf58ec4ea6bb81ced17acbc2b Author: Kevin Deisz <kevin.deisz@gmail.com> AuthorDate: 2021-07-07 05:26:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Implement opt_div commit b0ae4fdcfbe0004908adcc44f0ae0e3a3762917b Author: Kevin Deisz <kevin.deisz@gmail.com> AuthorDate: 2021-07-07 03:45:36 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Implement opt_mult Basically the same thing as opt_mod, but for multiplying. commit 4bea8af69f153b78ccac2d7b2bb7248fbd8d1c38 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-07-07 05:14:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Update deps commit 6cb4edd73ff23809887a72293b670d9c9de2a8fe Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-07-01 05:04:25 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Implement swap instruction commit 9e0a56fb24ed741d2215a4c4f7e560fa7b88dc8b Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-25 00:15:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Add FLONUM detection commit dfc5e5e35b927bcfc26af0b59d4952e97bdfb0f7 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-23 11:22:30 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Support guards against symbols and integers This adds guards commit c3f264b62cfee09a90fd3f75de9eaa36bc06645d Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-26 16:06:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Allow chaining on immediate guard In jit_guard_known_klass whenever we encounter a new class should recompile the current instruction. However, previously once jit_guard_known_klass had guarded for a heap object it would not recompile for any immediate (special const) objects arriving afterwards and would take a plain side-exit instead of a chain guard. This commit uses jit_chain_guard inside jit_guard_known_klass instead of the plain side exit, so that we can recompile for any special constants arriving afterwards. commit 6998246233e42a05883a7bfc9364bb5918456107 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-06-30 18:00:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Use snprintf rather than double strncpy. commit e2fe7e4aff27f498d56e44586276558355da34dd Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-06-30 17:41:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Percentages should be out of 100.0%, not 1.0%. commit db02d73e5e0489dd2028ea4b9572361ed5aa2cc9 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-06-30 03:34:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:37 +0900 Change strcpy of a static string to strncpy commit 5e164a77d536e0eea9c76ade036a3ff4d14176c3 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-06-30 02:25:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Better comments where we add exits-by-opcode to the stats hash, plus a presumably-unneeded strncpy just to be sure. commit 89ae21a09222c54ada556c449fd58a3e0e6f9816 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-06-30 00:52:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Add back ifdefs for RUBY_DEBUG, accidentally removed commit d2e9932908cf1a1075d07157bfa520a1714d43b0 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-06-30 00:36:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Convert YJIT stats reporting on exit from C to Ruby. commit 33227b1094d349bd64a2a588825cdf530ea5c459 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-06-29 23:37:12 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Add exit counters and inline/outlined code size to stats hash commit 0d63600e4f9d45e9814191e5ca7aecf9ef28a9df Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-06-29 07:00:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Partial revert of ceebc7fc98d I'm looking through the places where YJIT needs notifications. It looks like these changes to gc.c and vm_callinfo.h have become unnecessary since 84ab77ba592. This commit just makes the diff against upstream smaller, but otherwise shouldn't change any behavior. commit b385f311882be75e81ec9ce7ab74d2368fec1560 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-06-29 01:35:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Remove seven YJIT counters that are no longer used. commit 25792c17d44f4097ad5aedee87b4369cfdbef9f7 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-06-29 02:06:03 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Convert yjit static stat variables to counters commit 94cb5a6b1e9243526af341b420ac1cb9c4de56c0 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-24 05:15:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Implement opt_neq commit 3996e0ab07d06b7685eecd56a542e9672702dee2 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-06-24 09:28:42 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Add tests, comments, and an assert for invokesuper commit 6883aeda77c09c4982080f968491eacbc43a47e1 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-06-24 10:19:10 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Add a macro for tweaking default call threshold For use in development for writing `test.rb` and running with `make run`. commit 71560f8804d30509b5d0be6547469b089c63ab9a Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-19 08:56:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Add opt_size and opt_length commit e4bf905a2863a8ff1e3455e462dff0c8657aaa8e Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-19 05:30:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Use an st_table for optimized method codegen We recently added the ability to optimize a known cfunc with custom code generation for it. Previously we performed this lookup with a switch statement on the address of the c function being called. This commit swaps that out for a hash lookup on the method definition. For now I've kept this limited this to cfuncs, but it wouldn't take significant changes to make this work for other method types. This implemenation is similar to how the interpreter keeps track of which BOPs (basic operations) are redefined This has a few advantages: - Doesn't the C function's symbol to be exported (they're often static) - This could support VM_METHOD_TYPE_OPTIMIZED in the future. - This could support VM_METHOD_TYPE_ISEQ in the future. Kernel#class would be a good candidate for this since to yjit it will just be a constant push as we already know the class through BBV. - Slightly cleaner to declare - Less tightly coupled to each method's implementation And a couple minor trade-offs: - The looser coupling could be seen as a disadvantage (I don't think so, - If a cfunc is defined multiple times we would need to declare it on each definition. ex. BasicObject#== and BasicObject#equal?. This is rare compared to using an alias. commit 7030cae969085f2849bc265047397fadff8b97e3 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-06-24 02:55:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Try running with more YJIT options in CI to surface more bugs commit b63fcafbc953205a6547bff74cbfcb906f1f87fe Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-06-23 06:33:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Make jumps dashed and falls solid commit 089ad6dc784977d2deaacc8061a8a54888b8699d Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-06-22 08:48:03 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Clean graph formatting commit 46d5e10279b6f1cea46682b5a5da3a09c5ce0c07 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-06-11 05:16:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Add graphviz output This adds a method to blocks to get outgoing ids, then uses the outgoing ids to generate a graphviz graph. Two methods were added to the Block object. One method returns an id for the block, which is just the address of the underlying block. The other method returns a list of outgoing block ids. We can use Block#id in conjunction with Block#outgoing_ids to construct a graph of blocks commit f54e6e131099b5502f7d9be57f29bab11c70d841 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-06-23 05:37:48 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Update comment commit 30f20d7c3867d6e06d78efb5d7e99b4b4260c2ac Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-06-22 07:16:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Remove some MicroJIT vestiges Just happened to run across this, so lets fix them commit 0cd3b97e027332236625835578329580be12023c Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-06-22 09:18:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Handle non-material empty singleton class properly As an optimization, multiple objects could share the same singleton class. The optimization introduced in 6698e433934d810b16ee3636b63974c0a75c07f0 wasn't handling this correctly so was generating guards that never pass for the inputs we defer compilation to wait for. After generating identical code multiple times and failing, the call site is falsely recognized as megamorphic and it side exits. See disassembly for the following before this commit: def foo(obj) obj.itself end o = Object.new.singleton_class foo(o) puts YJIT.disasm(method(:foo)) See also: comment in rb_singleton_class_clone_and_attach(). commit 89110590a3864e4af1fd62df0182396b86ab17f3 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-06-22 08:26:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Disable invokesuper codegen for now. Add test The added test fails with SystemStackError with --yjit-call-threshold=1. commit da20ff1644a274aff4d5ad22c649c85d83e7e311 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-06-19 08:05:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Fix bug in generic case for gen_checktype When checking for T_HASH, which is Qnil and when the type check succeeds we were outputting to the stack a Qnil instead of a Qtrue. commit 7d252186fe803aa5e1fa37c953609266a2d8ba1d Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-18 03:29:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Simplify known class check for singletons Singleton classes should only ever be attached to one object. This means that checking for the object should be the same as checking for the class. This should be slightly faster by avoiding one memory acccess as well as allowing us to skip checking if the receiver is a heap object. This will be most common for calling class methods. commit 8c68f112d8ec9f5a9a416fc69602855bf43c4dd6 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-06-17 05:55:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Delay and be selective about when to discard local types jit_rb_obj_not() wants to access the type information of the receiver, but we were discarding type info of locals before jit_rb_obj_not() runs unncessarily. There are also cases we are unncessarily discarding local type info. For example, ivar reader and setter methods can never change local variables. commit 936ee5556280162da3016bf62ebe74ef07caf882 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-06-17 07:06:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Improve opt_not by expanding cfunc codegen This commit improves opt_not by making it correct when TrueClass#! and/or FalseClass#! is defined and genearting better code when the receiver is a heap object. guard_known_class() can now handle true, false, and nil, and we introduce a codegen function reimplementing rb_obj_not(), used when we know we are calling into rb_obj_not(). Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> Co-authored-by: Noah Gibbs <the.codefolio.guy@gmail.com> commit 78f64d14d47f49e7fe68aab202a056cec7b86218 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-15 08:44:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Add invokebuiltin_delegate_leave invokebuiltin_delegate can be run in place of invokebuiltin_delegate_leave because there is always a leave instruction afterwards (the interpreter takes advantage of this as well when rewriting iseqs for tracing). commit b93f59ced0a1dbab6b18839e8664a02ea7b3b1aa Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-13 06:02:51 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Implement invokebuiltin_delegate invokebuiltin_delegate is a special version of invokebuiltin used for sending a contiguous subset of the current method's locals. In some cases YJIT would already handle this for trivial cases it could be inlined, implementing this OP allows it to work when the method isn't inlinable (not marked as 'inline', does more than just call, not called from yjit, etc). commit d416a15c86f0641f5dda3d32c05a30fd5510ccf6 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-06-16 21:02:41 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Warn rather than raise when --yjit-stats is ignored commit f16ec70e4fe90028d8584b5447f447c429024dde Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-15 10:02:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Allow yjit.rb to work with frozen strings commit d1d3d2c0aab39511258c5c75b34396601a94f6f5 Author: Noah Gibbs <noah.gibbs@shopify.com> AuthorDate: 2021-06-14 20:07:27 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 If --yjit-stats is given without RUBY_DEBUG, that should be an error. commit 364cdda0f1b63ac0e541ed73a3185a26d309e4da Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-06-12 03:30:30 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Fix compiler warning commit 3365e1d719d83235fdea1e95086f1e96ef8fa5bd Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-06-12 00:40:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Allow to enable `--yjit-stats` via a env variable commit 9043ad3d74413823e62b11923652d272e41dc230 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-06-11 01:40:30 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Implement topn instruction This commit implements the topn instruction Co-Authored-By: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> Co-Authored-By: Noah Gibbs <noah.gibbs@shopify.com> commit 986b9b47d11829f1071f7d3bab78f847ea4543bf Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-10 09:01:57 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Better comments commit 0a3ee8b2e314ee0950dbdb39e9dd0da58f63f16f Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-10 11:04:22 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Avoid looping on invokesuper on module included multiple times commit 3fedf8329d0b0916be1cf6ec27ca76e3b2233d03 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-10 11:03:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Check for refinements in gen_invokesuper commit 0fb292609788efed17f482bf9b2474cfc0a7e2fb Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-10 08:31:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Guard against implicitly forwarded block commit ecd4487a48eb125515ab3e1e739803f7a1895e6a Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-06-10 02:49:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:36 +0900 Remove #define MAX_VERSIONS, now using command-line option commit 83c7f27adec684d16fb01f3b098d694ab15e9295 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-10 02:22:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Add invokesuper commit 99341d4a18805db6426c833da0a1d7e1e1f05bd4 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-06-09 03:15:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Fix issue in yjit_free_block causing segfault This addresses issue #55 commit 67c2cdc59a5fc8a82804c72a30a2d23ba36f2366 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-08 23:52:57 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Implement gen_getlocal This extracts the generation code from getlocal_wc1, since this is the same just with more loops inside vm_get_ep. commit 5432f46f6a7a35a8d2a924eae7b1e29289a58292 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-06-08 05:12:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Can't add comments to the outlined code block commit ed636b59edf18199c9a3477bfb7b514c7756778a Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-08 01:35:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Add duparray to YJIT codegen commit d77c989ac73274a0908746c0f861fb8936f64dfc Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-05 08:49:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Fix check for leaf invokebuiltin Also added a comment when inlining a leaf builtin commit 9a55fd37c926f7297e2039a0436aae755a06ce78 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-06-04 04:25:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Update README.md commit 43acb9d7f0d96caec6c517d3e9097b956bc91dd9 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-06-04 01:54:12 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Update README.md commit cdc9cb6e97ca0868057465b11e8b498035931f69 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-06-04 01:04:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Stylize macOS correctly Yes, it's all very confusing. commit 7dc497e15874beab7f6b495303a19dd62b65b340 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-06-04 00:47:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Update README.md commit b1fab663eb21fdab23bd15131a3021e2011a1e6f Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-06-04 00:09:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Update README.md commit 860589c7fa63faa837e0922f581ef8b1af7837d4 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-06-03 21:39:52 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Use builtin_inline_p to avoid pushing a frame for primitive C methods (#63) * Use builtin_inline_p to skip a frame of C methods * Fix bugs in primitive cfunc call code * Remove if (push_frame) {} * Remove if (push_frame) {} * Push Aaron's fix to avoid hardcoding insn lengths Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com> commit 9f46e6e64b826f555dd9cf80839f1aa89fdc36fd Author: Aaron Patterson <aaron.patterson@shopify.com> AuthorDate: 2021-06-03 02:02:42 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Disable YJIT while running MJIT tests (#62) Two JITs running at once may result in strange interactions. Lets disable YJIT while running the MJIT tests. commit ea33b0a9baa26e96b1a34d7823ec0235d0e0bd90 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-03 00:15:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Add concatstrings to yjit codegen (#58) * Add ETYPE_TRUE and ETYPE_FALSE * Implement checktype * Implement concatstrings * Update deps commit eb6e5be038a94c622f09188c957370d86650628c Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-05-28 02:59:41 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Add newhash and newarray instructions to yjit codegen (#48) * Implement gen_newarray * Implement newhash for n=0 * Add yjit tests for newhash/newarray * Fix integer size warning on clang * Save PC and SP in newhash and newarray Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> commit d01204a15da9afcd4ddcc48ec022f9bf92db0a70 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-05-28 00:30:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Disable extra T_OBJECT check added because of Nokogiri commit 546ca8167d341bca2b7a1927950a0369b5185bf0 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-05-27 05:09:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Guard for T_OBJECT at compile time (#53) Previously this could crash on Nokogiri when JITing the getivar instruction because we would attempt to treat Nokogiri::XML::Document's T_DATA as a T_OBJECT in calling rb_iv_index_tbl_lookup. This commit also checks for T_OBJECT at compile time and emits the rb_ivar_get fallback in that case. Co-authored-by: HParker <HParker@github.com> Co-authored-by: Dinah Shi <dinahshi@github.com> Co-authored-by: HParker <HParker@github.com> Co-authored-by: Dinah Shi <dinahshi@github.com> commit 9283fc1bb554da800fe02bdd1653520f8b743344 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-05-27 04:40:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Implement opt_freeze and opt_uminus (#49) commit b415ceb92e464011a9326c9cb5e15a84c39da330 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-27 04:25:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Increase default YJIT call threshold to 10. Add exec mem size arg. (#52) commit 764740c6615292dc994707b964c135871149fb2b Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-05-26 05:12:48 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Merge pull request #50 from jhawthorn/detect_type Detect types from putobject and getinlinecache commit 844067f7ee40a406314c6b570df82fc43d519131 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-22 06:51:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Update README.md commit 6ecb007f6eb612d7d7b2ee12fbcb65c834fc3359 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-05-22 04:33:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Recommend installing libcapstone commit 1aace65dc045909b6c33491fe3f5218c33117e0a Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-05-19 06:54:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Add comment commit 03da234eb019902176f8d456fceaefee11858a59 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-05-19 04:37:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Add T_OBJECT check to getivar commit a66dce146a1ea2c38a8f4133f598d4316c39c910 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-14 09:09:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Implement opt_not with deferred compilation (#44) commit da30f21ab5122b55f69fb41290f587aadd4fb8f7 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-05-14 02:25:12 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Try to fix MJIT symbol clash with cargo cult commit 0db85218aa6d398222ffeb25a0b6858c378fd59e Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-13 04:22:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Avoid interrupt checks for forward branches (#41) commit 6b5d26dc788bfcf1d39db0bfe25645173507299c Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-05-12 23:18:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Implement basic encodings for xchg commit 5c2f74fc32951fc038dca465985a4859c517ef47 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-05-12 05:33:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Fix encoding of test x86 instruction commit 54fe43b45ce65f0e2cde4d4e950303893a721ebd Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-12 05:06:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Implement defined bytecode (#39) commit 7ce6d1f0c2683b5d70b2c8055d893fd3052a266a Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-12 02:14:12 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Update README.md commit 3677b233ddc5c0410b71590e709bb9e940e58fa3 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-12 01:51:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Implement opt_nil_p and opt_empty_b by delegating to send (#35) commit d6412126bcafb4a123aebe4f614e45d5d1064948 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-11 08:43:30 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Implement setivar with a plain old function call (#34) * Implement setivar with a plain old function call * Remove return commit 7eef8f09c09d054b0554a304456a0bbd9df40d86 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-05-11 06:05:12 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Implement getblockparamproxy * Implement getblockparamproxy * Parallel runner: wait for timeout thread to terminate after killing Or else the leak cheaker could sees the thread as running and cause test failures in test-tool. * Add a comment, use jne * Comment about where 0x3 comes from commit ce928473d054b3fcbe2b05a1432b770dccd54bef Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-11 04:32:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Deletate to opt_send_without_block for opt_ltlt (#33) commit 0c3842d154185d498f468b068c5702ceb5ddb216 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-05-11 00:50:21 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Implement opt_aset as interpreter handler call commit c9feb72b650a2e8f2ab0eab164e1ffd52f739396 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-08 05:10:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Implement opt_mod as call to interpreter function (#29) commit e2c1d69331a037b7c26508d69d6e1ed0f6e70961 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-08 03:08:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:35 +0900 Implement opt_eq by calling interpreter function (#28) commit e22657b88708d594720b40f7d9a350b4bace42ff Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-07 06:12:17 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Implement branchnil bytecode (#26) commit 6c793a2fed4592d2196d9e43df58fba9274faafb Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-07 04:39:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Update README.md commit 4f24f3afc7baed2294614357486e10e1f055c661 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-07 04:31:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Update README.md commit 0d64f5e8a89a0ca5caba5289249ba9ee34fa4303 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-05-07 01:24:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Check for easy-to-handle cases of block param (#24) In some cases, methods taking block parameters don't require extra parameter setup. They are fairly popular in railsbench. commit ad601cef8af4bc93a53c8437be4fe8749191f621 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-06 05:36:36 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Update README.md Add section documenting command-line arguments commit e5f8b417862cf7a7d03c82067b9870151cd6ce28 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-05-06 05:06:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Implement send with alias method (#23) * Implement send with alias method * Add alias_method tests commit 0758115d112a1ff452876d3689d20e84d5ff1e37 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-05-05 01:35:51 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Implement send with blocks * Implement send with blocks Not that much extra work compared to `opt_send_without_block`. Moved the stack over flow check because it could've exited after changes are made to cfp. * rename oswb counters * Might as well implement sending block to cfuncs * Disable sending blocks to cfuncs for now * Reconstruct interpreter sp before calling into cfuncs In case the callee cfunc calls a method or delegates to a block. This also has the side benefit of letting call sites that sometimes are iseq calls and sometimes cfunc call share the same successor. * only sync with interpreter sp when passing a block Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> Co-authored-by: Aaron Patterson <aaron.patterson@shopify.com> commit 59e5f6b83b3d55fb4a2e4d9669c31d5f31b1fda0 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-30 06:15:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Implement dupn for n==2 (only case used in RDoc/railsbench) (#20) * Implement dupn for n==2 (only case used in RDoc/railsbench) * Implement adjuststack bytecode commit 8249f6ef57df76d2789b728f0646a34dbf207c94 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-30 04:09:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Print top-20 common exit reasons instead of just top-10 (#19) commit 684e84df7cdfd47d2b66d717369121337a2bd32d Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-30 00:47:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Use rb_ivar_get() for general case of getivar (#17) * Use rb_ivar_get() for general case of getivar Pretty straight forward. Buys about 1% coverage on railsbench. * Update yjit_codegen.c Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> commit 62c1297e246966bd3b309d3a3ce3cd0dc78c389d Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-29 05:55:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Implement setn bytecode (#15) commit 36134f7d293b3f02e85599a3374d670aa575aeb0 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-29 01:59:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Implement calls to methods with simple optional params * Implement calls to methods with simple optional params * Remove unnecessary MJIT_STATIC See comment for MJIT_STATIC. I added it not knowing whether it's required because the function next to it has it. Don't use it and wait for problems to come up instead. * Better naming, some comments * Count bailing on kw only iseqs On railsbench: ``` opt_send_without_block exit reasons: bmethod 59729 (27.7%) optimized_method 59137 (27.5%) iseq_complex_callee 41362 (19.2%) alias_method 33346 (15.5%) callsite_not_simple 19170 ( 8.9%) iseq_only_keywords 1300 ( 0.6%) kw_splat 1299 ( 0.6%) cfunc_ruby_array_varg 18 ( 0.0%) ``` commit bce6dea72d0081e4777b80e1de3b76fbfcde9f0a Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-28 05:27:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Fix assertions in `invalidate_block_version()`, add small repro (#14) * Fix block invalidation assertions * Add Alan's small repro for double invalidation bug commit cfaf6013036bf1294d4dead83155daeb5a95308e Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-28 04:05:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Update README.md commit cf2b508375c0b1d3c67f108861afb454a5110790 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-28 00:37:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Try to alloc executable memory within rel32 range on Linux machines (#12) * Use INT32_MIN, INT32_MAX, etc. constants in yjit_asm.c * Print warning on stderr when code past rel32 jump range * Fix preprocessor snafu * Move rel32 warning into --yjit-stats * Try to allocate within rel32 offset on Linux machines * Update yjit_asm.c Co-authored-by: Alan Wu <XrXr@users.noreply.github.com> * On Linux, use sysconf to get the page size Co-authored-by: Alan Wu <XrXr@users.noreply.github.com> commit 34dcd0b3e642778b34c354cee503826f1fc373fc Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-28 00:25:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Update README.md commit 31ab35309b12db2d7d4c0b387dc6fbb531068e70 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-27 00:14:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Update common.mk commit 8bd3e5015b52713753b06879155615e101a1e467 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-26 23:41:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Update README.md commit 96f4f918b04fad1401d4f41cd11d97d9d4d28c7d Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-24 13:16:48 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Implement greedy versioning. Refactor versioning logic. (#10) * Implement eager versioning. Refactor versioning logic. * Add --version-limit and --greedy-versioning command-line args commit 4c7afa64b49d792da586709b2bbc1aa2f04b5712 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-23 11:11:44 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Make gen_opt_aref() delegate to gen_opt_send_without_block() (#9) Basically mirroring the interpreter for the general case. commit eaf039af982b19a854ad705cd441144ae648b791 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-23 07:24:45 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Create GitHub workflow to run ASM tests (#8) * Create GitHub workflow to run ASM tests * Specify path * Attempt #3 * Set bash flags to print commands, stop on first error * Remove clear command from test_asm.sh * Use clang commit f1b11fa454551403ca74362329d6a0843363fce5 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-23 01:15:52 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Comment edits commit 3e80104024b8663ab99d2571f2cf1cdf054a89f6 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-23 00:55:30 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Aesthetic changes and add missing counter commit 8106a95efb19fa0a11e2cc7ecc4889b216239896 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-20 07:52:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 English commit 10c0275b114d05631e649caaf7b2ddce893b5692 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-20 07:50:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Use jmp with memory operand for smaller code size commit 1610dc0864a330006085ac9e9d6428b89d6c0ccd Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-20 07:23:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 YJIT: use a context-free landing pad to optimize `leave` This allows gen_leave to always do an indirect to cfp->jit_return. commit 9bd779cbf96fc6abc6135502d8580a4765d4b28d Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-22 23:10:15 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Don't check if value is immediate if context has type info commit e66c9f8c621eb710085b45a4274e2a2135de57d5 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-22 12:36:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Remove redundant mov commit adbd7ff332a34e674d7e6281134248b1292fe60f Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-22 06:24:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Fix frozen check (use jnz) and move heap object check. commit 38e67ccd157497e228b22cd4cd1f9416b61cf0b4 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-22 06:16:44 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Add setivar exit reasons to --yjit-stats commit 435d7c5088295be99d83464f2c924401844f03af Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-04-22 05:01:03 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Improve set instance variable This commit improves the set ivar implementation. commit 035b5ac3bb3e1e9414aee3c285414c739c9c54d2 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-21 23:33:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Remove token_paste.h dep from common.mk commit ac88c61ed8a4740335e856617704b3959daac33c Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-04-21 05:47:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 cYjitCodeComment is only defined if we're not in debugging mode This commit fixes a build error. If we build in release mode (IOW *without* RUBY_DEBUG), then this constant isn't defined. Release mode builds are required by yjit-bench commit 60496b6666765ab8cb63816ca1d525fcfbcf7abc Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-21 05:14:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Pass self type through method calls commit ef5cfcae0dd8de244333b52ff3cc80afb8ddbcb4 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-21 02:57:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Delete codeql-analysis-2.yml commit 852ffe2627076fcac0b8d50731637c59ba8e259a Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-21 02:52:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Create codeql-analysis-2.yml commit 10217d147c17bcf3c092ff192911fdb254cef236 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-21 00:36:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:34 +0900 Rename YJIT readme to README.md commit 51e46eac5f225227460bd203104886d77828cd34 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-21 00:36:01 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Rename Ruby README to README_ruby.md commit 0cc73ca2a9a2aa5276cd022be9891475a15ecee3 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-20 06:07:27 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Malloc branch entries (#112) * Malloc branch entries * Add ASM comment for stack overflow check * WIP * Fix branch GC code. Add rb_darray_remove_unordered(). * Fix block end_pos after branch rewriting. Remove dst_patched bits. commit 33c975b813a2be9fb02e526b7a63096dff385614 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-20 04:29:48 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Merge pull request #114 from Shopify/yjit-dup-comments YJIT: Avoid adding duplicate code comments commit 23f88957e691cbc11375627bbc26a35cd3a3465c Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-20 02:50:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Switch to 2-comparison heap object check commit f2530f884eff1910fb69201cb0a009332fa1b150 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-16 04:00:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Improve codegen and type tracking in putobject commit 6250506de2f11bc45d1d7a0cfb2a4d15390c16ca Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-16 03:24:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Remove debug prints commit edaf12def626a2b06fc2cf9bf53db9b0f45b88ac Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-16 03:16:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Fix local type tracking in getlocal, setlocal. Add test. commit 791f20af6e9a5db37e69ed33c6b91fc15d9fe824 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-16 01:21:51 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 WIP commit b69951cf55a3bbd50a4d6e84185ee0f687946530 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-10 08:08:23 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 add a couple of getivar tests for symbols commit 476a3f4be783d021a4a8b9aacd9486498d155ec8 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-10 07:47:27 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Use a insn_opnd instead of a bool commit 646c7b3ff69af10d5155263d80b0ed21852a1dab Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-14 03:37:04 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Temporarily increase MAX_BRANCHES until we have a better solution commit dac830553ef486a97beb57d1531ccc9a0a4bdd9b Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-14 03:32:21 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Diff the local types in ctx_diff() commit 4442029ec496754fcad38fa05c3d03553a38107e Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-10 01:16:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 move assert. opnd.idx doesn't make sense for OPND_SELF commit 4ea2e753f65e1e7f4c62330abda256b3b56e72d4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-02 03:31:57 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 YJIT: implement calls to ivar getter methods commit 53ff2d791d5e2c303a61d5873bcd03007366be88 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-10 03:48:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Fix bug in ctx_set_local_type() commit 6164274c76d31bc447a92c59c8d277670a93f229 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-10 00:44:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Re-enable local type tracking, until first call commit 0805cba73572a5150975a0dfdc4461ae0872e90c Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-10 03:46:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Update yjit_codegen.c commit 31acd22d3be745966abc8ded145f03d4114caf63 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-10 03:29:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Assert for running out of branches in all builds commit 2404ff691d81183dc7d1bdc844fd7d556edf6837 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-10 03:01:27 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Factor our guard_two_fixnums(). Implement opt_or. commit 7ee3636f61631429fe39d2d213efe1b711babbab Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-09 23:14:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Remove unnamed enums because MSVC sux commit f6e3f75c2b7503eb89f517c57ac4ea97dc2752b4 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-09 05:40:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Introduce concept of YJIT instruction operands commit 40b329096660c55f9f30069a1b72aec026ee19b1 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-09 07:25:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Use autogen.sh in YJIT's CI setup See d825e34962540d345eb3c5a70eb264b415e915a5 commit b626dd7211b9d45f1dab6f82057445781f34f20f Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-25 07:07:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 YJIT: Fancier opt_getinlinecache Make sure `opt_getinlinecache` is in a block all on its own, and invalidate it from the interpreter when `opt_setinlinecache`. It will recompile with a filled cache the second time around. This lets YJIT runs well when the IC for constant is cold. commit e81d1f4ae31086c19b936bb8d0bf4650b0c36f44 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-09 06:55:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Fix stack-use-after-scope in gen_direct_jump() ASAN can catch these type of things for us, but the scraper can't handle ASAN :/. To be more resilient to refactoring, extend the lifetime of `generic_ctx` in branch_stub_hit() too. commit 032b2ecf4b026d2945659d8de325ad3ef6ad4734 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-09 04:18:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Compute percentage of exits for top-10 exit ops commit 7108da16e9ec39d682572c47ac3e99035c0683f0 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-09 03:31:27 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Fix two stats bugs, refactor stats code, add total_insn_count print commit 04243533fc3f9b1ac71160dbe235da9995a994ea Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-09 02:12:04 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Update yjit.md commit 515fb988fe3c3ad28fdcaea4f043ea6a445c5213 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-08 04:27:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 YJIT: add comments to disassembly Introduce a new macro `ADD_COMMENT(cb, comment)` that records a comment for the current write position in the code block. Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> Co-authored-by: Aaron Patterson <aaron.patterson@shopify.com> commit 543bdde6c21f071e673aa8090086e1045ee4f2d9 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-08 02:10:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Update yjit_iface.c commit 7f4b9e8e6103c039f1f73e6d51f956f8c662b49a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-07 05:28:41 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 YJIT: make ratio_in_yjit more accurate Don't count instructions that take exit to the interpreter. commit 42af04efee38de4435a04ea0487fce483db10dee Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-08 04:36:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Add flag bits to avoid compiling stubs multiple times. Fixes bug involving ractors and branch stubs. commit 54312d777cc22a52cfafcce0a0a20ed48375b82e Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-07 04:15:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Disable local type tracking for now commit cbbae12a96e1857c414b4592376886fc8bb5da1a Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-07 03:44:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Keep track of local types in the context commit e98d2c5ec818abe9a274055c2308bf3488358529 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-07 01:00:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 Add ctcx_stack_push_local() commit ad5cc39dcfd25e62ee92f7e82d4913631ab42355 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-04-08 04:52:42 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:33 +0900 update deps commit 681e76c6bca0ddc6db3cd4d332720e3b411e23d2 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-03-26 05:42:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Fix case commit 4faaa8e5dc28f31f71f3ed145e834b94cd9f84d5 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-04-08 04:51:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Collect statistics about binding allocations / local variable set This commit collects statistics about how many binding objects are allocated as well as the number of local variables set on bindings. Statistics are output along with other YJIT stats. Here is an example of the output: ``` ***YJIT: Printing runtime counters from yjit.rb*** Number of Bindings Allocated: 195 Number of locals modified through binding: 0 opt_send_without_block exit reasons: ivar_get_method 7515891 (40.4%) se_cc_klass_differ 3081330 (16.6%) iseq_argc_mismatch 1564578 ( 8.4%) se_receiver_not_heap 1557663 ( 8.4%) ic_empty 1407064 ( 7.6%) optimized_method 995823 ( 5.4%) iseq_not_simple 819413 ( 4.4%) alias_method 706972 ( 3.8%) bmethod 685253 ( 3.7%) callsite_not_simple 225983 ( 1.2%) kw_splat 25999 ( 0.1%) ivar_set_method 902 ( 0.0%) cfunc_toomany_args 394 ( 0.0%) refined_method 42 ( 0.0%) cfunc_ruby_array_varg 29 ( 0.0%) invalid_cme 4 ( 0.0%) leave exit reasons: se_finish_frame 4067107 (100.0%) se_interrupt 24 ( 0.0%) getinstancevariable exit reasons: undef 121177 (100.0%) idx_out_of_range 5 ( 0.0%) opt_aref exit reasons: (all relevant counters are zero) compiled_iseq_count: 3944 main_block_code_size: 1.1 MiB side_block_code_size: 0.6 MiB vm_insns_count: 1137268516 yjit_exec_insns_count: 414015644 ratio_in_yjit: 26.7% avg_len_in_yjit: 7.5 total_exit_count: 55491789 most frequent exit op: opt_send_without_block: 18587628 (33.5%) opt_getinlinecache: 11075822 (20.0%) send: 4949300 (8.9%) leave: 4067131 (7.3%) defined: 3975196 (7.2%) setinstancevariable: 3567315 (6.4%) invokesuper: 2982163 (5.4%) getblockparamproxy: 2168852 (3.9%) opt_nil_p: 2104524 (3.8%) opt_aref: 2013858 (3.6%) ``` Running RailsBench allocates 195 binding objects but doesn't set any local variables. commit 0881e018b567362ba6405eeb788d76d770653978 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-07 01:19:45 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Add comments and asserts for clarity commit d1e9e4566f93e219314f361b88b4a0e003a25241 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-07 00:26:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Update yjit_asm.c commit 3d53ee17616d9c028d2b537989c4cd2e1d08261b Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-07 00:24:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Fill uninitialized memory with int3 commit 131fc9c074d464c6baa548ab89a1d1d1dcc5c571 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-07 00:03:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Readd const arguments commit 5b613938eb63d3dd82feb32b4eefbe345beaf199 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-06 23:36:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Fix branch rewrite issue commit 2b522ad9f5a5a3baa1fc16b1b45d5d28773d5f67 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-04-06 22:38:24 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Update yjit_core.c commit 21a63450236af6eaae954b367385c071231dc03f Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-06 06:59:25 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 YJIT: adjust branch shape properly when target already exists The old code decides branch->shape based on the write position of the native code block, which is unsound in case the block already exists and no new code is written to the write position. Make this decision with the start address of the target block instead. Also handle when the branch becomes smaller after patching. commit e56bd95ca05fa8ff07455e62143b260bcda74926 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-06 03:07:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Rename first call => threshold one commit c299112fd7eb4432f3fdc83a9f5716e8e79249f4 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-02 05:56:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 use ctx_stack_push_self() commit 215a2f401068fe0afc18a22377082d0d3d8644fd Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-01 23:43:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Fix type_diff logic after Alan pointed out errors commit aee44e4f2bcd795b5a81c72cb75d742103bb070b Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-01 04:54:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Part 1 of improved type tracking logic commit e47dd8bb88a10eb20afb8dc37f19ae6ee8e56f4b Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-31 05:40:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 WIP commit c5f31264287a1c587448e9a437603da1b8497e67 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-31 04:37:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Commit WIP commit ac1aa84c1a866ee58c1f75874ceb226b297d676d Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-30 23:59:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 First sketch at temp type mapping commit cb46a17ca16935c61bdc82e44cad0c6450e8a4ad Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-04-02 04:04:21 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Log code size in bytes instead of MiB commit 983bcd5ac2b0fe41f0cf05cd2ce0e1d2d1d73ada Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-01 23:44:45 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Fix improper use of st_foreach_with_replace Replacing the key was only okay if the new key hashes to the same thing as the old key. That doesn't hold for YJIT's table when the keys move. commit d03b7f77d45105bfe613b986bfddaaa6c1de6831 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-01 07:27:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Fix GCC warnings Mostly unused and uninitialized warnings here and there commit 9911f486a7d9902a900f91cfa607e8cacdda6494 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-01 01:50:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Stop all other ractors when patching machine code commit 784ef4cbbd563053bfc77b3e367f1c74bc89ab37 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-31 04:24:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Add a CI check for --yjit-call-threshold=1 Mostly copied from mjit.yml. Thank you Kokubun-san! commit 2b09e2fe7bc9ebcc6e6678317b789d8a35f587e6 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-31 03:57:41 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Add a comment commit 5ec94e0d4ad49cd249312c29cbbe9369637b9b48 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-31 06:05:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Fix issue with version matching logic commit fe784d1449ac6a9c2280ce1b29b19fa86d108fe9 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-30 05:17:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Track interpreter return as an exit reason for leave instr commit 0e5c3d66b8e6c3d1d828ce76a4c2caab3d1b71c1 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-30 03:46:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Implement opt_gt commit 98e93d6a8fbf1070e1b334dd1b1cf313c221bb17 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-03-26 23:05:22 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Update yjit.md commit 63f875b841e23c7233394a8a266dc772aa9320d2 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-24 01:53:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Factor out protected callee guard, check for private callees We didn't need the private check before because we were lifting from the interpreter's cache, and the interpreter only caches when visibility checks go through. commit 8173d54020e2128e5d02f50b66ad953aac528714 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-24 00:47:52 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Factor out jit_jump_to_next_insn commit fbb514f67ec2d455359f8ea7b86ce23b66c60292 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-23 10:04:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Introduce yjit_guard_known_klass() commit a8f7eb2f3566194ead1d5aa541cec32b968855cf Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-23 09:12:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Polymorphic opt_send_without_block commit ec1cbbb07d00828e6265074ca4977a8dae6b8b29 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-18 08:07:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Get rid of dependency on rb_call_cache commit 0cd9120f177b153126a093e4beabb5784cd0ab99 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-12 04:46:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 YJIT: hash specialization for opt_aref Make it lazy and add a hash specialization in addition to the array specialization. commit db53decad6db5eedf9d9090e14f7d2216549f9d0 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-12 01:25:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Exit reason breakdown for opt_aref commit c04e5188d582a3921f44594e88b29ae96abd82a4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-18 22:13:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 YJIT: use a flat array for finding codegen functions Simpler and faster. commit 927ead9f7510ff536eea2010e007a92a2bba61c8 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-18 00:54:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 YJIT: unify exits. Patch iseqs only when necessary * YJIT: unify exits. Patch iseqs only when necessary This fixes the gotcha that returning YJIT_CANT_COPMILE for an instruction at entry position leading to infinite loop. Also, iseq patching is only done only when necessary, which should make most exits faster. * Now that exits are the same, return YJIT_CANT_COMPILE commit f505446d1f03cb24eeb771959efece2e5d89df73 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-18 00:00:36 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Yjit: rename context struct commit 4b80358e5d0c83cd2925fd458f2c83136f804e5c Author: Dylan Thacker-Smith <Dylan.Smith@shopify.com> AuthorDate: 2021-03-15 16:19:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Fix condition in cb_align_pos which should return early when aligned commit aba4047955b26a8408a92ad4b0739fe89f1a44fe Author: Marc Feeley <feeley@iro.umontreal.ca> AuthorDate: 2021-03-13 21:43:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:32 +0900 Update yjit.md Fix a typo in the bibtex. commit f4c04a9595d348d20100c17339b9185d9ed1ee71 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-13 02:54:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Tweak include order in yjit_core.c This is playing it safe. Ruby headers rely on some macros generated by autoconf that affect what system headers behave. We should take care to bring in those configs before including systme headers to stay consistent with the rest of Ruby. commit 5d834bcf9fb9596fd15f9e657a94caa8716b3f10 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-13 02:22:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 YJIT: lazy polymorphic getinstancevariable Lazily compile out a chain of checks for different known classes and whether `self` embeds its ivars or not. * Remove trailing whitespaces * Get proper addresss in Capstone disassembly * Lowercase address in Capstone disassembly Capstone uses lowercase for jump targets in generated listings. Let's match it. * Use the same successor in getivar guard chains Cuts down on duplication * Address reviews * Fix copypasta error * Add a comment commit 439db7b81b588a1ee12475568cab7b8dab4e2cd3 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-13 00:41:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Add metric for average # of insns spent in yjit before exiting commit cee597bd01ef999d5b8b86b639260282aa594467 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-13 02:25:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Include ruby/ruby.h before vm_core.h This is how vm.c does it, and if we don't follow it in yjit compilation units, rb_vm_t would have a conflicting size. commit fe3bd570072b35e47e03ea23e2bc42a4d8a7681d Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-12 04:15:01 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Remove trailing whitespaces commit cf011b66761cb942899110117f56001e849733da Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-12 01:19:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Check for null Sometimes you bop before you init, you know? commit c6156e511338450db2f39abc45e1ee1b5508bd6b Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-11 01:18:17 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Fix trailing spaces commit 4ccfbfe6fa9676f4c177fdbd217cecc361c9aa0f Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-03-10 06:31:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Update yjit.md commit c15a577eda78f1944ade1e9ae1bdadeaeee3c8d7 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-03-10 04:01:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Make Blocks depend on BOPS When a BOP is redefined, the BOP redefinition callback will invalidate any blocks that depend on BOPS. This allows us to eliminate runtime checks for BOP redefinition. commit 46874b8fb979d0bf46d5d3b6e1523293201441e8 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-03-09 01:04:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Update yjit.md commit c56243dab4a2e07d3ba4942fdd8ec72a3b56218a Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-03-09 01:02:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Update yjit.md commit 4e2eb7695e9b45cb5d2ae757bdb5c2043d78be78 Author: Jose Narvaez <goyox86@gmail.com> AuthorDate: 2021-03-07 08:46:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Yet Another Ruby JIT! Renaming uJIT to YJIT. AKA s/ujit/yjit/g. commit 7f7e79d80221949f93c7ded7cbd8d26afd3dea1d Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-07 01:05:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 YJIT: handle when all counters are zero in printout code Also filter with not equal to zero instead of greater than zero, in case there is memory corruption and counters are negative. Fixes Shopify/ruby#70 commit eaab6605b75a2510f5cf0ae781817de3b7d6e39f Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-03-06 05:55:10 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Update ujit_core.h commit 0a160407dad305d18a28bb34f72fec8dcd6bfc6b Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-03-06 05:54:21 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Update ujit_core.h Co-authored-by: Alan Wu <XrXr@users.noreply.github.com> commit 7f4000b1f430c22fd35c50201271d0abd4fff358 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-06 05:45:44 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Machinery to implement deferred compilation commit f8b4082be4e63876b6bf7d1aa66eaaa9bcb5d4ca Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-05 05:56:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 YJIT: fix leak, remove unused field on block_t This field was never used and is now covered by jit_mov_gc_ptr. commit 7de8ce4efcfd23515d4e4b6a6f80e142438df758 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-05 05:31:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 YJIT: Use 2D array to group block versions For deferred compilation, we sometimes want to care about the order of the block versions. Use an array instead of a linked list to do that. commit d6d58795a90d338ac8fb308c8a79044172778485 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-05 05:16:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Rename test files commit 4a99990b36e29f24f2e0cb12531fa4de65cce071 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-03-05 04:13:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Update yjit.md commit e4e453c7d0bd93e3d76879285a29f0bbb7edfab4 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-03-05 04:13:10 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Update yjit.md commit 7b38bf189ef208039df84324e6df72479a0af878 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-03-05 04:12:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:31 +0900 Update yjit.md commit f2b170b01d36f3cab2671cc575e75c916bc95bfa Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-03-05 03:35:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update and rename ujit.md to yjit.md commit abc016ad2c85a15ad6a512be57f47d893bc81e27 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-05 02:05:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 WIP refactor block lists to use darray commit 5c497dfd7f86c88c9730dda397fecb3aa943e84d Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-03-05 01:07:27 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ujit.md commit eccf4bcd91c2f10b156f07187267040f866e6a0f Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-04 08:06:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 uJIT: support 64 bit operands for TEST. Use it to check for zero It's one byte shorter than `cmp reg64, 0`. To illustrate: ``` 48 83 f9 00 cmp rcx, 0x0 48 85 c9 test rcx, rcx ``` commit 8302eb57b0492a5ebd021536f0f3a00b95694bf8 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-04 06:56:24 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Add UJIT.reset_stats! To allow analyzing sections of the application. commit 699bf974937464c5e131859bb632ff4414971289 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-04 07:31:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 uJIT: Add exit counters for leave and refactor stats printout code Filter out counters that are zero and make it easier to have multiple printout groups. On `railsbench`: ``` opt_send_without_block exit reasons: se_finish_frame 184809 (100.0%) ``` commit 8a9ee00a318d25145b3262277864c5599271bb6a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-04 06:29:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 uJIT: add guards for protected opt_send_without_block calls These account for about 12% of the time when we were bailing from calls in railsbench. `ratio_in_ujit` went up 0.1% with this change. commit b3b3a8c62020caca849e4b3a1325eb53811e6f7a Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-04 04:58:42 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 At jit_at_current_insn, jit_peek_at_stack functions commit 316f757c44513b43a831f44a1a9b64337b69b181 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-03 08:27:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Runtime counters for bailing from opt_send_without_block This allows counting things in generated code such as side exits or different reasons for failing to compile. Runtime counters are exposed to Ruby as `UJIT.runtime_stats` for ease of reporting and analysis. commit 2e8db8c35e5bb00a2a27657e2d091edf9e27cacd Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-03 02:03:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ec->cfp->pc when hitting a stub. commit 824fea684f8346386db0391fb8575ced07ae01d6 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-03-02 10:43:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Thread EC through jit state. Add codegen status enum. commit f63cdae3a30df5cd39fbbc064fef0bbc95fc9bd5 Author: Max Bernstein <emacs@fb.com> AuthorDate: 2021-02-27 12:11:27 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Support memory operands to pop commit 831ac473faae9cfb184752e5db2bc9b309a78eeb Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-27 03:08:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ujit.md commit 6f437d5b30355070f15921a421c5c4ea7a3147d8 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-27 01:57:59 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ujit.md commit 0888d9c9d52c7021ac39f712b0111fe43dce81b0 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-27 01:54:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ujit.md commit 3a365afaf555e3c1b6758df4431b8f659ff310a2 Author: Max Bernstein <emacs@fb.com> AuthorDate: 2021-02-26 16:22:01 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Support memory operands to push commit 799d248e314d98b28837b921c9e0fc97ae93b574 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-26 07:01:52 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Fix jmp encoding. Rename conditional jumps jxx() to jxx_label() commit 57977ba30d35f6f9de3d2802d1894e1f0d23286d Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-26 05:10:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 uJIT: Implement opt_getinlinecache * ujit: implement opt_getinlinecache Aggressively bet that writes to constants don't happen and invalidate all opt_getinlinecache blocks on any and all constant writes. Use alignment padding on block_t to track this assumption. No change to sizeof(block_t). * Fix compile warnings when not RUBY_DEBUG * Fix reversed condition * Switch to st_table to keep track of assumptions Co-authored-by: Aaron Patterson <aaron.patterson@gmail.com> Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> commit f93f3d6aa164ea5bc01e596c84b7c525c41bb852 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-26 02:09:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Implement support for variadic C functions commit 8e5222c887e05685f34b819e913de5ab5d7a0c39 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-26 00:40:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ujit.md commit 028e017e955692bb508ea3b2661906429df3422c Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-26 00:34:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ujit.md commit 47900e10e3a7e9f7fd25248c30ad9897d1071641 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-26 00:33:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ujit.md commit 6100b52ecfdcb63de51bf52657259c2ab81ee440 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-25 00:20:45 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ujit.md commit 0d6ed3128a748705c6e2ed933125aaba8b062851 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-24 06:38:03 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ujit_iface.c commit 2a99743056aaecbb77cd1b17bf9f7e9e7460ab8b Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-24 05:57:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ujit_iface.c commit 0710bec01e405af596fa3e8e29ba38bb8176e39d Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-24 05:22:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Implement --ujit-call-threshold commit 58657b33e751ec0718f539bc9fa62f0ffa02801f Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-23 09:23:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Remove dead code commit 9ce27716972951ed610d048fbf42db9b1c9f42b4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-20 01:02:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 darray: fix strict aliasing issue commit 0658ab73eed9bb5b0a867424492a51120c83de41 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-17 11:03:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Use rb_darray_make in ujit commit 2240932b6421d15208c85f199199f686ff3b5690 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-17 10:49:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Add rb_darray_make commit 47e05fca10e4a759283849d7ce73ffa1eee40306 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-17 10:48:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 darray: fix buffer size calculation for element with strict alignment commit fff6d642b3fb0ef551dd67dafe896a0b18670144 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-23 01:30:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Added ujit_save_regs() and ujit_load_regs() helper functions commit 1a937dd1964cf8f1f02093d5d2a53f00792668f3 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-20 06:04:23 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Use darray for incoming branches commit df451752c1469dff23aef025a038666c6f086775 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-20 05:49:23 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Free your memories! commit b87962eb04f6cc25f97203662e04c3ca39bbb795 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-20 05:44:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Stop using UJIT.install_entry in btest CI runs on some platforms uJIT doesn't support. They don't have UJIT.install_entry. Maybe we want something like `install_entry_if_possible`. commit 48b8c5106ccdd4deb22035b9989e9feb86e199f7 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-20 05:03:12 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Mark and update object references in generated code Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> commit 064e3450536ad4c4fe49cb282d13713775d4ba8a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-20 01:20:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Check for ::Array, not T_ARRAY in opt_aref commit 9d62ab303c118eb4f21f8147fac33e187902e339 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-19 11:11:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:30 +0900 Update ujit.md commit 7fbbd0c67cfbae1a690a176395768d5eeaebc362 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-19 10:42:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Update ujit.md commit 2babfeb858894cbcb28ce763dcad12ffab67a222 Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-19 09:00:57 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Update ujit.md commit 701a802a4278ea7393d7a63b465e610eb6b47d3f Author: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> AuthorDate: 2021-02-19 07:26:42 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Create ujit.md commit 1279236ff8880c5aea428751446493b8e4f0e711 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-19 04:09:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Fix opt_aref SNAFU commit faabe2b0ad0917ac5cf88c2683c22c533ad6ddb9 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-19 01:54:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Ujit bug fixes * uJIT: don't compile tailcalls * Don't compile calls to protected methods We need to generate extra code to check whether the call goes through if we want to support these. * Fix copy pasta * Update blockids in branches * Update dependencies commit 15b088bd6ed2c0b2116d5608fef6afc3b0b04940 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-18 03:30:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 ujit.h instead in the rest of Ruby ujit_iface.h is meant for uJIT internal use only. commit 03af6ad9951bf5fa28583068a566493c970603ea Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-18 03:17:52 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Should fix builds without mjit support commit 1e573775bf190188c42e61da01314f8fc5481c7b Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-18 03:08:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Stop printing when invalidating uJIT blocks commit d3c9e31104ab60177c9b4f97e8a0a393f41ad70c Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-17 06:50:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Fix empty struct commit 73bcd263546750eb4cc6a4533104d6b205cd9ad0 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-17 06:36:52 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Fix build on MSVC Use compiler portable way of declaring function as maybe unused. commit 0ebb072f9f988139ae158e648df3eeef0679153e Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-17 05:28:21 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Add regression test for extended table bounds check commit 980aa329b648f3412d3584575481181b8d42cd60 Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-02-17 04:40:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 fix: ujit getinstancevariable code checks ivar extended table size Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> Co-authored-by: Alan Wu <XrXr@users.noreply.github.com> commit ddd1a5ce790717d8606d3aba17cd1aaae266819f Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-17 02:16:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Add op-not-redefined check to opt_aref commit 48736599ace66fe6bd205e3df2979563f04e0a30 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-17 01:15:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Fix compiled iseq count stat commit c02517bacb0a9441161342a5973a418039955764 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-13 07:12:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Tie lifetime of uJIT blocks to iseqs * Tie lifetime of uJIT blocks to iseqs Blocks weren't being freed when iseqs are collected. * Add rb_dary. Use it for method dependency table * Keep track of blocks per iseq Remove global version_tbl * Block version bookkeeping fix * dary -> darray * free ujit_blocks * comment about size of ujit_blocks commit 148ab79cd7a3d17f310c444041e93f30c1f1acac Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-13 04:52:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 oops commit 0b8473c4b4cb8d2d70d7e0db3178f80557ea8cc7 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-13 04:49:17 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Fix pedantic returning void commit d192b149ba5b6f0bb8222519793a59b60c637f78 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-13 04:35:57 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Added more tests to `make btest` commit 8ed77f96fc7df4ff0a1a91507cd7bf11e1f6788e Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-13 02:16:48 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Add another torture test to `make btest` commit c2f6552af40b5aa08d727085403b8928121f068a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-12 07:18:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Copy right number of bytes in add_incoming commit e7d20e6616546c9b26ce3c8eb9663e6805d0d0bf Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-12 05:27:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Free block->incoming in invalidate_block_version() commit a7c1bc61d2becac74743d8ab6efd6d5649b92311 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-12 03:59:59 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Add missing VM_CHECK_INTS() for correctness commit faafe716af5ea2d31eb175885032a6fe46b92834 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-12 02:46:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Add jit_print_loc() for debugging, based on Alan Wu's snippet commit 7a75e9bbaf47ce597361f7a9e7c8550a5d7e15ed Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-02-12 02:13:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 ujit_asm: if mmap() fails with the address hint, try without valgrind doesn't seem to support the address hint, and so the fallback to using NULL will allow valgrind to run. commit 05d36f31ca919a2cc1c2db210dd70639457dca35 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-11 13:09:44 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Fix bug in putobject found by @tenderlove commit 2eac297f9f9edc3ec61d087924b30ce40c84b772 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-11 10:01:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:29 +0900 Optimize gen_dup commit 3d026adb613f2e27a5c84f3db8f5ddc6896ba5a3 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-11 09:57:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Add failing test identified by Aaron Patterson commit a267f45502358114fa37b0390f894eb480624b67 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-11 09:56:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Remove superfluous instruction in opt_send_without_block commit 75b623776b920b0711c0c458997467d19a32ef8e Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-11 05:51:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Fix jit_return bug, return address on wrong frame commit c1c5fd5a8dbfce64067961a4051646ed62a50f89 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-11 05:38:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Fix REG_SP writeback bug in gen_exit commit f9e16b0e078b6b6c876c4dbfea868bb0199d5382 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-11 02:18:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Fix context push/pop in Ruby-to-Ruby calls commit 69d27e3f97f1e75773a81cda411bb67a9159d107 Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-02-10 23:49:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 fix: allow make to complete when DEBUG_RUBY is not set commit 99d285a75c8fd1c3b5662982286d4026f9bed190 Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-02-10 23:24:04 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 fix: ensure add_incoming allocates the proper length memory Without this fix, valgrind reports for zero-length blocks: ==149294== Invalid write of size 4 ==149294== at 0x408121: add_incoming (ujit_core.c:173) ==149294== by 0x408121: gen_block_version (ujit_core.c:286) ==149294== by 0x40873C: gen_entry_point (ujit_core.c:303) ==149294== by 0x3609DF: rb_ujit_compile_iseq (ujit_iface.c:319) ==149294== by 0x33BD2F: mjit_exec (mjit.h:158) ==149294== by 0x33BD2F: rb_vm_exec (vm.c:2167) ... ==149294== Address 0x11278850 is 0 bytes inside a block of size 1 alloc'd ==149294== at 0x483B7F3: malloc (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so) ==149294== by 0x40811B: add_incoming (ujit_core.c:171) ==149294== by 0x40811B: gen_block_version (ujit_core.c:286) ==149294== by 0x40873C: gen_entry_point (ujit_core.c:303) ==149294== by 0x3609DF: rb_ujit_compile_iseq (ujit_iface.c:319) ==149294== by 0x33BD2F: mjit_exec (mjit.h:158) ==149294== by 0x33BD2F: rb_vm_exec (vm.c:2167) commit a8827e5c5fb1e3218e7f0d5ac792482c0d65f8f3 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-10 07:34:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Added failing test to `make btest` commit 9d8cc01b758f9385bd4c806f3daff9719e07faa0 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-10 06:24:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 WIP JIT-to-JIT returns commit 6341fc21b2e15dca82253da41047ce37409508fc Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-09 05:40:36 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Don't increment instr/exit counters if stats not requested commit 21c4dd037d3f9c20dda281883b8d43fc2226d550 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-06 05:49:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Fix bug unnecessarily causing version limit hit commit d2ad0a1175a83392710a4248dc541492ba151e61 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-06 05:07:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Added synthetic torture test with 30K tiny methods commit 8357e8e5142b97c452929aade0c24f59c7a34833 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-06 02:18:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Fixed two bugs in JIT-to-JIT calls (thanks Alan!) commit 0f53c216d2e46049d30eb82b66c9ab4c946911ed Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-05 06:37:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Pop stack operands in opt_aref commit a391684159b5f967f159657b0237ef5100720f51 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-05 03:00:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Check for iseq wrapper instead of iseq imemo commit 2fcb17d655143845083117b199c991fcf66c48f7 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-05 02:29:36 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Make UJIT.disasm accept Procs commit ab5760307b730f3b418b3eae016c442ca4f57d14 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-04 08:09:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 add a callback for when method cache changes commit d2d564be1db247f21e15c847584b0ec2cae4428d Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-04 07:39:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Moved ujit code invalidation test into bootstraptest commit 56ce40e8becc26afd089802cee7c09e8c3d698ce Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-04 06:54:25 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Only compile iseqs with simple parameters. Enable get_local_wc1 commit e85e0e2fa98d7835163e3470ca322b11a0f67c67 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-04 06:09:03 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Commit WIP setlocal_WC_1 implementation commit 439e1089b72ebb11314b3f548c8bb5bdf02a91a1 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-04 01:25:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Implement opt_le, opt_ge in ujit commit 020f745041d8555ccd287553a098402c04f9e248 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-03 04:31:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Fix overflow check in ujit commit 7f73948c3ada1a906dd90cff23dfd8c6193137e4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-02 07:17:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Add code side info to --ujit-stats shopify/ruby#23 commit c734405ccd3dfba58dffbb6413c36eec04dc1f36 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-02 07:03:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Add stats for number of ujit entry points installed shopify/ruby#23 commit 6a29131439b88f696b54d4d732f5bffae9a56aac Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-02 06:57:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Implement Ruby-to-Ruby calls in ujit (opt_send_without_block) commit 27a44436433a0072f62aaae6e8d6f12a1f0a1bf8 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-02 04:18:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Add total exit count to stats commit 9453267689fdc405aa3d2eb0bb27e52addf982ec Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-02 02:23:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 add bop to redefinition callback commit 53bd13edf3b41b965297d4ed425a96b9b57dd053 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-02-02 01:51:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Implement opt_and in ujit commit 863ff14997b8ffd3d3cbf52cf62d671788420c12 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-30 07:31:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Add a callback in to microjit when a BOP is redefined This commit adds a callback `rb_ujit_bop_redefined` when a basic operation is redefined. commit 05c72d40b7ee907f62701948e1249891a1d008b0 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-30 02:07:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Alan & Max at Tanagra commit a6d0c61c3c4a9bb117e5c1bf4da02662f58a50a2 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-29 12:56:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Add percentages to exit op counts in --ujit-stats commit 2e561ff255ea69e50f2d53240332cfd96463ef06 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-29 06:58:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Restore interpreter regs in ujit hook. Implement leave bytecode. commit 3c7251b41b8850aab7c64c4885669e9c099d2465 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-01-28 06:13:27 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Tally instructions when taking side exists for --ujit-stats shopify/ruby#29 Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> commit 09479c33f54423910674780d1fcb7834e98ef561 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-28 03:02:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Implement block version limit commit 81c57ab9b8a55c3572facd1fa62c4b5c38a160e0 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-27 06:51:44 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Reduce size of ctx_t commit a14015e9b5594bde3ee802eb8c39d08d5b8e8249 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-27 06:19:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:28 +0900 Report unknown --ujit-* options commit b7f93e81dfe6864273707172be92896b54b6053e Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-01-27 05:21:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Implement --ujit-stats and instructoin counting VM and ujit instruction counting in debug builds. shopify/ruby#19 commit 36232a48a63923e6d3bd3ccad30a12a02b20e89b Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-26 08:49:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Set T_FIXNUM type tags in opt_plus, opt_minus commit c61238a2761ca8d9bbe56dc3b06aa07da5784c96 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-26 07:11:10 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Optimize putobject codegen commit e7909467df181641b1753512cba3f49c0f0f6583 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-26 06:42:42 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Eliminate type checks in opt_lt commit 63e85de33a6b3cf4dbb2f7873c968576e201f0b6 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-26 05:28:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Fix bug, block added with wrong blockid. commit b0b1bc1684a845ae07df474f6a7e86ada501dadf Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-26 04:33:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Tweak ujit disasm output commit 4f47181be689e9cfc2cbce332aa4d538afd35da1 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-25 13:08:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Keep track of multiple versions per blockid commit 9def269b470f74d8ea4bb7919f927d16efb35cfa Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-25 08:21:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Fix issue with block address accessor. Print absolute addresses. commit 79d6e9618d8215f936a3c938d192753906412c02 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-23 06:54:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Make find_block_version() do list search commit 8a61e848c09779312dab159e8a625872de034272 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-23 05:24:04 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Minor changes to disasm output. Fix GCC warning. commit 25234f8a1c75f57f2e5bdb757d96156cb4275ecf Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-01-23 05:26:12 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Update dependencies commit 042c6aab548f41b8979ff7d1d10d310b359af7df Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-01-23 05:18:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Fix cast warning commit f68ddaa54aee1d1470372c8f38f61e58bf61d55a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-01-23 05:06:51 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Declare instead of define data variables in header commit 738160db0a7fb32d609133fb68fbdff02ff315f2 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-23 04:57:44 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Write ctx_diff() function to compate ctx_t objects commit 7efde1bfb486aa7bb57f5f355a13be040a6973ff Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-23 04:26:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 conditionally add libcapstone commit e427fdff0af907faec8771b98e9cabeaadd05f12 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-23 03:43:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Directly link libcapstone for easier development This lets us use libcapstone directly from miniruby so we don't need a Ruby Gem to to dev work. Example usage: ```ruby def foo(x) if x < 1 "wow" else "neat" end end iseq = RubyVM::InstructionSequence.of(method(:foo)) puts UJIT.disasm(iseq) 100.times { foo 1 } puts UJIT.disasm(iseq) ``` Then in the terminal ``` $ ./miniruby test.rb == disasm: #<ISeq:foo@test.rb:1 (1,0)-(7,3)> (catch: FALSE) local table (size: 1, argc: 1 [opts: 0, rest: -1, post: 0, block: -1, kw: -1@-1, kwrest: -1]) [ 1] x@0<Arg> 0000 getlocal_WC_0 x@0 ( 2)[LiCa] 0002 putobject_INT2FIX_1_ 0003 opt_lt <calldata!mid:<, argc:1, ARGS_SIMPLE> 0005 branchunless 10 0007 putstring "wow" ( 3)[Li] 0009 leave ( 7)[Re] 0010 putstring "neat" ( 5)[Li] 0012 leave ( 7)[Re] == ISEQ RANGE: 10 -> 10 ======================================================== 0x0: movabs rax, 0x7fe816e2d1a0 0xa: mov qword ptr [rdi], rax 0xd: mov r8, rax 0x10: mov r9, rax 0x13: mov r11, r12 0x16: jmp qword ptr [rax] == ISEQ RANGE: 0 -> 7 ========================================================== 0x0: mov rax, qword ptr [rdi + 0x20] 0x4: mov rax, qword ptr [rax - 0x18] 0x8: mov qword ptr [rdx], rax 0xb: mov qword ptr [rdx + 8], 3 0x13: movabs rax, 0x7fe817808200 0x1d: test byte ptr [rax + 0x3e6], 1 0x24: jne 0x3ffff7b 0x2a: test byte ptr [rdx], 1 0x2d: je 0x3ffff7b 0x33: test byte ptr [rdx + 8], 1 0x37: je 0x3ffff7b 0x3d: mov rax, qword ptr [rdx] 0x40: cmp rax, qword ptr [rdx + 8] 0x44: movabs rax, 0 0x4e: movabs rcx, 0x14 0x58: cmovl rax, rcx 0x5c: mov qword ptr [rdx], rax 0x5f: test qword ptr [rdx], -9 0x66: jne 0x3ffffd5 ``` Make sure to `brew install pkg-config capstone` commit dea4db16c03b3befc14a0de9b51489d9382258a3 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-23 03:29:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Add support for multiple versions per block commit d528cf4fd5551c323484c2ffb79b56af0c6f50c4 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-23 02:22:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Added comments. Fixed compiler warning. commit 11512a80fce8bfac3adf7038e9d9e3839e5cbbfb Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-22 07:05:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 add a helper script for ujit disasm commit d9176d9fca1af8750f9d8f97586e150d9261cc7f Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-21 03:50:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Expose methods for inspecting Micro JIT code blocks This commit adds a module `UJIT`. The module allows you to insert the initial Micro JIT instruction in to an arbitrary iseq like this: ```ruby def foo(x) if x < 1 "less than one" else "something else" end end iseq = RubyVM::InstructionSequence.of(method(:foo)) UJIT.insert(iseq) # Add initial jump ``` After the initial jump is added, we can make Micro JIT do some work: ```ruby 100.times { foo(0) } ``` The `UJIT` module also exposes a method for finding all compiled blocks for a given iseq, like this: ```ruby blocks = UJIT.blocks_for(iseq) ``` We can sort the blocks by address and use the Crabstone gem (which is a wrapper around `capstone`) to disassemble the generated code. Here is the full code example: ```ruby def foo(x) if x < 1 "less than one" else "something else" end end iseq = RubyVM::InstructionSequence.of(method(:foo)) UJIT.insert(iseq) # Add initial jump 100.times { foo(0) } blocks = UJIT.blocks_for(iseq) # brew install capstone # gem install crabstone require "crabstone" cs = Crabstone::Disassembler.new(Crabstone::ARCH_X86, Crabstone::MODE_64) puts iseq.disasm blocks.sort_by(&:address).reverse.each do |block| puts "== ISEQ RANGE: #{block.iseq_start_index} -> #{block.iseq_end_index} ".ljust(80, "=") cs.disasm(block.code, 0).each do |i| printf( "\t0x%<address>x:\t%<instruction>s\t%<details>s\n", address: i.address, instruction: i.mnemonic, details: i.op_str ) end end ``` Here is the output: ``` $ ./ruby test.rb == disasm: #<ISeq:foo@test.rb:1 (1,0)-(7,3)> (catch: FALSE) local table (size: 1, argc: 1 [opts: 0, rest: -1, post: 0, block: -1, kw: -1@-1, kwrest: -1]) [ 1] x@0<Arg> 0000 getlocal_WC_0 x@0 ( 2)[LiCa] 0002 putobject_INT2FIX_1_ 0003 opt_lt <calldata!mid:<, argc:1, ARGS_SIMPLE> 0005 branchunless 10 0007 putstring "less than one" ( 3)[Li] 0009 leave ( 7)[Re] 0010 putstring "something else" ( 5)[Li] 0012 leave ( 7)[Re] == ISEQ RANGE: 7 -> 7 ========================================================== 0x0: movabs rax, 0x7fcd014cd518 0xa: mov qword ptr [rdi], rax 0xd: mov r8, rax 0x10: mov r9, rax 0x13: mov r11, r12 0x16: jmp qword ptr [rax] == ISEQ RANGE: 0 -> 7 ========================================================== 0x0: mov rax, qword ptr [rdi + 0x20] 0x4: mov rax, qword ptr [rax - 0x18] 0x8: mov qword ptr [rdx], rax 0xb: mov qword ptr [rdx + 8], 3 0x13: movabs rax, 0x7fcd0180ac00 0x1d: test byte ptr [rax + 0x3e6], 1 0x24: jne 0x3ffe0da 0x2a: test byte ptr [rdx], 1 0x2d: je 0x3ffe0da 0x33: test byte ptr [rdx + 8], 1 0x37: je 0x3ffe0da 0x3d: mov rax, qword ptr [rdx] 0x40: cmp rax, qword ptr [rdx + 8] 0x44: movabs rax, 0 0x4e: movabs rcx, 0x14 0x58: cmovl rax, rcx 0x5c: mov qword ptr [rdx], rax 0x5f: test qword ptr [rdx], -9 0x66: je 0x3ffe111 0x6c: jmp 0xffffffffffffffa3 ``` commit ce233c95dbd7c9b6ea871947a269f3ce714b2e57 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-01-22 05:28:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Remove assert that doesn't compile commit 0a42428098e4dd4c348dd09a8566d643efb59e1c Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-22 05:05:44 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Implement branchif in ujit commit 331f662ddb3a6b824df6ab045a9ec004993a6b5e Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-01-22 04:24:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Update dependencies commit 0a6e824ad2cc22315b32d1a11dc094c528b32acb Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-21 06:58:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Prototype type-specialization for temp values commit cf4021ca780d460dc351b30260532c158a5c8a5e Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-21 02:44:24 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Take VM lock in branch_stub_hit(), fix ractor deadlock. commit dde69ab5c63a01c20c9bc19b7a11d9c64f6dab2a Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-20 04:17:51 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Fix ujit block hash table bug commit 136bf983beaf46bebd13026890eda8dafff279ce Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-20 03:28:52 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Fix bug with ujit code invalidation commit 37ad374607ae69637bc87bedd809466a6a71d4f4 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-20 01:11:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Added gen_direct_jump() for unary branches commit 187435c11757748af37c59ced54d4ee04f442ffe Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-19 07:03:04 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Complete refactoring to eliminate recursion in ujit's compilation commit 02a97004751eae471e00b2b6c3ce86c9dd6ae259 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-16 07:10:52 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 End current block after opt_send_without_block commit 79331368b94b297a0653152cb568a9b998af7fee Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-15 09:36:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Added block end index commit 59eb98fbaa4762a935ef57a6777042068b186278 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-15 06:58:20 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Fix ujit cc/cme invalidation code for opt_send_without_block commit 4a5710769609c35a32a071cc4cd3bcebdc3ec908 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-15 03:33:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Sketch code to invalidate basic blocks. Rename version_t to block_t. commit 92e9b2458665617d6d05b968a4f8bd08afdb65a4 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-14 05:18:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Keep track of incoming branches in ujit commit 2cf32e5505d8da85f31df3a0bff7b0fd38054503 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-14 04:14:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Refactor ujit logic for generating iseq entry points commit ef08af93769982047e59356d76c7e72a67970335 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-13 07:03:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Progress on code invalidation commit 3a74011ff8e5b9b4bf07ef72d249d08b8c13c57e Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-13 04:56:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Introduce version_t struct. Will be needed for code invalidation. commit a251059070a4d42ac1a70fb3ce747cd791bfbe92 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-13 02:30:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:27 +0900 Fix hash map key issue commit 7e60ce357b7061ea6e638cab2ff656df031f7d90 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-12 04:58:40 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Fix uint cast bug caught by Alan commit 2cc0db12fee25b23d689a9a9936db470d0fa0433 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-09 05:18:03 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Refactorings in ujit. Implement Ruby jump instruction. commit 1744c15578cf1955dfdaf5bc02db13a05a8d6970 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-08 07:09:25 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Avoid generating redundant interpreter exit code after branches commit 97cffcf79a5586765d0046d3dc0d004a101f73ad Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2021-01-08 03:32:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Fix sneaky ujit side-exit bug. Reduce ujit call threshold to 1. commit 542f2ba09e1904fb7f43af34bc1527073daae964 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-19 05:52:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Use a versioning context when compiling blocks commit df16bf97ece9c3f943750954c19d1caace089215 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-19 05:02:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Split out context object into jitstate_t and ctx_t commit 5e39d83fbd560a5151facba10e95889aff84c93e Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-19 03:49:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Split out compile_entry() from compile_block() commit 4592ef9d76c5ef1bf7f99119a126a1b700c88f1f Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-18 05:45:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Fixed one bug in compile_block. commit e9344ae4089503341b8546beb4f53e654b3e3f4f Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-18 04:51:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Stub logic working for fib test, but still crashing in other cases commit 7d7e58d3521c797d772fdb5f974061c8a3758594 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-17 11:45:51 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Implement branch stub logic commit 40b70ef7c762701d26539e5a401449d7f3733b5a Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-17 07:07:18 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 WIP branch generation code commit bd7cc9ed98056d01dbdd592156e07ae6c6eff516 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-15 05:57:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Thread insn_idx through context object commit 868a6809e7d15b95f14bff822268e2962747fb06 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-15 03:26:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Add sign-extended mode for test() instruction commit 8ae354e9bedbe5995e97206b170f3e406fc5b617 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-12 03:22:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Implemented opt_lt. Prelude to branch instructions. commit 20f5b7426e839c90819f223c1a30992fd8d4023c Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-11 06:59:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Start implementing BBV primitives commit f7717b1d463548414e607498e84815ac641ce3dc Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-10 14:06:10 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Start refactoring JIT engine commit f761e9ee641cb4bf9250fa97d119a444d239e7b7 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-09 07:19:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Move code into ujit_iface.c commit e4c65ec49c5e2cba537f2d9ee00888c5dfbcac34 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-12-09 06:54:41 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Refactor uJIT code into more files for readability commit 7be67a6c080dd7d0d571c50d01bb0195e0d3262d Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-11-21 05:25:21 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Implemented opt_plus in MicroJIT commit ec42378196db02936cd521305dc5940f598370d0 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-11-21 04:05:36 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Rename function and variable commit fa04478e9e2e478e6a66e1b4b0bb4fd762a367f8 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-11-21 01:35:17 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 MicroJIT: coalesce heap pointer check on self commit 4d964e25823fdbaae28cea7b0416902f7afd7cdc Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-11-18 05:04:36 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Implemented setinstancevariable commit e2e70f69f3af939b0ba687424b6a30043de2ea9e Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-11-13 04:25:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Add comment wrt getivar and allocators commit be91995a5e91c2ad0136e44f553ffdd80342d090 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2020-11-13 02:25:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Remove T_OBJECT runtime check If the cached class uses the default allocator, then all instances coming from the class should be T_OBJECT instances. Meaning we can just check the allocator function at compile time, then skip the runtime T_OBJECT check commit e17053c72090dd8d732742386303f9964b6326ce Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-11-11 05:35:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Basic implementation of getivar for MicroJIT commit 1cd4c8b294acd2b4d34c2c830ee2b541a87a0e6f Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-11-10 06:54:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Deoptimize on side-exit commit 64072dd3a6a321b674255f44632f2c34ac196507 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-11-10 06:38:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Rename variables for clarity commit b75169a44071b978b21e6e1815a25fef00d31ded Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-11-07 08:13:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Fix typo commit 6a9a516dc5c253c5609386ae70e2ac5c53423e2a Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-11-06 01:37:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Print to stderr in ujit_utils.c commit 50d8c3d4430cc8726b0d2745440e9de01eb4dfb9 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-11-05 02:03:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 MicroJIT: Count number of compiled instructions better commit ba92d40d9bc48ab57bec7afbf7e900c1f211b4b6 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-11-03 02:36:52 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Fix warning commit 68b0f69a0db99bad754d5d0387922830b6bd40b9 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-30 06:40:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Make a bunch of functions compilation unit local commit 5f9beb9b1b931a90b314f6adcf9ca5b7447471aa Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-30 06:37:40 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Include disassembly in MicroJIT scraper output commit 188c54428c46c1098cda0e366ee8c974f25ac07b Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-30 06:26:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 MicroJIT: avoid having to invalidate running output code commit 9ce9f613b0b3a1b222055fac93969f588cfd7e7b Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-30 03:45:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 Update comment for `ujit_compile_insn` commit c378c7a7cb937cd9fe5814f2838b1d6cd1d177b2 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-28 07:49:17 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:26 +0900 MicroJIT: generate less code for CFUNCs Added UJIT_CHECK_MODE. Set to 1 to double check method dispatch in generated code. It's surprising to me that we need to watch both cc and cme. There might be opportunities to simplify there. commit 0c52371c47d8b65f91ed5d2a7e2c14c96d286f57 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-28 04:58:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Don't create a stack frame for Hash#key? commit 5413d0918b89ee46f8500ba2731ff3a7a22c6276 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-28 03:30:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Fix GCC warning commit 81e7091862d76ef660363f3463820b5ecd214c87 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-28 03:25:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Added stack overflow check to MicroJIT CFUNC calls commit 8b8470d098607548ff33792b831a2290c12248ed Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-28 00:10:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Added RUBY_VM_CHECK_INTS to CFUNC calls commit 5b6a963b710db6bacb64d17c32666f3db935b0ac Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-24 05:49:59 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Fix compiler warnings commit b761f5c96ff1635aeeb26bb7ba6cb2b30adcddaf Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-23 23:59:22 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Implemented mechanism for rel32 call commit 498fe0fb52c4b3f7c8a4abdc9da1fffb2aa8c69b Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-23 03:16:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Move MicroJIT compilation threshold into MicroJIT's header commit 809ecfb1266fac21019f0264f060f408c2946fdd Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-23 01:11:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Fixed two CFUNC call bugs thanks to Alan & Aaron! commit c2cb6a6fd38eea3ce91d3370a62aaf6ba15e410a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-22 07:15:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 MicroJIT: Read pointer to call cache from call data The call cache changes when the call site becomes polymophic and can result in the generated code falsely assuming cd->cc->cme is not NULL. Here is a crasher: def body(thing) thing.strip end str = "" 10.times { body(str) } body(0) rescue p 'not found' body(str) commit d49edada2eeb0e2fa25c2f36c06e9836e9288f56 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-22 05:10:19 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Fix MicroJIT argument copying for CFUNC calls commit 37e4350e80c0b9dfeee7e7ea461bcb65fe385bdd Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-21 05:55:49 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Fixed two issues with MicroJIT CFUNC calls commit 35c0768473d18a83c50cf7f175d301a614987527 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-21 04:03:06 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 First pass at CFUNC calls complete. Not yet functional. commit ff73762bda4f2c5c7aa2a04b39282c3755d69841 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-21 00:11:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Refactor ujit, define named register constants, code cleanup commit 6ca360aa4762c7eaaa587eed79384052d8453552 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-20 09:31:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 MicroJIT: switch to example that passes ec as second argument opt_send_without_block needs it. Ideally we would use this example only when an instruction in the compiled sequence needs `ec`. We can worry about that later. commit 1ef2887bc118cc810d2103940504a802dcd74d45 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-20 07:04:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 MicroJIT: Use R9 in generated code for Ruby stack pointer commit 11c1daea172df21af30be24d645040d8de9d461d Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-20 06:45:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Add to the MicroJIT scraper an example that passes ec commit 008551decb7481c8d8a7c870a43e0ea450041aa5 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-20 23:37:47 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Commit before merge. commit a88d6207dd87b53f54debb1a3cf044da60b82fb3 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-20 05:31:15 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Updated C function call sketch commit 770f3929b31da37c06e015b292c3b7ec3dfc969c Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-20 00:56:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Remove comment. Commit before rebase. commit 595e3a94fd11a435eccd3356492ee775b622ce2b Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-20 00:42:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Fix MicroJIT logic in MJIT exec commit 6f4d17d62236460fd5aa9d07fea4d6794f27c397 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-19 23:41:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Never compile with MicroJIT when MJIT is enabled There is a crash in there that we don't want to worry about for now. commit 12ba0c0815bf75c6774b149b71304df3b10d0088 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-19 23:27:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Declare extern with RUBY_EXTERN for MJIT commit d9ab1e9563dae0d4d1859e84733fb0341037aa68 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-19 23:26:38 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Update dependencies commit 93f6ac39f20f64a879507db98a16177530e9f3d4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-19 22:47:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 MicroJIT: Don't compile trace instructions commit ba45aff16b1246a3c6b31e9cebb0096fb4e1fcae Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-17 02:45:25 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Don't call MicroJIT from MJIT output commit a245db8df8d69feca7c36b4824f26ee6f802721a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-17 02:44:09 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Export MicroJIT global used in MJIT commit e677ca4af08070a73a30816dfe6e80c776f91d25 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-17 05:57:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Fixed is-object check in opt_send_without_block commit 7c9fdb5dc9cb1431f16e67d206971db3e27f9e82 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-17 03:46:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Check receiver type and klass in MicroJIT commit 7650352868a4f56c9225dff58d1ba9aeedadee76 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-15 22:06:42 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Take the VM lock when recompiling commit 8bda11f69065d08284b5990097c45a05076d36bd Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-14 00:15:22 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 MicroJIT: compile after ten calls commit ef9eb83cbecb3d7add699c41f713a42c296fe65a Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-17 02:42:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Commit before merge commit 2cb376a53f2f165415f36fba4b2230bcbd1e3848 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-16 04:15:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Started refactoring opt_send_without_block with codegen-time checks commit 32a66b99f657f872924ae16d64316af4a3533ef0 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-16 00:46:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Add system to implement codegen preconditions in JIT commit 6f81bd2c76c9eec7a95db92f552405cc68367e4d Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-15 03:03:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Added print_ptr() util function for debugging commit e5751768baeb7c1e0a48c466c98014667058d2c3 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-15 02:48:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Added int3() to x86 asm commit beab644408c3ed82dcaaea81b1400ad13eec7f61 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 06:11:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 Anonymous union is a C11 feature unavailable to us commit e84083593cb58a99757f23c1810663b9631b4034 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 05:12:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:25 +0900 oops Direct threading should be default commit bab308b923f9297e4c4a2f9c12e664d95c710e3f Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 03:30:04 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Explicitly convert function pointer to void pointer commit 7662653b4c122f638b323d667be93ba516cd535d Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 05:08:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Fix compilation for OPT_THREADED_CODE=2 commit edede7733d2a16872918081c1dad2c1ed096dc36 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 03:30:04 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Explicitly convert function pointer to void pointer commit b8dff14afa050c1550094420be904e00342f227b Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 03:28:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 _GNU_SOURCE has to be before includes commit 3c8a9da7efef89a058f0838afae436231265cef8 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 02:38:17 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Bump executable memory allocation size We run out it on CI in test-all. commit a132d69757486d080b94d7f2e416de6396e7f894 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 02:34:22 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Get access to MAP_ANONYMOUS in pedantic compile mode commit df15dfa6fd5e84df4e7d0aa02106d28e8d214055 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 01:52:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Don't put MicroJIT status in RUBY_DESCRIPTION That messes with tests too much. commit 2790428e55f4e6113dcd60c716d464d4c2193903 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 01:46:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Zero sized array are not standard C commit 7e400ddc791fc4111cbfb273574657c41ca5b22e Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 00:45:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Try to fix Windows build commit 805f49630dcfc57a58ac809f7ef4477183baa9d2 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 00:31:24 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Fix MicroJIT's putobject against GC copmaction commit e9ecf80d209ee32c2606b625ad73d48f4103ee51 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-06 00:19:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Respect redefinition in MicroJIT's opt_minus commit f500c1e3219c97cf6a31460d1961d157248ff738 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-05 23:30:21 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Update dependency commit 040cfdb1392beb0a1e45431c1825a71fc7334ae5 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-05 21:09:58 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Small build fixes commit 7d1546ece5e3678a8b8eb196c81c3f4972c51f0a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-05 20:41:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Try to fix Windows build commit a3e58f4df827f36681e4fdebfef8e05a6ceb5c10 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-05 20:21:45 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Compile with MicroJIT disabled when scrape fails This is just so we can build successfully on -O0 and other cases that are not supported by the code scraper. commit 726bdd4d35861f0373d7508ab4ac7b2c781edf51 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-05 19:56:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Show whether MicroJIT is enabled in the version string commit 12283c58dab63eb9f8e916a8647758260a3e699b Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-04 09:35:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Removed inc/dec instructions because usage not recommended. commit 5f4e30be666af8cb8b0265b8dc68124cec4ef047 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-04 08:47:15 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Run ruby tool/update-deps --fix commit 7fbf6d4019cfb738095e06c3b017725a0eb1baf0 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-04 07:35:15 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Move registers into header and make them static We were leaking these as global symbols and were having linking errors with Clang 12. commit e3cd43e2bc44fdd358f8ea1c373125ce4320f972 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-03 01:12:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Implemented opt_minus in MicroJIT commit 4e9a62c963292cec76c6011e9e18987f64d8257d Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-02 04:17:24 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Comment out jnl to fix Linux build again commit 1159034cae1b6cd96639247a2e4892b32aae25dc Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-10-02 04:16:23 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Fix compilation for -DUSE_INSNS_COUNTER commit 851ea463512529390133e656540bb3e287ca6fdd Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-01 05:57:54 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Added member_opnd() convenience macro commit d7f012666d4931c64fbb6175eab3837088e4f0ea Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2020-10-01 04:17:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Partially implement opt_send_without_block It will read and check the inline cache now, but we need to actually call the method. Co-Authored-By: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> commit e99e3daace542cbfd045ae76c435a4f6e163f1d5 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-10-01 02:32:15 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Added jmp_ptr() to ujit_asm.h commit a8d784888dd75abefa468e7b0a266be06c31248c Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-29 06:05:07 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Fix mistake in ujit command line parsing commit 2c866ce8f0ff45e8d6d2941df174a2effe12a2dc Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-29 06:01:26 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Check if outlined code block has enough space too commit e8c914c2502f6049ebc5bd93e8db0c62dd14400e Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-28 20:03:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Implement the --disable-ujit command line option commit f3c961f273d3fa305c9ebea57e5d1ff96f241e19 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-25 08:26:21 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 endbr64 is fine commit e0c5d4ecd9e864fa531ecceb29ed0e195bf08644 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-29 04:50:41 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Implemented side-exits to interpreter. setlocal_WC_0 commit 4d72b9a2f7890a36f221f256b62250df4baebc1a Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-25 04:57:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Start implementing setlocal_wc0 commit 5ed7e59365592e56320213aef6593260e0d9b576 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-24 16:27:59 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Comment out jnl to avoid conflict with system header This is specific to Linux commit 453218b272e694b10ca3ad781001600df0a1c3d9 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-24 16:07:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Preliminary GNU/Linux support for code scraper Let's see if this works on CI commit 3d87eadf16a086d2f3bec0b556760c0ebfe1e7cd Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-23 16:02:01 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:24 +0900 Refactor ujit_examples.h generator. Remove dwarfdump dependency commit 2eaf55fcf1f7afbd0190e47ffe352b29047e6144 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-23 08:05:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Update PC in memory when exiting jitted code Without this, the allocation tracker was inaccurate and was causing a failure in `test/objspace/test_objspace.rb`. commit 86c438d12990d94fcd6ca1853423e19026de2a7f Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-23 07:25:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Revert "Add workaround for inserting into addr2insn mapping" This reverts commit 6b765b7ca0dad82ffbdeea76c63a0cac5fdc4bfd. It made things much slower and didn't fix the crash. commit 265c5ca8b1ec599f609ea690bfd41f93f4d38cb1 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-23 07:24:55 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Avoid triggering GC while translating threaded code commit 5bcba2a5ee5d331f6979fcaff11ac00ee15d7508 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-23 06:02:15 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Add workaround for inserting into addr2insn mapping commit 38601da27dde73c75ec052d2d6ca555da71ee00e Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-23 00:39:04 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Added 8-bit and 16-bit general-purpose registers, more tests. commit 25acbaf4f603a0df1ab121a3d3140a1f7ab1a2b4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-22 07:24:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Don't assume srcdir is cwd commit 304adba717b30df17b4db3c76993a649c3efec0e Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-22 05:46:57 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Add location hint to code block mmap call commit c20066b24cf1c1c235d1f9402b7986b5085cad53 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-21 03:23:14 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Added method to align code block write position commit 30c4237b06573d068624739f6f6d5aaf59a675e1 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-19 01:40:05 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Fixed bug with ctx_stack_pop. Implemented dup bytecode. commit d1c9ca86c191ef92d9bcd1242aeb7eaa35381e6c Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-19 01:20:43 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Port print_int, movsx. Implement putself. commit b8a3f2ed6177c753a35feaa4239a47de0a97ee77 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-18 06:09:42 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Add function to print strings from generated code commit 77cfdb24d4d7445a6e8f4a110d4e2159360f3c2b Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-18 02:40:50 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Implemented delayed stack pointer adjustment optimization commit 038f5d964ffdfcce7c1acbeb4c6ae4ad01a09014 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-18 00:49:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Avoid recompiling overlapping instruction sequences in ujit commit 1665bbacc16d7ea18625f5a8b5c7474a873dffb4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-17 06:40:48 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Fix typo commit 4d959a25e46427990cd443298302ec0533be6595 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-17 06:20:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Fix dependency for ujit_examples.h Once this works on GNU/Linux this could be done semi automatically. commit 132f7e11fd6715a9e2e09b06441de8d399728049 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-17 04:30:23 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Compile putnil commit 8a5ced8eb5ed96ba3d806b2a30790c87c453a9a0 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-17 02:52:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Chain compilation of adjacent instructions commit 7eb192d644996cb2c79663d34e3364adb7dface5 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-17 01:37:59 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Testing lea instruction properly commit 16ddb422eb83cc8223a8e93297aef4d6ab273238 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-16 23:33:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Complete refactoring to codegen functions commit b0b7d0a87e3d9f6dce2eded0f45c95b125f569c3 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-16 06:04:33 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Refactor MicroJIT codegen to use hash table of codegen functions commit 2811792f91d9651a40d1e41de8c85a9b347e6377 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-16 04:12:31 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Compiling getlocal_WC_0 commit 2e319492254e529a2f5673038ec6c3ea44087199 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-15 23:44:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Ported xor and cmovcc instructions commit 090255456aa137f28cc254c609ff95fb7fd3d71b Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-15 05:59:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Ported neg, and, or instructions commit 3739588811a621ccfd00aa7f8ad804cd1c60f92d Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-15 03:36:39 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Remove PC argument from ujit instructions commit ca47899ccf9547223f4c64fc4b0837796bee09af Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-15 02:31:34 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Small refactorings in ujit_compile.c commit 1879a123caeb9caced2eeb2bb7a7a91a4a8e1930 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-15 00:54:25 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Added cmp, not. Generate code for nop instruction. commit 7d0df31d7ab834526a0b5450128602c04fddb2b0 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-12 05:42:51 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Ported inc/dec instructions commit 26fecc723699a56e27fefb6fef2b3a13d8a95e51 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-12 04:36:40 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Removed native_pop_code, ported call with label commit 4929ba0a5ce2ea697bad4b8a33ce6047e99da04a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-12 03:58:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Generate multiple copies of native code for `pop` Insert generated addresses into st_table for mapping native code addresses back to info about VM instructions. Export `encoded_insn_data` to do this. Also some style fixes. commit 6a12fb2067e1d0a9ce610b0affd6a3113d13ff1c Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-12 04:10:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Ported label linking and conditional jumps commit 1c8fb90f6bde0c630f5dc532dfe198218bc9f910 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-11 06:20:46 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Add new files, ujit_compile.c, ujit_compile.h commit 566d4abee5e8e59ce6e080f28a25b7c3431c5b3b Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-11 03:31:45 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Added shift instructions commit fe1cd076da74be8077509fab5a401060ce1c17a4 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-11 00:20:30 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Added test for lea commit 251531bdf06b03a6531ca6863d19c693fc62631a Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-11 00:09:45 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Reimplement Alan's pop instruction with the new assembler commit efcaa49a7be1ea016a57bed5080c02df3f88f884 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-10 23:57:29 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:23 +0900 Added sub instruction, 32-bit registers, more tests commit 1392a6f2a499f7400320b87d0bf53d3ef0e26d93 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-10 06:16:21 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:22 +0900 Added jmp R/M instruction commit a3b411b9c82010d480ce3bf203dcc8b8600722ce Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-10 05:45:28 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:22 +0900 add and mov instruction encoding ported and tested commit 8f40a62647cd7b961faac6b810053b87502d3994 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-09 05:45:35 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:22 +0900 Progress on x86 assembler. Encode a few simple instructions. commit 5cf7ccd24a9303b2a591bc0289159517cee6e851 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-05 06:10:11 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:22 +0900 Started porting instruction encoding commit 0a5dcc056e22bab849d8d7877928d300201af823 Author: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> AuthorDate: 2020-09-05 04:56:00 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:22 +0900 Progress on porting x86 assembler for MicroJIT commit 07dd5f22a5d3127981eea7602bd3d6c221f5d12e Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-04 03:18:02 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:22 +0900 Scraper touch-ups - Support older Ruby versions - Catch rip-relative jmp. Happens in -O0 commit 410323bd6d54c9f66f1d0af91d64102426191776 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-04 02:55:41 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:22 +0900 Try to convince get better code out of Clang commit 16c5ce863c06dd3ae5562f4ed86fb40ced670c69 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-04 01:06:53 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:22 +0900 Yeah, this actually works! commit cec197696f3edcff553373e9597130fde2d1f7be Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-09-04 00:08:16 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-10-21 07:19:22 +0900 Add example handler for ujit and scrape it from vm.o commit b0c3f18ec519d505527e1929e25ec264c831a89e Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-10-21 04:42:40 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-10-21 07:06:40 +0900 Print errno when mprotect fails Trying to figure out the problem on s390x. Notes: Merged: https://github.com/ruby/ruby/pull/4996 commit 030b1892d5cc6f4c14b08d67d4ee60c202edc183 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-10-21 04:57:05 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-10-21 04:57:05 +0900 Update to ruby/spec@254c380 commit 500ba248826fea96c93dbc76199dd331f0a43eb2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-21 04:43:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-21 04:43:39 +0900 * 2021-10-21 [ci skip] commit 6aa1acb03d2cb1ddc9ff63c6006eb3c5f8a1e4d6 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-10-21 04:43:00 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-10-21 04:43:00 +0900 Add extra files from ruby/spec which were skipped due to .gitignore commit a6c6eef04aaa075f4bbd0eef740d011737afec91 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-10-21 04:41:46 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-10-21 04:41:46 +0900 Update to ruby/spec@d6921ef commit 207a5a5bc13018344dc2ab7913fdcaeaeca01292 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-10-21 04:41:45 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-10-21 04:41:45 +0900 Update to ruby/mspec@08e1275 commit 5322745b29b23d4776345ee5bfa3a976497b49ee Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-20 20:13:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-20 20:13:09 +0900 Added entries about default gems and bundled gems commit ca989537a9664ff6ffcd6ba22c269ccc6665a5fe Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-20 16:07:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-20 16:07:22 +0900 Update bundled_gems at 2021-10-20 commit 0c15752556513f99c5275c8ca05808221eb56248 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-03 16:22:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-20 11:22:33 +0900 Use `RUBY_FUNCTION_NAME_STRING` for old Visual C++ Probably `__func__` is supported since Visual C++ 2015 (= 14.0, `_MSC_VER` = 1900). commit 768ceb4ead2c1a78b2af047e8f54f2472b34e849 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-03 12:02:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-20 11:22:33 +0900 Cast to void pointer for `%p` in commented out code [ci skip] commit 7c01cf49083992bc61ec9703b6fb4bc588701c00 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-20 11:05:05 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-20 11:05:05 +0900 NEWS.md: Add error_highlight section commit 07b87f79797c8716f0ee36f3c32879194717ccd6 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-20 10:18:54 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-20 10:18:54 +0900 add NEWS entries about debug.gem commit 8bf33a6fbbad99882a77d5374d461bd870ce2ef2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-03 00:54:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-20 07:57:54 +0900 Ensure the format argument of RUBY_DEBUG_LOG is a string literal commit 9b18f1bffe056f9f3e0c37b7c847ecb3ca942307 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-09-28 18:00:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-20 07:48:30 +0900 Suppress `warning: data argument not used by format string [-Wformat-extra-args]` Notes: Merged: https://github.com/ruby/ruby/pull/4903 commit 79f9f8326a34e499bb2d84d8282943188b1131bd Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-20 02:00:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-20 02:00:42 +0900 * 2021-10-20 [ci skip] commit 3e96b94eba0d5374fe69a7c87b9bc0dc060ecf9c Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-20 02:00:22 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-20 02:00:22 +0900 Enhanced RDoc for Numeric (#4991) Treated: #@- #fdiv #div #abs #zero? #nonzero? #to_int #positive? #negative? Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 6b1efc54c8407e5f6bc1ca1ed3e0e5e79ab9c930 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-19 21:13:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-19 21:13:29 +0900 [ruby/racc] Bump up racc version to 1.6.0 https://github.com/ruby/racc/commit/0c5fe2637c commit de68de87ea87a15d32ab9f42ac6207d190e1273d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-19 21:08:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-19 21:08:48 +0900 [ruby/logger] Bump up logger version to 1.4.4 https://github.com/ruby/logger/commit/82a59c8d3f commit a7d07ee90dc1fe650ba40e94d7a1ae64018a98f1 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-19 20:35:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-19 20:55:55 +0900 [ruby/tempfile] Bump up tempfile version to 0.1.2 https://github.com/ruby/tempfile/commit/e5ec902256 commit 847eeafd65318166fb0277e13bdbe6b2fd09837a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-19 20:51:17 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-19 20:55:33 +0900 [ruby/etc] Bump up etc version to 1.3.0 https://github.com/ruby/etc/commit/85ca541d0b commit b482a516d2dfb6502db478d370a0fca63957786f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-19 20:28:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-19 20:28:57 +0900 [ruby/zlib] Bump up zlib version to 2.1.1 https://github.com/ruby/zlib/commit/82e9a636a6 commit ae25313e80fcd71ea58721ab5ec50f84701862eb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-19 00:29:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-19 17:25:40 +0900 [ruby/etc] Remove unnecessary declaration Fix https://github.com/ruby/etc/pull/12 https://github.com/ruby/etc/commit/7cbf03d22d commit 8d6dbecc80d998c0d801c42aa38c5713e8b53572 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-19 17:09:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-19 17:09:32 +0900 Remove useless casts commit ec021e469d227d3f4e9c95ebb8c52b4a2526870a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-19 17:08:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-19 17:08:25 +0900 Get rid of type-punning cast commit 1d9e12925594be3d06230dc05e8b015f2928b491 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-19 16:41:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-19 16:41:09 +0900 Fill pid and error in the status commit 012cafa5c7274ef50e6306cf5c3e09c2fb64f44d Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-19 08:35:06 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-19 08:35:06 +0900 Enhanced RDoc for numerics (#4982) Treats: Numeric#coerce Numeric#clone Numeric#dup Numeric#@+ (unary plus) Numeric#i Float#coerce Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 8bc24438038e7beb92b5bd07e104b4077f32bb64 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-19 01:09:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-19 01:09:24 +0900 * 2021-10-19 [ci skip] commit fac2c0f73cafb5d65bfbba7aa8018fa427972d71 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-19 01:09:07 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-19 01:09:07 +0900 Fix evaluation order of hash values for duplicate keys Fixes [Bug #17719] Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Co-authored-by: Ivo Anjo <ivo@ivoanjo.me> Notes: Merged: https://github.com/ruby/ruby/pull/4969 Merged-By: jeremyevans <code@jeremyevans.net> commit 59bec48e48f7fc68a5bcff66642cceec0076e509 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-18 17:56:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-18 23:46:58 +0900 Remove declarations unused since a95262356ef5 commit 57bf354c9a878bb67c294408400fd029f9b5a353 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-10-17 03:20:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-18 17:41:38 +0900 Eliminate some redundant checks on `num` in `newhash` The `newhash` instruction was checking if `num` is greater than 0, but so is [`rb_hash_new_with_size`](https://github.com/ruby/ruby/blob/82e2443d8b1e3edd2607c78dddf5aac79a13492d/hash.c#L1564) as well as [`rb_hash_bulk_insert`](https://github.com/ruby/ruby/blob/82e2443d8b1e3edd2607c78dddf5aac79a13492d/hash.c#L4764). If we know the size is 0 in the instruction, we can just directly call `rb_hash_new` and only check the size once. Unfortunately, when num is greater than 0, it's still checked 3 times. Notes: Merged: https://github.com/ruby/ruby/pull/4977 commit dfe944bfbed3cae47e3874de4ed0d2a96c047738 Author: David CARLIER <devnexen@gmail.com> AuthorDate: 2021-10-17 20:19:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-18 17:40:19 +0900 haiku configure fix (again). Notes: Merged: https://github.com/ruby/ruby/pull/4980 commit 6c74976aef2b6f3eeecf6bdcb9b2ac2d9105308e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-18 15:43:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-18 17:36:06 +0900 Remove `Test::Unit::TestCase.make_my_diffs_pretty!` `Test::Unit::CoreAssertions#mu_pp` is defined always using `pretty_inspect`. Notes: Merged: https://github.com/ruby/ruby/pull/4983 commit d1b8544b4df4d5620b05090f1bdd4234d4c2e2b5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-18 15:42:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-18 17:36:06 +0900 Remove `Test::Unit::Assertions#exception_details` Never used since fa0f3eff228bb26de6d5b0e1238b1f358165dbd0. Notes: Merged: https://github.com/ruby/ruby/pull/4983 commit 9d2abb8e924158d0324dd3790dd457dc984eddf2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-18 16:11:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-18 16:11:44 +0900 Update bundled_gems at 2021-10-18 commit 0bbfb6a37b6fa65c2aeb7a587ef75ce2fa4a4ec3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-18 10:29:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-18 11:44:20 +0900 Fix error when srcdir not found So that `spec/mspec/bin/mspec --help` works at least. commit e1e3657746b935e8c9ab6f4beccd0aaed45db9dc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-18 10:13:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-18 11:43:50 +0900 Simplify srcdir fallback commit 0381d10533b5d51a075b0c6505e63bad60c9d1c9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-18 00:24:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-18 00:24:20 +0900 * 2021-10-18 [ci skip] commit 0871652f21c6b7c74e67ba300175ff2a278aee6e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-18 00:23:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-18 00:23:59 +0900 Not all environment variables can be convertible to IBM-437 commit c7eac1be518912bde3e2f22623b1398eb1b950f2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-17 22:34:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-17 22:40:31 +0900 Retry hung up tests verbosely commit 13716898df666210b9067c8a3d05a162c2a6ed66 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-06 11:31:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-17 16:33:58 +0900 Retry hung tests after parallel runs Notes: Merged: https://github.com/ruby/ruby/pull/4976 commit 478187e9a33b7af5b11e570f5133c963af6e1165 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-05 09:09:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-17 16:33:58 +0900 Timeout parallel test worker processes Notes: Merged: https://github.com/ruby/ruby/pull/4976 commit 1831693c1fe4d891112c877dd52d662de66965e7 Author: David CARLIER <devnexen@gmail.com> AuthorDate: 2021-10-17 05:53:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-17 14:00:59 +0900 haiku build update stack overflow check in libroot (haiku's libc) now Notes: Merged: https://github.com/ruby/ruby/pull/4978 commit 82e2443d8b1e3edd2607c78dddf5aac79a13492d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-17 01:34:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-17 01:34:39 +0900 * 2021-10-17 [ci skip] commit 5de6e25144b5c5c72bb9ee1980b976704e07f3d3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-17 00:46:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-17 00:48:45 +0900 Replace unpack with unpack1 commit cc8ff8b50d445b0621fef9f3dce0da02ec3d406f Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-13 14:24:53 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 19:39:13 +0900 [ruby/openssl] require Ruby 2.6 or later Drop support for Ruby 2.3, 2.4, and 2.5. As of 2021-10, Ruby 2.6 is the oldest version that still receives security fixes from the Ruby core team, so it doesn't make much sense to keep code for those ancient versions. https://github.com/ruby/openssl/commit/3436bd040d commit 4991dabdd07a596fe815768438f7103bb51ff411 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-16 18:47:11 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:57:57 +0900 [ruby/openssl] bump version number to 3.0.0.pre https://github.com/ruby/openssl/commit/baa83a8a57 commit cea3c55d58a6ca85582e728c32ff4a359427530c Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-16 16:59:59 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:34:35 +0900 [ruby/openssl] Ruby/OpenSSL 2.2.1 https://github.com/ruby/openssl/commit/65e7207a07 commit 75e72baba1650f68ad028d121c6728793cc7cd10 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-16 16:56:40 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:34:35 +0900 [ruby/openssl] Ruby/OpenSSL 2.1.3 https://github.com/ruby/openssl/commit/e8ee01b22c commit e36906f9abcc8f5f9cd4b5a52dae2ddd0aef8e9d Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-09-28 17:49:04 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:34:35 +0900 [ruby/openssl] test/openssl/test_ssl: use TLS 1.2 for finished_messages on LibreSSL LibreSSL 2.2.x has a bug in the Finished message handling with TLS 1.3. This is fixed by LibreSSL 3.3.2. https://github.com/ruby/openssl/commit/0bea59d245 commit c1147f7f713f82d5c20dc8dfe4062f7bf671515a Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-14 15:53:00 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:34:35 +0900 [ruby/openssl] ssl: avoid directly storing String object in NPN callback On the server side, the serialized list of protocols is stored in SSL_CTX as a String object reference. We utilize a hidden instance variable to prevent it from being GC'ed, but this is not enough because it can also be relocated by GC.compact. https://github.com/ruby/openssl/commit/5eb68ba778 commit f6612203fa6ea240d83b85aa561258ece11fa48b Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-14 15:52:39 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:34:35 +0900 [ruby/openssl] x509store: explicitly call rb_gc_mark() against Store/StoreContext We store the reverse reference to the Ruby object in the OpenSSL struct for use from OpenSSL callback functions. To prevent the Ruby object from being relocated by GC.compact, we must "pin" it by calling rb_gc_mark(). https://github.com/ruby/openssl/commit/a6ba9f894f commit ca28545b517057613f57e4814622e553d6fae442 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-14 15:50:02 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:34:35 +0900 [ruby/openssl] ssl: explicitly call rb_gc_mark() against SSLContext/SSLSocket objects We store the reverse reference to the Ruby object in the OpenSSL struct for use from OpenSSL callback functions. To prevent the Ruby object from being relocated by GC.compact, we must "pin" it by calling rb_gc_mark(). https://github.com/ruby/openssl/commit/022b7ceada commit c6c2190c4c546743981944c9ff258a94a6ea7a09 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-10-12 18:19:55 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:34:35 +0900 [ruby/openssl] digest: load digest library using Kernel#require The digest library is a default gem now, too. Therefore we can't simply use rb_require() to load it, but we should use Kernel#require instead. This change is based on the suggestion by David Rodríguez in https://github.com/ruby/digest/commit/16172612d56ac42f57e5788465791329303ac5d0#commitcomment-57778397 https://github.com/ruby/openssl/commit/157f80794b commit f88401f38e918c0bdc4d7c6b22f25e0a7eef04bb Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2020-09-29 00:05:36 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:34:35 +0900 [ruby/openssl] fix segv in Timestamp::{Request,Response,TokenInfo}.new prevent `ossl_ts_*_free()` from calling when `d2i_TS_*_bio()` failed. https://github.com/ruby/openssl/commit/b29e215786 commit 6dcc74155f8b2951b7fed55cafae9cd27a73f090 Author: David Carlier <devnexen@gmail.com> AuthorDate: 2021-09-05 00:03:49 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:34:35 +0900 [ruby/openssl] ts: libressl build fix warning TS_time_cb on libressl expects an long long/time_t 64 bits long instead. https://github.com/ruby/openssl/commit/4c99f577b2 commit daeb914a525dd7b9faf6ba9f4596deafa22b065a Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-08-30 18:55:10 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:34:35 +0900 [ruby/openssl] ssl: temporary lock string buffer while reading Similarly to SSLSocket#syswrite, the blocking SSLSocket#sysread allows context switches. We must prevent other threads from modifying the string buffer. We can use rb_str_locktmp() and rb_str_unlocktmp() to temporarily prohibit modification of the string. https://github.com/ruby/openssl/commit/d38274949f commit 5828807626b91a5d8036f9c351f8844d724f8804 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-08-30 16:09:04 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:25:28 +0900 [ruby/openssl] ssl: create a temporary frozen string buffer when writing Since a blocking SSLSocket#syswrite call allows context switches while waiting for the underlying socket to be ready, we must freeze the string buffer to prevent other threads from modifying it. Reference: https://github.com/ruby/openssl/issues/452 https://github.com/ruby/openssl/commit/aea874bc6e commit ed7ea35d7450a5c2b7794f56050eb34c071dd34b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2019-12-20 12:19:45 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:25:11 +0900 [ruby/openssl] Fixed misspellings [ This is a backport to the 2.1 branch. ] Fixed misspellings reported at [Bug #16437], for default gems. (cherry picked from commit ruby/ruby@e68999c82c4863d33a6f893661fba1b7538c5671) https://github.com/ruby/openssl/commit/0f43789503 commit 6105ef7629c297c94f9e85f26adf7c0426089ca5 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-03-18 20:04:59 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:19:52 +0900 [ruby/openssl] ssl: add SSLContext#tmp_dh= Provide a wrapper of SSL_set0_tmp_dh_pkey()/SSL_CTX_set_tmp_dh(), which sets the DH parameters used for ephemeral DH key exchange. SSLContext#tmp_dh_callback= already exists for this purpose, as a wrapper around SSL_CTX_set_tmp_dh_callback(), but it is considered obsolete and the OpenSSL API is deprecated for future removal. There is no practical use case where an application needs to use different DH parameters nowadays. This was originally introduced to support export grade ciphers. RDoc for #tmp_dh_callback= is updated to recommend the new #tmp_dh=. Note that current versions of OpenSSL support automatic ECDHE curve selection which is enabled by default. SSLContext#tmp_dh= should only be necessary if you must allow ancient clients which don't support ECDHE. https://github.com/ruby/openssl/commit/aa43da4f04 commit 49217086adf262f63078c65e693796dc892c5216 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-03-18 18:40:58 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-10-16 18:19:51 +0900 [ruby/openssl] ssl: remove private method SSLSocket#tmp_ecdh_callback Commit ee037e146037 ("ssl: remove SSL::SSLContext#tmp_ecdh_callback", 2020-08-12) forgot to remove the method. https://github.com/ruby/openssl/commit/bef9ea84e4 commit 4ffc3fb019bd1373991ca9278299f6d7c44c3024 Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-09-20 23:09:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-16 06:31:11 +0900 [ruby/rdoc] fix: alias to method with call-seq This change fixes alias call-seq to return nil if the method's call-seq does not specify the alias. Previously, the alias's call-seq would be an empty string in this case which broke darkfish rendering. This change also backfills test coverage for 0ead786 which moved call-seq deduplication into AnyMethod. https://github.com/ruby/rdoc/commit/5ce2789b6f commit 5d975684da6d7b8ce309c2b176698b37eac5cabb Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-16 06:20:52 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-16 06:20:52 +0900 Enhanced RDoc for remainder (#4975) Treats Numeric#remainder and Integer#remainder. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 2a5c3a4d0f693ad0fe7b76dd99155e57149d2cac Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-16 05:54:03 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-16 05:54:03 +0900 Update documentation for String and Symbol to discuss differences Implements [Feature #14347] commit 37ea909f426db2c548f7d79139c0eb924b68ef77 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-16 02:51:37 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-16 02:51:37 +0900 Enhanced RDoc for divmod (#4973) Treats: Integer#divmod Float#divmod Numeric#divmod Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 2043c2e7e493ce44e66e62968c7ace237c137cb5 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-16 01:57:49 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-16 01:57:49 +0900 Enhanced RDoc for numeric.c (#4964) Treats Integer#% and Float#%. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 4c42540da2c26f2d83b43c7a3c61e17d610896e8 Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-10-11 23:47:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-16 01:40:47 +0900 [ruby/rdoc] Support linking #== See related commits: - ebc66662 for #=== - 4943d208 for #[], #[]=, #<<, and #>> https://github.com/ruby/rdoc/commit/8e47f7840a commit 7aec65add42d20ba8d70ad33c7b1e8978007e29e Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-10-12 02:44:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-16 01:39:36 +0900 [ruby/rdoc] feat: add support for :category: on C functions https://github.com/ruby/rdoc/commit/45c92005fe commit c322069a670a1ea2077429d9e7146e93e8e92eae Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-16 01:39:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-16 01:39:22 +0900 * 2021-10-16 [ci skip] commit fbd0516afc2bb7219716aa4f810f83af8112ca49 Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-10-12 06:01:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-16 01:39:06 +0900 [ruby/rdoc] fix: comments in C files use the global markup option Previously, Parser::C comments all defaulted to "rdoc" format, even when the user had set a different default with the `--markup=<choice>` option. https://github.com/ruby/rdoc/commit/4643b08a26 commit d4894e81c0a2acb826686f178e4b1b1ed88adefa Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-10-12 05:47:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-16 01:39:05 +0900 [ruby/rdoc] extract Comment creation in Parser::C This is a prefactor for fixing comment format handling. https://github.com/ruby/rdoc/commit/a3d366feed commit 9225f3c1c6304904a33ffaa608c77424441621e9 Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-10-12 05:46:27 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-16 01:39:04 +0900 [ruby/rdoc] test: add coverage for comment format in a C file https://github.com/ruby/rdoc/commit/3b8334a796 commit 19beb028e70d6e6893b0fb1107eb95428256588b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-15 19:43:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-15 19:59:14 +0900 Make explicit opening files commit 855db8e9ce613d0bec19960eb875498d74b53756 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-15 19:42:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-15 19:42:39 +0900 Use `__dir__` commit 370fff98ce93f51e2727b92b0b7b6afb4576cc98 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-15 18:47:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-15 18:47:25 +0900 Prefer `require_relative` commit 027a3379d67922738d503511c2123989229f8d9b Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-10-05 16:43:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-15 15:31:15 +0900 [ruby/zlib] Fix a bug that GZipReader#gets may return incomplete line See also: https://github.com/ruby/csv/issues/117#issuecomment-933289373 How to reproduce with x.csv.gz in the issue comment: Zlib::GzipReader.open("x.csv.gz") do |rio| rio.gets(nil, 1024) while line = rio.gets(nil, 8192) raise line unless line.valid_encoding? end end Reported by Dimitrij Denissenko. Thanks!!! https://github.com/ruby/zlib/commit/b1f182e98f commit 679054208e320d4e639aa3dc1f16ad1a4945ac72 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-15 01:23:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-15 15:07:31 +0900 Use `__dir__` commit 46291a29fbb92a6e04aa1b8555efb30cca2ab6dc Author: Jack Schuss <jackschuss@gmail.com> AuthorDate: 2021-10-15 03:09:09 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-15 04:55:23 +0900 [rubygems/rubygems] Update broken link in Bundler::Fetcher::CertificateFailureError https://github.com/rubygems/rubygems/commit/11b5d479cb commit c658834c43af8a349baf2b29aee45713c43a1f73 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-15 01:26:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-15 01:26:26 +0900 * 2021-10-15 [ci skip] commit e057b9eea9021046a43dd59f45fe0cf34d69e8cb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-14 20:09:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-14 23:44:15 +0900 Prefer the reentrant versions of gmtime and localtime commit fc9f9231cf6ce911df37256faf22e6e8e23cb988 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-14 23:17:20 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-10-14 23:17:20 +0900 Update bundled_gems commit c19685e208401594c1a21256382eacfadc22d53a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-14 22:56:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-14 22:57:45 +0900 Reap rarely leaked threads commit 2fa0d51ac9b505a836369a5613e2d0359ee918cf Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 21:15:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 21:15:57 +0900 [ruby/date] Bump up date version to 3.2.0 https://github.com/ruby/date/commit/e0a4cbc8f6 commit befb37c2c4f202f13276ff8750612ea464b64457 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 21:03:19 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 21:14:35 +0900 [ruby/drb] Bump up drb version to 2.1.0 https://github.com/ruby/drb/commit/e4b7b68d67 commit 20bd9e7c61450e93aec80e3106dbb27d5a649903 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 20:59:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 21:14:35 +0900 [ruby/drb] Bump up drb version to 2.0.5 https://github.com/ruby/drb/commit/7edf67654c commit e6b3eab1b70434485a4b9e1115bf8454f34cf5c2 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 20:42:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 21:14:35 +0900 [ruby/time] Bump up time version to 0.2.0 https://github.com/ruby/time/commit/b9dd593b23 commit 9c96bcf07dc804e6c1e3a3cdcd60542c072dcaf7 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 20:37:34 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 21:14:34 +0900 [ruby/open-uri] Bump up open-uri version to 0.2.0 https://github.com/ruby/open-uri/commit/ec4275a1eb commit b7f557178d4e1fac7d627d3b64e3a0ae15458111 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 21:07:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-14 21:08:03 +0900 [ruby/pathname] Bump up pathname version to 0.2.0 https://github.com/ruby/pathname/commit/e6b3b3ed25 commit d13c6c56dd1a07403517564b7a8c1d91e289d4f4 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 20:35:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-14 20:41:15 +0900 [ruby/base64] Bump up base64 version to 0.1.1 https://github.com/ruby/base64/commit/b9e23b27f9 commit f88628014a02fa3b8a3bb9900d9e25a1d517b2f1 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 20:28:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 20:29:27 +0900 [ruby/nkf] Bump up nkf version to 0.1.1 https://github.com/ruby/nkf/commit/9aa7c6b841 commit b6e5264783aec6ebbd3b5f7b414ededfa8f2ddb8 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 20:25:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 20:26:15 +0900 [ruby/find] Bump up find version to 0.1.1 https://github.com/ruby/find/commit/90c35c477a commit 9ed125040292df38d8ce53464940341d4a77011c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 20:14:48 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 20:16:04 +0900 [ruby/yaml] Bump up yaml version to 0.2.0 https://github.com/ruby/yaml/commit/cef5360823 commit 391ebfc35df90207d0660cc4564bc8433bed7604 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-12 18:10:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-14 20:13:09 +0900 Disable install-doc at CodeQL commit 4cf367b8352d85becdddfdd2af5a045a9dedff21 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-12 17:44:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-14 20:13:09 +0900 Set GNUMAKEFLAGS at CodeQL commit 2c75fc915ee3a784433775959459256e59a3e5d7 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 20:11:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-14 20:12:29 +0900 [ruby/timeout] Bump up timeout version to 0.2.0 https://github.com/ruby/timeout/commit/02e792ddd8 commit 6f67a78ad6ddc3e910326648e862c27b75fff3ae Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 20:06:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 20:09:41 +0900 [ruby/cgi] Bump up cgi version to 0.3.0 https://github.com/ruby/cgi/commit/95324433b4 commit caf34400c00205671442b53d412cfb5f8150c96c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 19:45:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 20:09:41 +0900 [ruby/benchmark] Bump up benchamark version to 0.2.0 https://github.com/ruby/benchmark/commit/eea1657fa2 commit d210950196bb24a2ff5f8afdd02b1ee95abbaf5f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-14 13:17:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-14 18:44:27 +0900 [ruby/etc] Get rid of alloca in the loop https://github.com/ruby/etc/commit/c989bacc4c commit 1d6a490c2c67d4796c52335bdb28038960c29d9d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-14 14:27:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-14 18:43:32 +0900 Cast up to get rid of the potential overflow posibility Notes: Merged: https://github.com/ruby/ruby/pull/4968 commit 1220556f33e21b4ba76e982f1a3b18cb47403bfb Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 17:16:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 17:18:21 +0900 [ruby/fcntl] Bump up fcntl version to 1.0.1 https://github.com/ruby/fcntl/commit/0bcc0c4518 commit 91c2069dcfba46c3fd0d56f999bba395015b4c86 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 16:44:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 17:04:37 +0900 [flori/json] Bump up json version to 2.6.0 https://github.com/flori/json/commit/1942689b67 commit 6b1344804047b0ffb29033bc918c0c5f727b3f30 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 16:03:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 16:18:41 +0900 [ruby/zlib] Bump up zlib version to 2.1.0 https://github.com/ruby/zlib/commit/dd593acaee commit db500f05c2887999c10969e9d9e12ea24ae0d56b Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 15:40:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 16:18:36 +0900 [ruby/zlib] Bump version to v2.0.0 https://github.com/ruby/zlib/commit/434eba55ae commit 724c6577006be743259823c90b1fdfeeb1c31ccf Author: 180909 <wjh180909@gmail.com> AuthorDate: 2021-10-14 15:05:44 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-14 15:05:44 +0900 Remove repeated 'the' (#4966) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 9e86a603063dc564810bff209913365f894e00e7 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 13:58:10 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 14:07:50 +0900 Removed redundant digest namespace commit 3265af2f9e5ff9355c5e1ed90aeb0497d10f611e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 13:31:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 13:31:45 +0900 separate pure ruby location under the digest/* extensions commit 13772caee21345f688a65ca1fdef27c34f055b80 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-14 13:23:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-14 13:23:45 +0900 Move pure ruby files under the ext/gemname/lib directory. commit 3099bb6e3c66ce52e1e2c1c93d4193d415d3c911 Author: U.Nakamura <usa@ruby-lang.org> AuthorDate: 2021-10-14 10:22:55 +0900 Commit: U.Nakamura <usa@ruby-lang.org> CommitDate: 2021-10-14 10:23:33 +0900 rb_encoding is already const - this change get rid of a warning of mswin build. see include/ruby/internal/encoding/encoding.h(116) commit fa12e3e2f7df205db5f5e179f845c7d758aee86c Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-07 18:27:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-14 09:12:16 +0900 [ruby/fileutils] Remove counterproductive optimization I think it's debatable which is the most common usage of `FileUtils.mkdir_p`, but even assuming the most common use case is creating a folder when it doesn't previously exist but the parent does, this optimization doesn't seem to have a noticiable effect there while harming other use cases. For benchmarks, I created this script ```ruby require "benchmark/ips" Benchmark.ips do |x| x.report("old mkdir_p - exists") do FileUtils.mkdir_p "/tmp" end x.report("new_mkdir_p - exists") do FileUtils.mkdir_p_new "/tmp" end x.compare! end FileUtils.rm_rf "/tmp/foo" Benchmark.ips do |x| x.report("old mkdir_p - doesnt exist, parent exists") do FileUtils.mkdir_p "/tmp/foo" FileUtils.rm_rf "/tmp/foo" end x.report("new_mkdir_p - doesnt exist, parent exists") do FileUtils.mkdir_p_new "/tmp/foo" FileUtils.rm_rf "/tmp/foo" end x.compare! end Benchmark.ips do |x| x.report("old mkdir_p - doesnt exist, parent either") do FileUtils.mkdir_p "/tmp/foo/bar" FileUtils.rm_rf "/tmp/foo" end x.report("new_mkdir_p - doesnt exist, parent either") do FileUtils.mkdir_p_new "/tmp/foo/bar" FileUtils.rm_rf "/tmp/foo" end x.compare! end Benchmark.ips do |x| x.report("old mkdir_p - more levels") do FileUtils.mkdir_p "/tmp/foo/bar/baz" FileUtils.rm_rf "/tmp/foo" end x.report("new_mkdir_p - more levels") do FileUtils.mkdir_p_new "/tmp/foo/bar/baz" FileUtils.rm_rf "/tmp/foo" end x.compare! end ``` and copied the method with the "optimization" removed as `FileUtils.mkdir_p_new`. The results are as below: ``` Warming up -------------------------------------- old mkdir_p - exists 15.914k i/100ms new_mkdir_p - exists 46.512k i/100ms Calculating ------------------------------------- old mkdir_p - exists 161.461k (± 3.2%) i/s - 811.614k in 5.032315s new_mkdir_p - exists 468.192k (± 2.9%) i/s - 2.372M in 5.071225s Comparison: new_mkdir_p - exists: 468192.1 i/s old mkdir_p - exists: 161461.0 i/s - 2.90x (± 0.00) slower Warming up -------------------------------------- old mkdir_p - doesnt exist, parent exists 2.142k i/100ms new_mkdir_p - doesnt exist, parent exists 1.961k i/100ms Calculating ------------------------------------- old mkdir_p - doesnt exist, parent exists 21.242k (± 6.7%) i/s - 107.100k in 5.069206s new_mkdir_p - doesnt exist, parent exists 19.682k (± 4.2%) i/s - 100.011k in 5.091961s Comparison: old mkdir_p - doesnt exist, parent exists: 21241.7 i/s new_mkdir_p - doesnt exist, parent exists: 19681.7 i/s - same-ish: difference falls within error Warming up -------------------------------------- old mkdir_p - doesnt exist, parent either 945.000 i/100ms new_mkdir_p - doesnt exist, parent either 1.002k i/100ms Calculating ------------------------------------- old mkdir_p - doesnt exist, parent either 9.689k (± 4.4%) i/s - 49.140k in 5.084342s new_mkdir_p - doesnt exist, parent either 10.806k (± 4.6%) i/s - 54.108k in 5.020714s Comparison: new_mkdir_p - doesnt exist, parent either: 10806.3 i/s old mkdir_p - doesnt exist, parent either: 9689.3 i/s - 1.12x (± 0.00) slower Warming up -------------------------------------- old mkdir_p - more levels 702.000 i/100ms new_mkdir_p - more levels 775.000 i/100ms Calculating ------------------------------------- old mkdir_p - more levels 7.046k (± 3.5%) i/s - 35.802k in 5.087548s new_mkdir_p - more levels 7.685k (± 5.5%) i/s - 38.750k in 5.061351s Comparison: new_mkdir_p - more levels: 7685.1 i/s old mkdir_p - more levels: 7046.4 i/s - same-ish: difference falls within error ``` I think it's better to keep the code simpler is the optimization is not so clear like in this case. https://github.com/ruby/fileutils/commit/e842a0e70e commit d8d97872a1e0f2785b7666b8efa009a00e237965 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-07 18:26:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-14 09:12:15 +0900 [ruby/fileutils] Simplify loop to find out segments to be created Doing it this way is simpler and it doesn't end up adding "/" to the list of folders, so it doesn't need to be removed later. https://github.com/ruby/fileutils/commit/df08e124ce commit a4f2aafd3a9bc2e10fc68558ba1835d7419c4e45 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-14 00:17:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-14 05:03:36 +0900 [rubygems/rubygems] Remove save_loaded_features https://github.com/rubygems/rubygems/commit/f5e408f83d commit 3f0150f2fd408421c4625976d0c88df27b6753d3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-13 22:19:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-14 05:03:36 +0900 [rubygems/rubygems] Keep loaded features Now `$LOADED_FEATURES` list is being maintained by `setup` and `teardown` and, only libaries under the temporary directory will be removed. As `save_loaded_features` removes the rest libraries other than this test directory, ordinary libraries loaded from files under rubygems also removed, and often causes constant redefinition warnings. https://github.com/rubygems/rubygems/commit/9e1f92aafd commit 1aa9fcca7679afe31d273a61808d210a3d702ea5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-14 01:11:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-14 01:11:31 +0900 Fix STATIC_SYM2ID for large ID on IL32LLP64 platforms commit c44f7a6c43509b4ad4ad37b9e8e459ad586705fb Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-14 00:20:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-14 00:20:31 +0900 * 2021-10-14 [ci skip] commit 8f480eafabebc55249f1436ab0ca059c239a8134 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-11 23:35:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-14 00:20:13 +0900 rb_group_member: Simplify Notes: Merged: https://github.com/ruby/ruby/pull/4963 commit 9a3333986f76522fd6e0b9ca92045895a1aa45e0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-11 23:17:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-14 00:20:13 +0900 Add more `grpowned?` tests Notes: Merged: https://github.com/ruby/ruby/pull/4963 commit 058cd3a6dfab3b357e001a44456889d72b099a18 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-26 20:00:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 23:30:13 +0900 [rubygems/rubygems] Remove unnecessary method https://github.com/rubygems/rubygems/commit/97241e0ea4 commit 621fe09016b06ee8bfb05511416e7138a24b3b37 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-26 19:57:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 23:30:13 +0900 [rubygems/rubygems] Reuse `sh` helper for `git push` too https://github.com/rubygems/rubygems/commit/32aa540163 commit df21600b98dfe58528e1ace9961b8eb6bbad5b46 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-25 21:49:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 23:30:12 +0900 [rubygems/rubygems] Simplify some code This method always receives an array, and we require `shellwords` unconditionally at the top of the file, so `shelljoin` will always be available. https://github.com/rubygems/rubygems/commit/05c8ac641d commit e97c671b3a21aeb1b2813f44487b6232cb39a205 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-25 18:40:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 23:30:12 +0900 [rubygems/rubygems] Reuse `sh` helper https://github.com/rubygems/rubygems/commit/c218d4d79e commit 30b6df41440ea2a0421efd0f3146750e872760fc Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-25 18:30:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 23:30:11 +0900 [rubygems/rubygems] Improve error messages in gem helpers Previously they were printing the original command that was run, and telling the user to rerun it. However, the command sometimes would not match the exact command that was run (for example, when using the `--local` flag), and in any case, it's simpler and more useful to print the underlying error anyways. https://github.com/rubygems/rubygems/commit/5bc0d51b58 commit 853004e04d86502e1df509302a4c5dce03d9d40e Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-09-30 04:11:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 21:16:40 +0900 [rubygems/rubygems] Fix `bundle install` crash due to an incorrectly incomplete resolve In case we have a corrupted lockfile that claims to support a platform, but it's missing platform specific gems for it, bundler has a check that detects the situation and forces a re-resolve. The result of this check is kept under the `@locked_specs_incomplete_for_platformn` instance variable in `Definition`. The installer, however, calls `Definition#nothing_changed?` before this instance variable has been filled, so the result of it is actually incorrect here since it will claim that nothing has changed, but something has changed (locked specs are incomplete for the current platform). The consequence of this incorrect result is that the installer thinks it can go on without re-resolving, resulting in the incomplete resolution from the lockfile being used, and in a crash being triggered due to that. The solution is to make sure the `@locked_specs_incomplete_for_platform` instance variable is filled before `nothing_changed?` gets called. Moving it to `initialize` makes the most sense, not because it's the best place for it (we can refactor this later), but because all of the other "outdated definition" checks are already set there. https://github.com/rubygems/rubygems/commit/708afdd789 commit d1e6f2226bccebaf5dfd20d64b794d3caa08e52f Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-09-30 03:53:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 21:16:40 +0900 [rubygems/rubygems] No need to use converged dependencies either This is exclusively about the lockfile. https://github.com/rubygems/rubygems/commit/d6c6d040cd commit ec5f732b7d48b557c9d8974709f7175bd9f99323 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-09-30 03:07:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 21:16:39 +0900 [rubygems/rubygems] Extract `locked_dependencies` helper https://github.com/rubygems/rubygems/commit/7326d47530 commit 15f50d3bedbae76d7774601a4f7d93a330280098 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-09-30 03:04:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 21:16:39 +0900 [rubygems/rubygems] Simplify the incomplete locked specs for platform check It doesn't really need converged specs, since it's only about the lockfile. https://github.com/rubygems/rubygems/commit/9cd6224b5e commit 275b55aea486a244f035e7591208a50f00ea1411 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-13 19:04:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-13 19:04:46 +0900 Revert "Shallow clone on TravisCI" This reverts commit 10d2341640c57544ca81bd21cfa60a6aff015692. TravisCI clones the head of the target branch, and it may not be the target commit at that time. commit 0f1f95a3e3011b6c61fdc455e4078e5e231548e3 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-09 20:42:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 16:21:42 +0900 [rubygems/rubygems] Fix `bundle install` to force reinstallation of deleted gems https://github.com/rubygems/rubygems/commit/8950631f02 commit bd87397f73c36f1428b4cf8de24918b98fa71c8a Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-12 02:59:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 16:21:42 +0900 [rubygems/rubygems] Use correct way to detect default gems The other way, in particular matching a substring in the gemspec summary, is brittle and no longer used since Ruby 2.0. This needed rewriting the specs that depended on that way. https://github.com/rubygems/rubygems/commit/059dbfa971 commit d6627ab85c7e29a45ee61af350a38c37ea2bd83b Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-12 02:58:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 16:21:41 +0900 [rubygems/rubygems] Remove unnecessary code All supported rubygems versions implement this. https://github.com/rubygems/rubygems/commit/2130782ef6 commit ad4e7308d2c269ee3bd88fbc3a153d76fc3e9910 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-09 20:21:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 16:21:41 +0900 [rubygems/rubygems] Make spec more realistic The spec was just faking an installed gemspec without any installed gem backing it up, resulting in `bundle install` claiming that the gem was already installed when it was not. https://github.com/rubygems/rubygems/commit/c35531d1c7 commit 10d2341640c57544ca81bd21cfa60a6aff015692 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-13 14:11:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-13 16:02:50 +0900 Shallow clone on TravisCI commit 5deb273a1ac4dcb0751e695a2a20ce2d0d02b99c Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-13 15:04:16 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-10-13 15:04:16 +0900 Fix a typo commit 1b35808a13cc69f2014ffa849de8be15139d8e4e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-13 13:00:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-13 13:00:57 +0900 Moved the common code commit bad61d34bed71ff3b68c6b1b29f038b305723cc0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-13 12:07:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-13 12:07:57 +0900 Qundef is not for ID commit aa5759a22b675d05d1f8cbfe4558eb37915c27fb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-13 11:27:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-13 11:27:09 +0900 `rb_id_serial_to_id` is used in `key2id` since 4c2d014e9216 commit 5c646ca0a09c5249b20cf5645e27ee75fe4dff04 Author: Kaíque Kandy Koga <kaiquekandykoga@gmail.com> AuthorDate: 2021-10-11 04:30:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 06:33:48 +0900 [ruby/irb] Ignore parenthesis during completion Rename method https://github.com/ruby/irb/commit/619aecb412 commit 38d255d023373a665ce0d2622ed6e25462653a2a Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-10-13 02:30:34 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-10-13 03:37:38 +0900 .travis.yml: Comment out the 2nd arm64 pipeline. The 2nd arm64 pipeline is unstable now in Travis. As Cirrus CI has arm64 pipelines, it's not a problem to drop the arm64 pipeline in Travis. Notes: Merged: https://github.com/ruby/ruby/pull/4956 commit a7fe7cf65752c53731470b67659ee10b824c9b1e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-13 02:24:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 02:24:25 +0900 * 2021-10-13 [ci skip] commit 41db84aa304e48f1b5082bb8a7b1536501b50c79 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-13 02:07:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-13 02:24:01 +0900 [ruby/reline] Skip when unable to set input `Reline::Windows` always reads from the console by Windows API using fiddle. https://github.com/ruby/reline/commit/c3bf85f5af commit 013bac15b01b69b8f556074bc30333dc913b9118 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-12 22:32:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-12 22:32:42 +0900 Fix libraries under digest commit bb66729b5ffb0e59825503d5d5b703d60c8a3f85 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-12 22:06:05 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-12 22:06:05 +0900 Enhanced RDoc for Numeric#% (#4954) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 58ae1efb49e2ba10960a62b4f4e1c01811b71e59 Author: Akinori MUSHA <knu@idaemons.org> AuthorDate: 2021-10-01 11:07:19 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-12 20:53:18 +0900 [ruby/digest] Avoid the constant redefinition warning The gem and bundle commands first load digest via openssl, so loading the digest gem would cause this warning every time one of these commands is run: ``` .../lib/ruby/gems/3.0.0/gems/digest-3.1.0/lib/digest.rb:11: warning: already initialized constant Digest::REQUIRE_MUTEX .../lib/ruby/3.0.0/digest.rb:7: warning: previous definition of REQUIRE_MUTEX was here ``` https://github.com/ruby/digest/commit/16172612d5 commit 01dc55ffad7f8b28865d7c1138f92b70348436ff Author: Akinori MUSHA <knu@idaemons.org> AuthorDate: 2021-10-01 02:29:37 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-12 20:53:18 +0900 [ruby/digest] Bump version to 3.1.0.pre2 https://github.com/ruby/digest/commit/5184207611 commit ab787c493b99f1c5195ebb7f29e8d5602ecc60f4 Author: Akinori MUSHA <knu@idaemons.org> AuthorDate: 2021-10-01 02:04:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-12 20:53:18 +0900 [ruby/digest] Bump version to 3.1.0.pre1 https://github.com/ruby/digest/commit/56679008cf commit 10a0fac7e4270fbbaca5458636bbc49a6887e6c9 Author: Pavel Rosický <pavel.rosicky@easy.cz> AuthorDate: 2021-10-01 00:22:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-12 20:53:17 +0900 [ruby/digest] include jars https://github.com/ruby/digest/commit/c15cbcd978 commit e94bcda02539e1695cdda9550ace45c1890e541c Author: Akinori MUSHA <knu@idaemons.org> AuthorDate: 2021-09-30 23:54:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-12 20:53:17 +0900 [ruby/digest] Bump version to 3.1.0.pre0 https://github.com/ruby/digest/commit/594cc4d548 commit b245b67d9e325824f3869d839a16d06c6a1e8392 Author: Akinori MUSHA <knu@idaemons.org> AuthorDate: 2021-09-27 16:31:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-12 20:53:16 +0900 [ruby/digest] Place common parts in lib and engine specific parts under ext/**/lib https://github.com/ruby/digest/commit/8d7496c3be commit 5e1d2c5c9770118713857499c28cd55a2c483631 Author: Pavel Rosický <pavel.rosicky@easy.cz> AuthorDate: 2021-07-07 21:29:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-12 20:46:16 +0900 [ruby/digest] relicence under the Ruby license and the BSD 2-clause https://github.com/ruby/digest/commit/154d461e91 commit 94882df3a215a3de16fa7ca18cf5c160f904c904 Author: Pavel Rosický <pavel.rosicky@easy.cz> AuthorDate: 2021-06-13 01:49:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-12 20:46:13 +0900 [ruby/digest] jruby support https://github.com/ruby/digest/commit/2e9dc14693 commit ff1f696d300cdf2a7073ddec91846cd3aee103d8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-06 12:59:14 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-12 20:44:14 +0900 [ruby/digest] Move digest.rb back under ext as the extension bundled library https://github.com/ruby/digest/commit/026ba7f361 commit 97302a362b75aef8e8ef14afe0c9803a4aa00ec9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-12 19:05:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-12 19:11:56 +0900 [ruby/reline] Close working pipes https://github.com/ruby/reline/commit/ac519f57ea commit f310c19544ca2bf1805edcb83a15ae49817259b3 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-12 18:07:55 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-10-12 18:07:55 +0900 Suppress some messages on building mjit header commit 2143de251d668a33b09c12f2df863d205f034316 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-11 22:24:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-12 17:12:01 +0900 Extract precompile_inlinable_child_iseq to separate alloca for each iseq Notes: Merged: https://github.com/ruby/ruby/pull/4951 commit 8dd6d58543cc9ebab7569a0b48ed96469d9de2f7 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-12 15:24:37 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-10-12 16:45:22 +0900 Add more socket constants from http://manpages.ubuntu.com/manpages/focal/en/man2/socket.2.html Notes: Merged: https://github.com/ruby/ruby/pull/4955 commit a48dc89547e3c235350394b4a735c9d50892c152 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-12 10:42:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-12 13:19:25 +0900 [ruby/reline] Check the result of GetConsoleScreenBufferInfo https://github.com/ruby/reline/commit/42edf7b3aa commit 1009fd7ee3d04c5cc4ca4a8b523a6d4d56a0da88 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-12 10:05:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-12 13:19:24 +0900 [ruby/reline] Revert "Fix zero division when the screen width is not available" This reverts commit 0dce9da083541f42c31822a91c72f339934c3986. https://github.com/ruby/reline/commit/f71471cdde commit ec4d536d420d0071778d80f55695f285b5d92faf Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-12 12:53:56 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-10-12 12:53:56 +0900 Update bundled_gems commit 373b399823e0c5ab315df76f82467fca27ec40d6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-11 17:33:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-12 00:45:14 +0900 bary_mul_balance_with_mulfunc: move working buffer allocation Move the allocation of working buffer before the loop. Notes: Merged: https://github.com/ruby/ruby/pull/4949 commit 6fa1af7ee5ab88d0be5ae61f5956f7b51b552ee0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-11 13:28:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-12 00:45:14 +0900 bary_mul_balance_with_mulfunc: consitify invariant variables Notes: Merged: https://github.com/ruby/ruby/pull/4949 commit fdf5798fa18374ec85fc63732917643bf17290e0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-12 00:40:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-12 00:40:39 +0900 * 2021-10-12 [ci skip] commit 60689f0f20cf54ea85aea6ec7e07e3b8bb7c7119 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-11 20:34:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-12 00:40:22 +0900 [ruby/reline] Fix zero division when the screen width is not available https://github.com/ruby/reline/commit/0dce9da083 commit e212d051d0358734f78b5c402dddd9b631a12fe1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 21:24:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 21:34:31 +0900 [ruby/reline] Rescue LoadError to require 'fiddle' https://github.com/ruby/reline/commit/fe504bb6b9 commit 89556a6555abc508cced1189c02cf4ea8e9a661b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 20:57:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 21:17:02 +0900 [ruby/reline] Remove a comment for debug https://github.com/ruby/reline/commit/5f3ccda3d5 commit 4b024234b2141d5fd024639b4ce6feeb95fb3f14 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 21:06:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 21:15:07 +0900 [ruby/rdoc] Update SourceCodePro font files https://github.com/ruby/rdoc/commit/d3201d0d47 commit 77320527180018a3083a287afee99ac6549b0d0d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 20:40:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 21:12:58 +0900 [ruby/irb] Add help about extra doc dir option https://github.com/ruby/irb/commit/5018f2cb99 commit 866a09dd9ea2775a3231c0e9833f3bca48947f30 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 20:35:27 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 21:12:57 +0900 [ruby/irb] Add --extra-doc-dir option to show doc dialog https://github.com/ruby/irb/commit/3f79cb506f commit dcaaf79ca06a1825a0e489d1c9d188d8c0d6f36f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 20:34:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 20:34:18 +0900 [ruby/irb] Add periods to doc https://github.com/ruby/irb/commit/6330601629 commit 9f94a07e741facccb6b9038ae82922ff1e9c408e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-11 20:29:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 20:32:34 +0900 [ruby/reline] Fix test class not to overwrite https://github.com/ruby/reline/commit/1e78984c49 commit 0c3ac8734558232c5287ea737edfbe5a3ab4f290 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-09 18:29:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 19:13:16 +0900 [rubygems/rubygems] Show a warning in `bundle info` if gem has been deleted https://github.com/rubygems/rubygems/commit/ff86cd7dd2 commit 607efe91540057ef0ca3be4a829869df018ee94a Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-09 18:28:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 19:13:15 +0900 [rubygems/rubygems] Show the exact name of the gem that was deleted If a non exact name (matched as a regexp) is passed to `bundle info`, these strings might not match. https://github.com/rubygems/rubygems/commit/831edf1edf commit 62d1deb0d12b2a2ff77d7b5dfda57a32b1a0ac1c Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-09 18:32:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 19:13:15 +0900 [rubygems/rubygems] Match a more exact warning message https://github.com/rubygems/rubygems/commit/80158e9d75 commit 990e079b996fd4637e8c3ba4b67f3d6d712b625d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 18:17:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 18:43:27 +0900 [ruby/reline] Reline doesn't have Reline.editing_mode https://github.com/ruby/reline/commit/90c61d8188 commit 5895b4a7d9571ca970b02b68b42e39eafde86fb7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 17:49:54 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 18:43:27 +0900 [ruby/reline] Add I/O test https://github.com/ruby/reline/commit/bca9b9012f commit 5987bcaa2d106d40d078787ced553e237ef36891 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 17:30:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 18:43:26 +0900 [ruby/reline] Use single quotes to match the others https://github.com/ruby/reline/commit/58a7ca4101 commit b7ac9a2445a0b217ec4c2db9b712bba84ebff575 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 17:28:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 18:43:25 +0900 [ruby/reline] Add a test for Reline.delete_text https://github.com/ruby/reline/commit/d1c5700fa3 commit 60d20e3537134321d4fea82a226227acbeddbe4b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 17:16:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 18:43:25 +0900 [ruby/reline] Add assertions for Reline.point https://github.com/ruby/reline/commit/a8c7b207f0 commit 706239fcc1c8f2980c363a791158b29666070a9d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 17:14:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 18:43:24 +0900 [ruby/reline] Add a test for Reline.insert_text and Reline.line_buffer https://github.com/ruby/reline/commit/ae828208e1 commit 6f41cab704d1b3dd44910e0e943dceebde6fcb1a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 16:21:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 16:24:45 +0900 [ruby/reline] Suppress warning, "instance variable @ambiguous_width not initialized" https://github.com/ruby/reline/commit/368f7e2f78 commit b5f0e209362bd62f9d1b2258eeff9649ef051b61 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-10-11 15:48:45 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-10-11 15:49:15 +0900 Add comments in sync_default_gems.rb to ease the maintenance of ruby-commit-hook/bin/update-default-gem.sh commit 340fabca2c8abe29efe5c5a5c0f3ddc9b2ba8035 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-11 15:31:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 15:39:48 +0900 [ruby/irb] Set default return_format https://github.com/ruby/irb/commit/7ee15bc668 commit 69cedee2a65882c637a815f1d39bf02fa0756114 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-10-11 15:37:48 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-10-11 15:38:51 +0900 chmod +x tool/sync_default_gems.rb I'm too lazy to start the command with `ruby`. commit 82b87a8dc4d4bfe6436d86d78536cbc79d5f7c5c Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-10-11 15:24:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 15:25:05 +0900 [ruby/irb] Clean up a duplicated definition I simply forgot deleting it. https://github.com/ruby/irb/commit/65399d5e9f commit 2e183c62736bed809e8edbcf054f5c9d6a837751 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-10-11 15:18:43 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-10-11 15:23:48 +0900 [ruby/irb] trufflruby fails on the show_source test https://github.com/ruby/irb/commit/460bd12b87 commit b33caa5bbc1ff6cb2ea1656419e1fa09e3e60690 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-10-11 15:02:50 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-10-11 15:23:47 +0900 [ruby/irb] Add a test of find_end for show_source command https://github.com/ruby/irb/commit/68e6ca95a0 commit cf74755921623225b30d592a83792c43677b9f52 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-10-11 14:47:30 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-10-11 15:23:18 +0900 [ruby/irb] Revert "Optimize show_source command further" This reverts commit 27dd2867cda5c789efaa5078214ad2fd82adcebf. This is to fix the test I added. (I separated commits to test a new behavior of ruby-commit-hook) https://github.com/ruby/irb/commit/fe055d521a commit 3112e876a17aa750a75d56a7841902bff799b796 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-10 18:58:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 14:10:35 +0900 [ruby/reline] Add tests for dialog with fullwidth chars and corner cases https://github.com/ruby/reline/commit/35ab5d47a8 commit 391d6ab4f7c3070d0c46dbd7496255d8269f6c1f Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-08 00:02:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-11 13:50:54 +0900 [ruby/ipaddr] Fix include? and ipv4_mapped to allow drb tests to pass include? should return false if comparing an IPv4 address to an IPv6 address. ipv4_mapped needs to set the correct netmask on the mapped addresses. https://github.com/ruby/ipaddr/commit/da22ef8e6c commit 9a321dd9b2fb929873a6b50b41efdf3bd3119536 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2019-11-01 02:06:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-11 13:50:54 +0900 [ruby/ipaddr] Make IPAddr#include? consider range of argument It would be nice to use Range#cover? here, but it doesn't work correctly before Ruby 2.6. Switch to manual checks of the beginning of end of the ranges. Fixes Ruby Bug 14119 https://github.com/ruby/ipaddr/commit/f45630da31 commit b9f7286fe95827631b11342501e471e5e6f13bbb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-11 10:47:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-11 11:33:15 +0900 [ruby/io-console] Skip Interrupt test on Solaris too https://github.com/ruby/io-console/commit/48db3616da commit e0c20485db62f1c764b9902ad4e64658a9027632 Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-11 00:10:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 01:12:50 +0900 [ruby/rubygems] Prefer `require_relative` for internal requires https://github.com/rubygems/rubygems/commit/51796f257a commit 10c650628a0c0137fbe09e5631db8e0624dfbcc4 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-11 00:24:09 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 00:24:09 +0900 * 2021-10-11 [ci skip] commit 9072228a26d0b737c6b9ca2f7a3e7dd7d41bb4ea Author: David Rodriguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-09 19:12:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-11 00:23:54 +0900 [ruby/rubygems] Get specs green on arm64-darwin-20 https://github.com/rubygems/rubygems/commit/7a0bd9801d commit a4876a563d6c8011914504e186de8173f481e543 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-17 01:20:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 23:34:16 +0900 Pass the VM pointer as an argument Notes: Merged: https://github.com/ruby/ruby/pull/4948 commit 6c39a272af7dc3c1df95ae16a2b8904bd67ffcf6 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-07 02:00:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-10 23:12:57 +0900 [ruby/rubygems] We no longer need to check realpaths Since symlinks and absolute paths are already checked. https://github.com/rubygems/rubygems/commit/de19bc4c7e commit bbcf8f87ac50be423991ccbb2d83ac09ebecf46a Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-07 01:17:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-10 23:12:47 +0900 [ruby/rubygems] Check safety of packaged symlinks If we explicitly disallow the creation of symlinks that point to files outside of the destination directory, we can avoid any other safety checks while creating directories, because we can be sure they will always fall under the destination directory as well. https://github.com/rubygems/rubygems/commit/555692b8de commit a5289bfa71d85d7c3ab1ebf94237edecd847851b Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-05 20:14:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-10 23:12:38 +0900 [ruby/rubygems] Install location safety should consider casing https://github.com/rubygems/rubygems/commit/0a0ad34af3 commit 6c878731c1b0de974e071d532e7708e1a1ce9d71 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-01 23:16:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-10 23:12:28 +0900 [ruby/rubygems] Remove redundant `File.expand_path` `File.realpath` already expands paths. https://github.com/rubygems/rubygems/commit/25524ebbeb commit 05e3d7b9674c1008af85ad9f177d18ebf8d699b1 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-07 02:27:34 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-10 23:12:21 +0900 [ruby/rubygems] Explicit check file not created outside of destination https://github.com/rubygems/rubygems/commit/1e363dbbcb commit 48e4dea4cdeeb6e1ba79287399b0b0288df2d720 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-09-30 22:06:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-10 23:12:15 +0900 [ruby/rubygems] Refactor symlink attack specs https://github.com/rubygems/rubygems/commit/9180b390aa commit 59c24f054e6cc6fa08136435d7382739f73ec699 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-01 23:14:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-10 23:12:10 +0900 [ruby/rubygems] Simplify `File.expand_path` usage https://github.com/rubygems/rubygems/commit/02e3cf44bf commit 11720818f68181cee38590d8c69a9003393f2363 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-09-30 22:52:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-10 23:12:03 +0900 [ruby/rubygems] Don't make duplicated checks on directory safety This seems to speed up `gem install` on Windows by more than 50%. https://github.com/rubygems/rubygems/commit/1970b1296d commit ef352c58659eaecdcb1e5dc384de7dc1e1205a6c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-10 21:58:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 21:58:56 +0900 Shorten register names on arm64-darwin not to be truncated commit b16d876ac2d20b3c17a6906860d3a3f279aecf65 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-10 20:28:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 21:11:55 +0900 Needs time.rb for `Time#iso8601` `Gem::Request.verify_certificate_message` used this method without "time" which defines it. commit b56bb0cf9bbf402a5ece342a77991b8f623d6248 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-10 20:14:37 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-10-10 20:14:37 +0900 Update bundled_gems commit cec61d16d2fb50812a003338a719f186a6bd88ef Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-10 19:23:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 19:23:52 +0900 Run JIT tests first when random order instead of no-sort commit fb9ea391cf36f103a960ccb476271dcc912f2e69 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-10 18:30:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 18:30:33 +0900 Default the test order to random commit e2017f8c7cc2066286ab8047d4de47704f871a28 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-10 11:45:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 11:45:50 +0900 Unify iteration arguments commit 2293547d9b59e0641e26837500986e78f9ba891b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-10 11:41:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 11:41:26 +0900 Update iteration step in step_i_iter commit afb95d1004676f71beb0dab389b19695728726e5 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-10-10 11:40:04 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-10 11:40:04 +0900 Refactor sym_step_i function Notes: Merged: https://github.com/ruby/ruby/pull/4923 Merged-By: nobu <nobu@ruby-lang.org> commit f6048e592c520e20ba498ba4d553f07f02213a61 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-10 10:15:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 11:16:14 +0900 Run the failing readline test on arm32-linux separately commit 3817d1823c9a0f729a8a796afa46314b9385a1d8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-10 10:14:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 11:16:14 +0900 Remove `RUN_SEPARATED_TESTS` which seems unnecessary commit 72797acf6e16911a4a0345d23685070a0f993732 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-10 10:03:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 11:16:13 +0900 Set `TEST_ALL` options first to show in the summary page commit 9cd9eca3793ecf47f0e5971efaf99b514b72be94 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-26 21:50:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 09:31:25 +0900 Refactor rb_proc_call function Notes: Merged: https://github.com/ruby/ruby/pull/4897 commit d25af1f44e8920e15c5cab7808757e28fa9f6492 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-10-03 17:16:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 09:29:53 +0900 Add flo_ndigits function Notes: Merged: https://github.com/ruby/ruby/pull/4926 commit 6678bb66795a7d851698b4e78035d113b985d415 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-10 01:24:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-10 01:24:32 +0900 * 2021-10-10 [ci skip] commit 7f3786c3e86a685a1a6332a1e0c9290f9b9df414 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-10 01:20:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-10 01:20:40 +0900 Use an isolated class The number of all instances of `Class` may be affected by GC-able anonymous classes created by other tests. commit 5805b1472a0456b6f1536dfad0840f61e5cdf1b6 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-09 23:28:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-09 23:29:29 +0900 [ruby/irb] Version 1.3.8.pre.11 https://github.com/ruby/irb/commit/49b9f644c2 commit 98d9a7e435e0e310ef49920ab6088dfa7c72cc9a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-09 23:27:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-09 23:29:24 +0900 [ruby/irb] Update dependency, reline >= 0.2.8.pre.11 https://github.com/ruby/irb/commit/4f686afbca commit 56140bc7af61059de18ab9dc88567dd9ddc54104 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-09 23:25:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-09 23:27:40 +0900 [ruby/reline] Version 0.2.8.pre.11 https://github.com/ruby/reline/commit/de858ee1ac commit d0f2c4d053f90b95e20aa32aa09100e64cf576b7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-09 23:19:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-09 23:23:14 +0900 [ruby/reline] Fix tests to show dialog to the right edge https://github.com/ruby/reline/commit/6a0d0ada94 commit bf1f6a696fbd96379d3d5b85afbe5639ecea2f14 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-09 23:07:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-09 23:23:07 +0900 [ruby/reline] Add a test for full-width scrollbar https://github.com/ruby/reline/commit/cff83e68f8 commit 9cb7ba2f21aac6356089de949ef59ca42974b24b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-09 22:20:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-09 23:23:02 +0900 [ruby/reline] Add RELINE_ALT_SCROLLBAR env to use alternative text for scrollbar The setting to use '::' instead of block elements. https://github.com/ruby/reline/commit/4afbc98e2c commit e6ba2953e98f7feff90d767106b0a35560582ca0 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-09 22:19:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-09 23:22:57 +0900 [ruby/reline] Fix calculating dialog width with full-width scrollbar https://github.com/ruby/reline/commit/93bc9b5277 commit c423cc932ee16f64a845e710d92baf79729eae63 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-09 17:44:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-09 18:14:21 +0900 Refactor `Test::Unit::CoreAssertions#assert_nothing_raised` * Separate exception classes to be rescued or reraised * Use the filtered backtrace in the failure message * Raise a new `AssertionFailedError` with the original backtrace commit fc913ad21dcb04bd3d3786f9a3072a6717a52a9a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-09 16:17:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-09 16:17:37 +0900 Exclude also core_assertions.rb from backtraces commit 3932227d96ada8d63873d1b5a66c6f4b2df188aa Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-09 16:17:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-09 16:17:01 +0900 Unify `Test::Unit::Assertions#message` Merge `Test::Unit::CoreAssertions#message`. commit 489c22b17f347d15500931397a1a4c8b66b023dd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-09 14:22:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-09 14:28:27 +0900 Let `Test::Unit::CoreAssertions::AllFailures#for` yield the key Similar to `Test::Unit::CoreAssertions::AllFailures#foreach`. commit 7e506716d2c7085c6f243705a0b6eb79b2176c49 Author: OKURA Masafumi <masafumi.o1988@gmail.com> AuthorDate: 2021-09-20 23:18:14 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-09 09:07:47 +0900 Newly generated gems require Ruby 2.6.0 In 2021, Ruby 2.5 and older are EOL. We can set the default required Ruby version to 2.6.0 to encourage people to use newer Ruby. If the command is executed with old Ruby, it falls back to 2.3.0. It's still possible to create a gem for older Ruby just by changing two lines of code (one in gemspec and another is in rubocop.yml). commit 91f794b5160e9253410d06b0811451d7db448720 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-08 20:07:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-09 08:05:46 +0900 [rubygems/rubygems] I see no harm in this, allow it https://github.com/rubygems/rubygems/commit/01feb40283 commit 991a3aad058fc6b05c7d73fd240b2ad2d8325afd Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-08 20:06:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-09 08:05:34 +0900 [rubygems/rubygems] `git commit` no longer needs to be allowed to fail https://github.com/rubygems/rubygems/commit/12af03d32f commit a5bae843ff2b2fe9b46de8766c135489ccda8d9e Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-08 20:05:31 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-09 08:05:23 +0900 [rubygems/rubygems] Let `update_git` work with whatever branch is checkout out Unless the `:branch` option is passed. It's more efficient, and it results in less hardcoding of "master". https://github.com/rubygems/rubygems/commit/aa5c3409ab commit 5a34b639fc8f51f2464f36e59f32eff8b3fd2e0f Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-08 20:04:34 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-09 08:05:11 +0900 [rubygems/rubygems] Make adding files and committing into a single command For efficiency. https://github.com/rubygems/rubygems/commit/979d1634dd commit b857a8765338b76afd00691be29bdffdcc92991a Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-08 20:03:17 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-09 08:04:59 +0900 [rubygems/rubygems] Keep different code in custom branch in dummy repo This doesn't affect the outcome of the test, but it makes the `git commit` command inside `update_git` not fail because of not having anything to commit. https://github.com/rubygems/rubygems/commit/ad0160ed97 commit 70066196a087f82f6505456167bd1bdac8cc1e5a Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-10-08 20:01:47 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-09 08:04:48 +0900 [rubygems/rubygems] Fix typo We want to update the original repo, not a fresh one. This went undetected because the `git commit` command inside the `update_git` method ignores failures, and in this case it was failing because all files are untracked in the new repo. I will fix that later but for now fix the typo. https://github.com/rubygems/rubygems/commit/c889f1d715 commit d03d122ba1851156c93ea21a9006a7d921ad073e Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-10-03 01:30:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-09 08:04:08 +0900 [rubygems/rubygems] Improve performance of Specification#missing_extensions? https://github.com/rubygems/rubygems/commit/90c1919f94 commit ad92651d6428d59b7f4dbee7014f4d1127bbdbe8 Author: gabriele renzi <gabriele@toptal.com> AuthorDate: 2021-09-30 20:51:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-09 08:03:43 +0900 [rubygems/rubygems] Add glob information to Bundler::Source::Git#to_s The glob information was not specified in the string representation for a source, which led to non-deterministic behaviour when generating the lockfile, since sources are sorted by this value. https://github.com/rubygems/rubygems/commit/493b880abc commit 06c3e80611b81ec8f251957328486e9b6dd18d3b Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-08-14 00:16:24 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-09 08:01:54 +0900 Do not allow configuration where neither static or shared library is installed Fixes [Bug #18000] Notes: Merged: https://github.com/ruby/ruby/pull/4737 commit b4afedb0dd6395ea18135e87351b02e99a12d8a3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-09 06:54:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-09 06:54:40 +0900 * 2021-10-09 [ci skip] commit 08759edea8fb75d46c3e75217e6613465426a0d2 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-09 06:54:26 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-09 06:54:26 +0900 Remove autoload for constant if the autoload fails Previously, if an autoload failed (the file was loaded, but the constant was not defined by the autoloaded file). Ruby will try to autoload again if you delete the autoloaded file from $LOADED_FEATURES. With this change, the autoload and the constant itself are removed as soon as it fails. To handle cases where multiple threads are autoloading, when deleting an autoload, handle the case where another thread already deleted it. Fixes [Bug #15790] Notes: Merged: https://github.com/ruby/ruby/pull/4715 Merged-By: jeremyevans <code@jeremyevans.net> commit ded5a66cb994c5731a17bc9a2420042248a2f1fe Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-08 10:51:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 18:48:44 +0900 [ruby/reline] Use alternate text for scrollbar in non-UTF-8 env https://github.com/ruby/reline/commit/69e365edcc commit 076f2e9d3eb1cee7e64e6fc666698060d08f25c9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-08 15:44:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-08 15:44:47 +0900 Make `volatile` the variable will be taken out from `EC_EXEC_TAG` commit 78ff9b719c236b56956d446053256f8e30edf0c3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-08 14:08:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-08 14:08:03 +0900 Add tests for the edge cases of `String#end_with?` Also, check if a suffix is empty, to guarantee the assumption of `onigenc_get_left_adjust_char_head` that `*s` is always accessible, even in the case of `SHARABLE_MIDDLE_SUBSTRING`. commit d0268c5ec20784cf5ed42caf43b076846ae6255a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-07 20:11:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-08 11:01:51 +0900 Collect symbols instead of strings and get rid of rb_str_intern commit 55d7f63bdeda993696c2700bd1a2a3b02b0b6d30 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-07 04:56:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 10:38:47 +0900 [ruby/reline] Better fix for non-UTF-8 default external encoding Previous fix didn't show the cursor or dialogs. This allows the dialogs to continue to work. https://github.com/ruby/reline/commit/651c5f63cc commit eb4682b3c6dd703b073614fa10dec9f968e98df3 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-07 02:38:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 10:38:43 +0900 [ruby/reline] Only show dialogs if default external encoding is UTF-8 Fixes a crash in IRB if a dialog is displayed and the default external encoding is not UTF-8: /home/jeremy/tmp/reline/lib/reline/line_editor.rb:731:in `write': U+2588 from UTF-8 to US-ASCII (Encoding::UndefinedConversionError) https://github.com/ruby/reline/commit/f570525ecd commit 1251edd1db3fe89b5198422949af4595192113db Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-08 10:28:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 10:34:20 +0900 [ruby/irb] Add tests for truncated show doc dialog But pending them now because they need dummy document data to show doc. https://github.com/ruby/irb/commit/ac471ee14e commit 1507cb084cebdeb4d7f298e1ff677135b13d85ef Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-08 10:26:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 10:34:06 +0900 [ruby/irb] Determine left and right when the width of either side is zero correctly https://github.com/ruby/irb/commit/5df6e1f027 commit 576eccf76de65828e7c68960f59b855f32093ee0 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-08 10:24:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 10:33:56 +0900 [ruby/irb] Calculate right side doc dialog width correctly https://github.com/ruby/irb/commit/f34da7fa04 commit 374efa8e302c8cd19bf41e3f6f87582532cce79c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-08 10:21:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 10:33:47 +0900 [ruby/irb] Specify whether to show the doc dialog on the left or right side by using variable names https://github.com/ruby/irb/commit/a23a88b8c9 commit 5c02df829665ea2063c674fba93d3025817718cf Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-08 03:43:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 10:33:39 +0900 [ruby/irb] Display doc dialog in gaps on narrow screen https://github.com/ruby/irb/commit/4d7cefcaa4 commit 36bf378363519f70ee7955fd86b6281224ce051a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-06 03:25:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 10:33:27 +0900 [ruby/reline] Add a test for narrow screen without scrollbar https://github.com/ruby/reline/commit/44cd35e65d commit 374b15a84a777701f61c7cc105f7db5af27cc9ff Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-06 02:56:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 10:33:22 +0900 [ruby/reline] Cut off the excess on narrow screen https://github.com/ruby/reline/commit/972cc993ca commit a2f55679f0baed3ad99321032734f7e81e4137bc Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-06 00:09:03 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 10:33:17 +0900 [ruby/reline] Rename DIALOG_HEIGHT with DIALOG_DEFAULT_HEIGHT https://github.com/ruby/reline/commit/996bfec64b commit 217df51f0e5d9824ed712a4d175f555d932e44d8 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-10-07 05:55:02 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-10-08 07:39:47 +0900 Dump outer variables tables when dumping an iseq to binary This commit dumps the outer variables table when dumping an iseq to binary. This fixes a case where Ractors aren't able to tell what outer variables belong to a lambda after the lambda is loaded via ISeq.load_from_binary [Bug #18232] [ruby-core:105504] Notes: Merged: https://github.com/ruby/ruby/pull/4942 commit cb5a3b198e2a196c701d82842b3eb06ed0527110 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-08 00:15:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-08 00:15:42 +0900 * 2021-10-08 [ci skip] commit 8057129da61e7fc920b0cd1cb09105125819c10f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-08 00:10:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-08 00:11:22 +0900 Remove duplicate value checks on `mrhs` which always has the value commit 80e2242da6c4d7f1760cb08af72140e178642639 Author: Kaíque Kandy Koga <kaiquekandykoga@gmail.com> AuthorDate: 2021-10-06 02:44:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-07 23:55:54 +0900 [ruby/irb] Update descriptions of methods From Reidline to Reline Update description used in take_corresponding_syntax_to_kw_do and is_the_in_correspond_to_a_for methods Use possessive noun correctly Second element https://github.com/ruby/irb/commit/4fa9714d6f commit 896626fa02f00831de5db2e3e75aa349a5a84102 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-07 00:55:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-07 23:53:58 +0900 [ruby/irb] Make IRB::Context#exit call super if UncaughtThrowError Fixes calling exit after binding.irb. Fixes [Bug #18234] https://github.com/ruby/irb/commit/4ea8d376f2 commit 606e785fa8ec26c2819caca8b1f238e3ef5d8ff0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-07 17:59:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-07 19:57:09 +0900 Reuse ractor stderr commit a706c09fa64e4e1e2e6e08e74bafbdd39050bdc1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-07 17:56:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-07 19:57:09 +0900 Adjust styles [ci skip] commit ae5dffd66652752e3a7dfb3a6befa1df6cac7c74 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-10-07 18:34:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-07 18:34:29 +0900 Followed up bd6e1a0f0883dba7b02f30cefe5ebec96d02cb90 commit bd6e1a0f0883dba7b02f30cefe5ebec96d02cb90 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2020-07-14 01:36:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-07 18:22:43 +0900 [ruby/ipaddr] Support zone identifiers in IPv6 addresses These are supported by Ruby's socket library if the operating system supports zone indentifiers, so they should be supported by ipaddr. See RFCs 4007 and 6874 for additional information. Implements Ruby Feature #10911 https://github.com/ruby/ipaddr/commit/09a6408fb2 commit 74ed881e109ee2480854f5d47e8ef4a84b0cc1c5 Author: Bogdan Irimie <bogdan.irimie@puppet.com> AuthorDate: 2019-10-09 19:23:27 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-07 18:22:43 +0900 [ruby/ipaddr] Add netmask method that returns net mask as string. https://github.com/ruby/ipaddr/commit/283d16f3a3 commit abad5e10e80c06f2e756667cd2d7f7d9b6e78ba5 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2019-06-05 10:58:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-07 18:22:43 +0900 [ruby/ipaddr] Disallow leading zeros in mask https://github.com/ruby/ipaddr/commit/f49d2d49a4 commit 38da84296c0e50c4285d8a8c146af5fc3c8afc7d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2019-05-07 08:39:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-07 18:22:42 +0900 [ruby/ipaddr] Raise if extra slashes follow https://bugs.ruby-lang.org/issues/15832 https://github.com/ruby/ipaddr/commit/de9805d6fa commit 54ee22be5308ee958a73bd546bc867d2337d74d8 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2019-05-08 10:44:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-07 18:22:42 +0900 [ruby/ipaddr] Avoid reraising exceptions Instead of raising a new exception with a modified message, just use the correct message to begin with. This avoids the issue with both exceptions being displayed at error exit. https://github.com/ruby/ipaddr/commit/09edfd4a7f commit b23fba91ae60c71649cb5e5f8b63c87e6a63020f Author: Espartaco Palma <esparta@gmail.com> AuthorDate: 2018-10-28 09:13:31 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-10-07 17:46:00 +0900 [ruby/ipaddr] Removing superfluous assignments & return Also adding test for ntop https://github.com/ruby/ipaddr/commit/0ba16cca10 commit 323e7a6744a18a729d8011e237e64291cb6c02bd Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-10-06 20:18:35 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-10-07 15:18:46 +0900 Merge if statement Notes: Merged: https://github.com/ruby/ruby/pull/4939 commit 273673aeafd5e5a40a6212de17c788c2c029865e Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-10-07 10:40:40 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-10-07 10:40:40 +0900 test/ruby/test_process (test_no_curdir): tentatively skipped on Solaris The test gets stuck on Solaris CI. http://rubyci.s3.amazonaws.com/solaris11-gcc/ruby-master/log/20211006T050007Z.fail.html.gz#test-all ``` [14558/21042] TestProcess#test_no_curdirtimeout: output interval exceeds 1800.0 seconds. timeout: the process group 3857 is alive. ``` Related to ee89543e09a2d4e4c503267c248ba7bfffa668cb commit 7caeead36fc6589f07d91e9c45e69181d3b30640 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-07 09:06:17 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-07 09:06:17 +0900 Accommondate earlier reviews of RDoc for Enumerable (#4943) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit fb122042e004c799d4ed7080785c86a57db0ee9c Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-07 05:51:49 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-07 05:51:49 +0900 Enhanced RDoc for Enumerable (#4941) Treated: #sum #uniq #compact Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 121424a097a654084ef016bcc88cdb49c528d3ed Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-07 04:38:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-07 04:38:52 +0900 * 2021-10-07 [ci skip] commit 76228191474c76810043b294a74bbb2f1808b3d9 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-10-07 04:38:33 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-07 04:38:33 +0900 Fix Ractor.make_shareable changing locals for Procs env_copy() uses rb_ary_delete_at() with a loop counting up while iterating through the list of read only locals. rb_ary_delete_at() can shift elements in the array to an index lesser than the loop index, causing locals to be missed and set to Qfalse in the returned environment. Iterate through the locals in reverse instead, this way the shifting never happens for locals that are yet to be visited and we process all the locals in the array. [Bug #18023] Notes: Merged: https://github.com/ruby/ruby/pull/4940 Merged-By: XrXr commit d53493715cd1a1463b98291e0ad92e2723236698 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-06 15:42:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-06 15:42:37 +0900 Add the dependency of GNUmakefile itself [ci skip] commit 702a58e9e5b20a2450e753227112842bea8e7df6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-06 13:54:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-06 14:01:43 +0900 Remove duplicate type qualifiers `rb_encoding` is defined as `const OnigEncodingType`. Fix lots of C4114 warnings for each files by MSVC. commit 7ed1180e004f6c415915aaa0fa71a7e9e6bf3e98 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-06 12:19:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-06 12:19:52 +0900 Remove the useless platform guard commit ddca0c66867b09106a835f28600edefac7e785ce Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-06 11:38:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-06 11:41:03 +0900 Fix filesystem dependent tests Ruby cannot guarantee the resolutions of underlying filesystems. commit abd473928ec54e2ee990d178e42f2f544f21b041 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-06 08:57:06 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-06 08:57:06 +0900 Enhanced RDoc for Enumerable (#4938) Treats: #slice_after #slice_when #chunk_while Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit b9f34062f00d1d2548ca9b6af61a6447c2d0f8e3 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-10-06 02:41:44 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-10-06 02:41:44 +0900 Update to ruby/spec@ccf0d85 commit afcbb501ac17ba2ad5370ada5fd26e8dda9a5aaa Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-09-18 22:34:15 +0900 Commit: Jean Boussier <jean.boussier@gmail.com> CommitDate: 2021-10-06 01:34:56 +0900 marshal.c Marshal.load accepts a freeze: true option. Fixes [Feature #18148] When set, all the loaded objects are returned as frozen. If a proc is provided, it is called with the objects already frozen. commit 279b2b5b600f0bb16f7ebb08aa4a299cf7b023a8 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-06 00:52:51 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-06 00:52:51 +0900 Enhanced RDoc for Enumerable#slice_before (#4932) * Enhanced RDoc for Enumerable#slice_before * Enhanced RDoc for Enumerable#slice_before Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit f883f550f2c0a2a726e510acdaf7ee9aa7c76978 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-06 00:41:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-06 00:41:05 +0900 * 2021-10-06 [ci skip] commit 1bf3f3f4da9df58ac32de76036f9e66e5013a142 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-06 00:40:54 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-06 00:40:54 +0900 * remove trailing spaces. [ci skip] commit c6706f15af123bdbb3b39a21903d85c78462d047 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-06 00:39:27 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-06 00:39:27 +0900 Fix documentation for String#{<<,concat,prepend} These methods mutate and return the receiver, they don't create and return a new string. Fixes [Bug #18241] commit f2ca65266f203da8a8c3afa734bb6e76a088c581 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-05 22:19:22 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-05 23:22:42 +0900 debug.gem v1.2.4 This version fixes test failures on MacOS environment. Notes: Merged: https://github.com/ruby/ruby/pull/4937 commit dc8fa2691b4a3a908cb5f93429754457f063ea49 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-04 22:46:03 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-05 22:33:13 +0900 [ruby/reline] Reduce window size so that it can be displayed in my desktop https://github.com/ruby/reline/commit/22359d50ab commit f625645a37cd2c31f32078def8442598aff357f7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-04 22:40:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-05 22:33:07 +0900 [ruby/reline] The width of block elements is 1 on Windows https://github.com/ruby/reline/commit/5f4a75c7a0 commit 2c2a017fe82b3079ae7936856afaaa680eac0ce6 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-04 03:27:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-05 22:33:02 +0900 [ruby/reline] Cyrillic chars are now forced to be displayed in full-width on Windows So testing is no longer necessary. https://github.com/ruby/reline/commit/c59589548b commit 6966c3ff442d80e24afc56df450297ee3cd89416 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-04 00:15:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-05 22:32:56 +0900 [ruby/reline] Change struct size correctly https://github.com/ruby/reline/commit/df2a1b4e08 commit 7c98e673d7828f36682a013c90120b41ab842a1f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-05 18:18:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-05 18:24:34 +0900 Fix a typo since 688f2e1a893e04457a1a5aa3577b13f74b2bc080 commit cd182c5ee14c7a799a0ce422021d6ecb6a0b166e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-05 17:14:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-05 17:14:29 +0900 Adjust types to rb_enc_left_char_head I dislike unnatural casts. commit a15996c752cccbdcad2065b9b0a22271c3bbbb99 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-05 16:59:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-05 16:59:35 +0900 Split parser_yyerror0 from parser_yyerror The former uses the current location, while the latter takes a non-null location. commit 1f544d671580dab465df56f42e142db4667f782e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-05 16:44:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-05 16:44:43 +0900 Show the last line at unexpected end-of-input error commit 5a961c37682383d5d439a16b912be62cd2d0a7f0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-05 15:56:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-05 15:56:34 +0900 Remove a redundant cast between the exact same types commit 126122bb6c83cca5eac6c71e3e75e3f647397d94 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-05 13:42:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-05 15:00:02 +0900 Replace inaccurate error messages When Bison reports "memory exhausted", it means the parser stack depth reached the limit `YYMAXDEPTH` which is defaulted to 10_000, but not memory allocation failed. commit 0553494ad7ccbc75ac954c2cb0e7ea50443bad0c Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-05 12:20:18 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-05 14:58:54 +0900 debug.gem 1.2.3 This version uses tempdir instead of homedir to store UNIX domain socket. Notes: Merged: https://github.com/ruby/ruby/pull/4936 commit f032c09bca96d82ce5fe935c99afed4c3fc2dbea Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-10-05 11:39:05 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-05 14:18:23 +0900 rb_enc_left_char_head(): take void* Nobu doesn't like (char*) cast. Notes: Merged: https://github.com/ruby/ruby/pull/4909 commit 499660b04f22c0b7203dbd1de31a85443d4290b4 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-30 15:32:34 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-05 14:18:23 +0900 downcase_single/upcase_single: assume ASCII These functions assume ASCII compatibility. That has to be ensured in their caller. Notes: Merged: https://github.com/ruby/ruby/pull/4909 commit 5c167a9778366c8d348f00debc479777626ef252 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-29 15:23:45 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-05 14:18:23 +0900 ruby tool/update-deps --fix Notes: Merged: https://github.com/ruby/ruby/pull/4909 commit 5112a548467e04ebdb386f0cc7bacb29f38d3fd2 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-29 12:58:26 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-05 14:18:23 +0900 include/ruby/encoding.h: convert macros into inline functions Less macros == huge win. Notes: Merged: https://github.com/ruby/ruby/pull/4909 commit 312668cf031ce5e018f78d6a7cad9bcdcdac6ae6 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-24 10:34:32 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-05 14:18:23 +0900 split include/ruby/encoding.h 2,291 lines are too much! include/ruby/encoding.h became the biggest header file once it had doxygen comments. Let us split it into smaller parts, so that we can better organise their contents. Notes: Merged: https://github.com/ruby/ruby/pull/4909 commit 2fa4715bf264f1c800ae058bd6d5240241e226eb Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-28 16:51:09 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-05 14:18:23 +0900 rb_ractor_shareable_p(): fix doxygen My bad. The document is clearly broken. Maybe I pressed my delete key too much. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4909 commit e42c8c160d17e302f56fdc4af4d54043ed2499df Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-28 10:49:07 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-10-05 14:18:23 +0900 add undeclared variables Why did they even exist? Notes: Merged: https://github.com/ruby/ruby/pull/4909 commit ee89543e09a2d4e4c503267c248ba7bfffa668cb Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-05 06:13:47 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-05 13:30:01 +0900 Fix regression on Solaris after change to use realpath on loaded features After the change to use realpath on loaded features, Solaris CI started failing in test_no_curdir (which tests behavior for running ruby without a working directory). I was able to trace the problem to the following call chain: rb_call_inits->Init_Thread->Init_thread_sync->rb_provide-> get_loaded_features_index->rb_check_realpath->rb_dir_getwd_ospath-> ruby_getcwd This will throw an exception, but because Ruby hasn't been fully initialized at the point the exception is thrown, it just exits with a status of 1. The bug here is that rb_check_realpath should not raise an exception, it should return nil. This bug is hit on Solaris because Solaris uses the realpath emulation instead of native realpath, and the realpath emualation raised instead of returning nil if the mode was RB_REALPATH_CHECK. Use rb_rescue in the realpath emulation if the mode is RB_REALPATH_CHECK, and swallow any exceptions raised and return nil. Notes: Merged: https://github.com/ruby/ruby/pull/4935 commit 16ce578da1aee4f4a365a4010dc904bc2f3c4ff9 Author: Rei Odaira <rodaira@us.ibm.com> AuthorDate: 2021-10-05 13:06:43 +0900 Commit: Rei Odaira <rodaira@us.ibm.com> CommitDate: 2021-10-05 13:06:43 +0900 Enable inline assembly of SET_MACHINE_STACK_END on AIX commit e4d85d3a2d0c7d4a1abf981fb1ba557e21cad968 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-05 02:51:29 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-05 02:51:52 +0900 Revert rescue around internal realpath call on Solaris Solaris CI still has a problem even with these commits, so it doesn't appear to fix the issue. Reverting both 84e8e2a39bba874433b661bd378165bd03c9d6aa and bfd2f159f0c60ef8ac5bce6042edd25a571769b7. commit bc96a45f12503956e323e6c2a47aa550ca1da3dc Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-01 03:13:00 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-05 02:07:33 +0900 introduce debug.gem For the `test-bundled-gems`, make `debug.so` with extconf.rb and `make` command directly because `rake-compiler` assume ruby is installed (but `test-bundled-gems` can run without installation). Notes: Merged: https://github.com/ruby/ruby/pull/4804 commit ae1da7e1f76cabc6c2d9b45a6c56b1607200147a Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-10-01 02:56:59 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-05 02:07:33 +0900 remove lib/debug.rb Notes: Merged: https://github.com/ruby/ruby/pull/4804 commit cbb115213c42f15638ef119eb20c4d3106eb8b1a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-08-24 20:46:18 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-10-05 02:07:33 +0900 Enabled to build extensions with the bundled gems Notes: Merged: https://github.com/ruby/ruby/pull/4804 commit 3381fa5458d26fee1a5d109ba65e87212f644ac0 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-04 23:44:51 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-05 01:43:24 +0900 Only rescue realpath calls during require on Solaris Remove temporary skip of test_no_curdir to see if this fixes the problem. Notes: Merged: https://github.com/ruby/ruby/pull/4931 commit d9b7403746249b532ac57ca80112d7e63a417d86 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-04 23:35:39 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-05 01:43:24 +0900 Use a rescue around the internal realpath call for each loaded feature This appears to be only necessary on Solaris, but this commit enables it unconditionally to test breakage. The following commit will switch to only enabling it on Solaris. Notes: Merged: https://github.com/ruby/ruby/pull/4931 commit b44c5187b4d05d8644242e532f2243210d0b74df Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-07 12:22:40 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-10-05 01:43:09 +0900 Expose instruction information for debuggers [Feature #18026] Notes: Merged: https://github.com/ruby/ruby/pull/4633 commit aa2a1fb04719a819b21a2c4ae30cf50008901eeb Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-05 00:41:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-05 00:41:33 +0900 * 2021-10-05 [ci skip] commit 8dc546b6b6c77de3a3ea85171f63e88d21c8a3be Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-05 00:41:12 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-05 00:41:12 +0900 Enhanced RDoc for Enumerable#chunk (#4930) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit c4570acc86837fefa542a678dfdaba73cdd1fd03 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-18 16:05:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-04 20:46:47 +0900 Refactor ordering of tests * Split the sorting types into classes. * Apply the same sorting to method sorting under the parallel test. Notes: Merged: https://github.com/ruby/ruby/pull/4862 commit 44b2e32fb670e5e704f5721cf973cdc77d54a315 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-25 13:12:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-04 20:44:38 +0900 Fix a typo commit 3842e723da61ca80ed7f8ec7fd74dd71b812c3cd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-04 17:56:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-04 20:04:38 +0900 Leave builddir absolute So that rubygems installer will work to build extension gems. commit bac6e8ca5d8f6bc45984d12ddad55d3d876d4324 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-04 17:55:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-04 20:03:14 +0900 Stop building extension gems for now Extension gems will be installed by the installed standard libraries. commit e8dde4635928b3a3ac7d94530ae643fbac595d26 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-04 12:37:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-04 12:37:11 +0900 Relax time-out for bundler commit 28392d30451bbf13cdacf6b745eb4f5147741bdf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-04 12:15:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-04 12:16:31 +0900 The same warning for static symbol literal commit da139317a59acb2d79f460bf92331450efa310fe Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-04 12:14:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-04 12:16:31 +0900 Fix the warning message for dynamic symbol literal in condition commit e25ad5475c235b51395fe14edf212c85fe3e17fe Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-04 11:58:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-04 12:16:31 +0900 Shorten timeouts on macOS and MinGW From recent results, `check` and `test-all` will finish within 10 minutes on macOS or 30 minutes on MinGW, otherwise time out. commit 31332cf469b4e63b7469971e2ae546e59621bc37 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-04 09:36:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-04 09:37:13 +0900 [ruby/irb] Fix typo of variable https://github.com/ruby/irb/commit/692eb9b9b5 commit e54d1e99e96fd2bbf6154f7eb2928b1e2d63596e Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-10-04 08:21:40 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-04 08:21:40 +0900 Move rb_ractor_p definition Notes: Merged: https://github.com/ruby/ruby/pull/4422 Merged-By: nobu <nobu@ruby-lang.org> commit 3f5b52bfda3dff7d7ec0cc1909428c45d26b0d72 Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-05-02 14:11:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-04 08:15:52 +0900 Function `w32_error` does not return Notes: Merged: https://github.com/ruby/ruby/pull/4445 commit 0cf9197988a72f0defb670a8f03f8427d41c4bec Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-05-02 15:45:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-04 08:13:37 +0900 Clang never evaluates expr in `__builtin_assume` Notes: Merged: https://github.com/ruby/ruby/pull/4446 commit 761383166e62f19f895f42b85b2a04638b4f4e42 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-04 00:14:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-04 00:14:25 +0900 * 2021-10-04 [ci skip] commit 1e9714cf34234d7af93814a398ff858377c2c0f3 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-03 23:02:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-04 00:14:10 +0900 [ruby/reline] Use default background color to erase on Windows https://github.com/ruby/reline/commit/852e855d82 commit dc9112cf10e63b5272e9469d080d5d1ced30276e Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-10-03 22:34:45 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-03 22:34:45 +0900 Using NIL_P macro instead of `== Qnil` Notes: Merged: https://github.com/ruby/ruby/pull/4925 Merged-By: nobu <nobu@ruby-lang.org> commit fb03598666ddbb9f8b35eb4f599e75654ca7ca06 Author: Jörg W Mittag <github@joergwmittag.de> AuthorDate: 2021-10-03 22:16:08 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-03 22:16:08 +0900 Remove unnecessary checks in `Range#each` [Bug #18237] In commit:7817a438eb1803e7b3358f43bd1f38479badfbdc, the implementation of `Time#succ`, which had been deprecated for 10 years, was finally removed. During that time, there was an explicit `instance_of?` check in source:range.c#L350 with a comment that the check should be removed once `Time#succ` is removed. Since `Time#succ` is now gone, this check should be removed. Note: this should be coordinated with adding a version guard to the corresponding check in ruby/spec as well. Notes: Merged: https://github.com/ruby/ruby/pull/4928 Merged-By: nobu <nobu@ruby-lang.org> commit 19f9d9cf739e7fc185ef90d5da5b4b12cf902a52 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-03 20:03:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-03 22:06:31 +0900 Remove extraneous conversion to float [Bug #18236] Notes: Merged: https://github.com/ruby/ruby/pull/4927 commit 853ca5ccebc71f3eb2235e8847f3b20a949943a2 Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-09-25 18:16:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 21:51:54 +0900 [ruby/irb] Remove `require` in signal handler to avoid ThreadError `rdoc` has been required so it looks unnecessary https://github.com/ruby/irb/commit/5f749c613c commit 64e96d6b4100cd7ef53ed1a7d14c1298ccb0eb23 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-03 18:25:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 21:51:02 +0900 [ruby/reline] Re-calc the scroll pos when the content in dialog is shortened https://github.com/ruby/reline/commit/12ea63e6e0 commit 208b7b81990edea6e220a4e2e4e0995c4ec0aad1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-03 21:50:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 21:50:30 +0900 [ruby/irb] Version 1.3.8.pre.10 https://github.com/ruby/irb/commit/15bcbbb284 commit a5c58e88deedba2f4643963eb93f4baae15341bb Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-03 21:49:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 21:50:26 +0900 [ruby/irb] Update dependency, reline >= 0.2.8.pre.10 https://github.com/ruby/irb/commit/800e83eabd commit 7f02cc50ddac5200d81dfa636ff2a6c9fa9044b5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-03 21:47:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 21:48:12 +0900 [ruby/reline] Version 0.2.8.pre.10 https://github.com/ruby/reline/commit/1c6c0c82f0 commit 6cb37d41362c2233a745a2c69bb5930771b3eab5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-03 21:37:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 21:38:05 +0900 [ruby/reline] Initialize @trap_key to suppress warning https://github.com/ruby/reline/commit/b42c0980d9 commit bf4f3ef5ad9759df17e670c926c1a716e624b59c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-03 18:41:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 18:41:29 +0900 [ruby/reline] Add a comment to use "private alias_method" idiom after drop Ruby 2.5 https://github.com/ruby/reline/commit/1b00cae0fd commit ea64e742f5feddbdfb6526cd0a54a9986097a34d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-03 16:35:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-03 18:23:39 +0900 Revert "mkmf.rb: try linking at try_var" [Bug #18235] This reverts commit 524513be399e81bb170ec88aa0d501f33cbde8c3, which can return false positive by existing but unusable symbol, including functions. commit b91b3000bdb4e62fc059de709dbf9eb805c08d70 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-03 15:31:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 15:31:47 +0900 [ruby/reline] Add code block notation in doc https://github.com/ruby/reline/commit/b283791dc5 commit bc5407f00c3898f7cd6f0b010b396532b4b4c3af Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-03 15:22:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 15:25:50 +0900 [ruby/reline] Add doc for ed-unassigned and ed-insert macro https://github.com/ruby/reline/commit/7fe9ecf945 commit d31279fe6f54f0d9571c978912c3fb566c8abd45 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-01 14:16:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 14:53:19 +0900 [ruby/reline] Add a test for rerendering arg prompt after pasting https://github.com/ruby/reline/commit/5414a42b0e commit 95522ef8b97b27fb6ada357f835491a42f75400c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-30 21:15:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 14:53:13 +0900 [ruby/reline] Rerender whole buffer when argument editing finished If the argument prompt disappears when pasting is finished, rerender the whole buffer. https://github.com/ruby/reline/commit/996bbf8797 commit bf0a8a746228cbf06ce8ec3e2841d0b315409d6b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-10-01 14:25:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 14:27:33 +0900 [ruby/reline] Call LineEditor#resize on Windows https://github.com/ruby/reline/commit/65b27dd2ff commit ef350b3a5645a97270cbc72356eba671a1a41c20 Author: TOMITA Masahiro <tommy@tmtm.org> AuthorDate: 2021-09-26 15:39:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 14:26:53 +0900 [ruby/reline] Simplify SIGWINCH handler to avoid aborting when resizing. https://github.com/ruby/reline/commit/481add0537 commit 2a3d0fbe172d52be9a64e0bd366c5f74177bd881 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-30 20:55:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 14:09:03 +0900 [ruby/reline] Add newlines for readability https://github.com/ruby/reline/commit/2a60aacebb commit 4401bbe8a7d9677cd3347073cf3a36b371b3ad62 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-30 20:49:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 14:08:55 +0900 [ruby/reline] Use String#unpack1 https://github.com/ruby/reline/commit/179c52bca8 commit a2d2f00e4a5cf74d6f2ceb74f8074cea75886dd3 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-30 20:33:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 14:08:49 +0900 [ruby/reline] Adjust border of scrollbar rendering calculation https://github.com/ruby/reline/commit/737b23beae commit 1d2edda9f8427a36eaa12005267b10dcf4bb882e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-30 20:07:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 14:08:45 +0900 [ruby/reline] The @block_elem_width shouldn't be used for height calculation https://github.com/ruby/reline/commit/da35902d78 commit 7c6ef27d6c774d626eeffd9cbdf2618796d7f96b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-30 19:36:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 14:08:38 +0900 [ruby/reline] Stop using Ctrl+j to test on Windows Because Ctrl+j and Enter are the same on Windows. https://github.com/ruby/reline/commit/fa885ed449 commit ff480f29533432dc03a22072d76f42bf8b641e76 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-03 11:42:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-03 13:59:48 +0900 Cast to void pointer to suppress -Wformat-pedantic in RUBY_DEBUG_LOG commit ceeae31901275c9a3fde19aa05b343fbcf6187d1 Author: Rei Odaira <rodaira@us.ibm.com> AuthorDate: 2021-10-03 11:22:37 +0900 Commit: Rei Odaira <rodaira@us.ibm.com> CommitDate: 2021-10-03 11:23:34 +0900 Avoid using the altzone variable in AIX In AIX, altzone exists in the standard library but is not declared in time.h. By 524513be399e81bb170ec88aa0d501f33cbde8c3, have_var and try_var in mkmf recognizes a variable that exists in a library even when it is not declared. As a result, in AIX, HAVE_ALTZONE is defined, but compile fails due to the lack of the declaration. commit 2962c421e1433bffc85130385b1e9ced263a356e Author: mitsu-ksgr <mitsu-ksgr@users.noreply.github.com> AuthorDate: 2021-10-03 11:09:08 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-03 11:09:08 +0900 [DOC] fix small mistake in doc/marshal.rdoc [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4466 Merged-By: nobu <nobu@ruby-lang.org> commit c5ff9544107796fee2a6cccafdd1da5181e53b87 Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-05-09 10:32:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-03 11:06:24 +0900 Get rid of unused function warning for `_WIN32` Notes: Merged: https://github.com/ruby/ruby/pull/4482 commit 842673240bb949f698bdc2bfd814441d5c7791ac Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-03 08:05:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-03 08:05:00 +0900 * 2021-10-03 [ci skip] commit 4f65e6ce2a6950a0cbe077ca5d7869e28c132c3f Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-03 07:55:13 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-03 07:55:13 +0900 Temporarily skip test_no_curdir test to avoid CI failures on Solaris commit 79a4484a072e9769b603e7b4fbdb15b1d7eccb15 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-01 05:50:19 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-02 23:51:29 +0900 Do not load file with same realpath twice when requiring This fixes issues with paths being loaded twice in certain cases when symlinks are used. It took me multiple attempts to get this working. My original attempt tried to convert paths to realpaths before adding them to $LOADED_FEATURES. Unfortunately, this doesn't work well with the loaded feature index, which is based off load paths and not realpaths. While I was able to get require working, I'm fairly sure the loaded feature index was not being used as expected, which would have significant performance implications. Additionally, I was never able to get that approach working with autoload when autoloading a non-realpath file. It also broke some specs. This takes a more conservative approach. Directly before loading the file, if the file with the same realpath has been required, the loading of the file is skipped. The realpaths are stored as fstrings in a hidden hash. When rebuilding the loaded feature index, the hash of realpaths is also rebuilt. I'm guessing this makes rebuilding process slower, but I don think that is a hot path. In general, modifying loaded features is only done when reloading, and that tends to be in non-production environments. Change test_require_with_loaded_features_pop test to use 30 threads and 300 iterations, instead of 4 threads and 1000 iterations. I saw only sporadic failures with 4/1000, but consistent failures 30/300 threads. These failures were due to the fact that the concurrent deletions from $LOADED_FEATURES in other threads can result in rb_ary_entry returning nil when rebuilding the loaded features index. To avoid concurrency issues when rebuilding the loaded features index, the building of the index itself is left alone, and afterwards, a separate loop is done on a copy of the loaded feature snapshot in order to rebuild the realpaths hash. Fixes [Bug #17885] Notes: Merged: https://github.com/ruby/ruby/pull/4887 commit 3f7da458a77f270d96e6a9f82177d6c90476c34d Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-09-24 04:31:32 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-02 23:51:29 +0900 Make encoding loading not issue warning Instead of relying on setting an unsetting ruby_verbose, which is not thread-safe, restructure require_internal and load_lock to accept a warn argument for whether to warn, and add rb_require_internal_silent to require without warnings. Use rb_require_internal_silent when loading encoding. Note this does not modify ruby_debug and errinfo handling, those remain thread-unsafe. Also silent requires when loading transcoders. Notes: Merged: https://github.com/ruby/ruby/pull/4887 commit e0ef4899f3ef2561ae32275c2c3d11914e7343c7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-24 17:06:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-02 21:22:33 +0900 [Win32] Prefer Cryptography Next Generation API [BCryptGenRandom] is available since Windows Vista / Windows Server 2008. Regarding [CryptGenRandom]: > This API is deprecated. New and existing software should start > using Cryptography Next Generation APIs. Microsoft may remove > this API in future releases. [BCryptGenRandom]: https://docs.microsoft.com/en-us/windows/win32/api/bcrypt/nf-bcrypt-bcryptgenrandom [CryptGenRandom]: https://docs.microsoft.com/en-us/windows/win32/api/wincrypt/nf-wincrypt-cryptgenrandom Notes: Merged: https://github.com/ruby/ruby/pull/4924 commit b8327fb8b10615ddb3f5e1978d6d83be465503a9 Author: manga_osyo <manga.osyo@gmail.com> AuthorDate: 2021-10-02 08:44:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-02 19:58:41 +0900 [ruby/reline] Refactoring Reline::Key.match? and add test. https://github.com/ruby/reline/commit/90e8999ae4 commit abc0304cb28cb9dcc3476993bc487884c139fd11 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-08-12 05:50:59 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-02 13:50:19 +0900 Avoid race condition in Regexp#match In certain conditions, Regexp#match could return a MatchData with missing captures. This seems to require at the least, multiple threads calling a method that calls the same block/proc/lambda which calls Regexp#match. The race condition happens because the MatchData is passed from indirectly via the backref, and other threads can modify the backref. Fix the issue by: 1. Not reusing the existing MatchData from the backref, and always allocating a new MatchData. 2. Passing the MatchData directly to the caller using a VALUE*, instead of indirectly through the backref. It's likely that variants of this issue exist for other Regexp methods. Anywhere that MatchData is passed implicitly through the backref is probably vulnerable to this issue. Fixes [Bug #17507] Notes: Merged: https://github.com/ruby/ruby/pull/4734 commit d08721465850a6e6954b43bbfebe2ed5a7256dec Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-23 01:36:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-02 11:43:35 +0900 Restore Hash#compare_by_identity mode [Bug #18171] Notes: Merged: https://github.com/ruby/ruby/pull/4893 commit 806e7947fec775ce27aa783ee00dbd8f52685db8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-02 08:40:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-02 11:43:35 +0900 Add rb_ident_hash_new_with_size Notes: Merged: https://github.com/ruby/ruby/pull/4893 commit 601c67e42ccdd0cab10c8e1097401876f24308b0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-01 22:03:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-02 08:02:57 +0900 Suppress maybe-uninitialized warning on mingw The compilation time pragma seems not applied to inline functions expanded by the link time optimization. The local variable `mi` in thread_win32.c:native_thread_init_stack is warned. commit 8c10fd2583a949b131a69e639444cd264936164d Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-02 07:51:39 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-02 07:51:39 +0900 Enhanced RDoc for Enumerable (#4922) Treated: #drop #drop_while #cycle Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 27d9935d516a77a7b8c245398befd8b2dd059dcd Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-02 03:44:28 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-02 03:44:28 +0900 Enhanced RDoc for Enumerable (#4918) Treats: #zip #take #take_while Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit eaeb0a008ba13ba0e531f3ccf589c44351cddbfe Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-02 02:13:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-02 02:13:05 +0900 * 2021-10-02 [ci skip] commit e8d6076fbd0dd537cce38eaf9417cafb03b4fd92 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-01 04:36:00 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-02 02:12:46 +0900 Fix typo in static function name Notes: Merged: https://github.com/ruby/ruby/pull/4919 commit 9b04909a85b07004ce4aa133c567fd78aa43f2ee Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-01 04:35:27 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-10-02 02:12:46 +0900 Introduce rb_vm_call_with_refinements to DRY up a few calls Notes: Merged: https://github.com/ruby/ruby/pull/4919 commit 0ad3ed5e0e6e6239fbc348f730b3f298ef4e944c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-01 20:25:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-01 20:30:10 +0900 Checks for CPU specific header on universal build Notes: Merged: https://github.com/ruby/ruby/pull/4921 commit c7414f517fb4a0b829e3385ef7e6a6a041e23e38 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-01 11:32:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-01 20:30:10 +0900 Prefer `printf` like the recent autoconf Notes: Merged: https://github.com/ruby/ruby/pull/4921 commit 3e46117d3fb12d1428c97daf9e8d6bce36b90240 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-29 20:01:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-01 20:28:44 +0900 Associate the encoding to the found path Notes: Merged: https://github.com/ruby/ruby/pull/4915 commit 842b0008c132dd587f09766a228041afb7fed24f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-29 19:59:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-01 20:28:44 +0900 Skip broken strings as the locale encoding Notes: Merged: https://github.com/ruby/ruby/pull/4915 commit 409dbc951b9875d27bd73748c88e15386473cffb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-28 23:25:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-01 20:28:44 +0900 Replace expanded load path only when modified Notes: Merged: https://github.com/ruby/ruby/pull/4915 commit b6534691a16d751d59fc572d5dddebcaeb21f007 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-28 23:24:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-01 20:28:44 +0900 Copy path strings as interned strings Notes: Merged: https://github.com/ruby/ruby/pull/4915 commit 60d0421ca861944459f52292d65dbf0ece26e38a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-28 01:32:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-01 20:28:44 +0900 Fix the encoding of loaded feature names [Bug #18191] The feature names loaded from the default load paths should also be in the file system encoding. Notes: Merged: https://github.com/ruby/ruby/pull/4915 commit 8e9d696ed01d782ad49f2e7b351802ec244ee1bf Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-01 10:34:50 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-10-01 11:14:02 +0900 Use macos-11 instead of macos-latest Notes: Merged: https://github.com/ruby/ruby/pull/4920 commit 77804be4577f53f3f151bc6cf7ec754c928207f5 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-10-01 10:14:43 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-10-01 11:14:02 +0900 Use macos-10.15 and macos-11 instead of macos-latest https://github.blog/changelog/2021-09-29-github-actions-jobs-running-on-macos-latest-are-now-running-on-macos-big-sur-11/ Notes: Merged: https://github.com/ruby/ruby/pull/4920 commit ca3cc677b31897e7306ac3b4565a0dd928168b08 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-10-01 10:41:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-10-01 10:56:11 +0900 Define ACTION-IF-UNIVERSAL of `AC_C_BIGENDIAN` [Bug #18156] As we do not use config.h.in, just define the helper macro instead. commit 1f5f8a187adb746b01cc95c3f29a0a355f513374 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-10-01 07:18:14 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-01 07:18:14 +0900 Make Array#min/max optimization respect refined methods Pass in ec to vm_opt_newarray_{max,min}. Avoids having to call GET_EC inside the functions, for better performance. While here, add a test for Array#min/max being redefined to test_optimization.rb. Fixes [Bug #18180] Notes: Merged: https://github.com/ruby/ruby/pull/4911 Merged-By: jeremyevans <code@jeremyevans.net> commit a55a5fc68426ed701dace6bc166d18de06d8dcb2 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-10-01 05:46:54 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-10-01 05:46:54 +0900 Enhanced RDoc for Enumerable (#4917) Treats: #each_with_index #reverse_each #each_entry #each_slice #each_cons #each_with_object Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 40ef034599fa576cd28903f5b831bcd87424c304 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-10-01 05:07:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-10-01 05:07:10 +0900 * 2021-10-01 [ci skip] commit bb488a1a7f844bb4f2b9fd561b29a0560a7bf06a Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-29 11:13:24 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-10-01 05:06:53 +0900 Use faster any_hash logic in rb_hash From the documentation of rb_obj_hash: > Certain core classes such as Integer use built-in hash calculations and > do not call the #hash method when used as a hash key. So if you override, say, Integer#hash it won't be used from rb_hash_aref and similar. This avoids method lookups in many common cases. This commit uses the same optimization in rb_hash, a method used internally and in the C API to get the hash value of an object. Usually this is used to build the hash of an object based on its elements. Previously it would always do a method lookup for 'hash'. This is primarily intended to speed up hashing of Arrays and Hashes, which call rb_hash for each element. compare-ruby: ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-linux] built-ruby: ruby 3.1.0dev (2021-09-29T02:13:24Z fast_hash d670bf88b2) [x86_64-linux] # Iteration per second (i/s) | |compare-ruby|built-ruby| |:----------------|-----------:|---------:| |hash_aref_array | 1.008| 1.769| | | -| 1.76x| Notes: Merged: https://github.com/ruby/ruby/pull/4916 commit 529fc204af84f825f98f83c34b004acbaa802615 Author: Jean byroot Boussier <jean.boussier+github@shopify.com> AuthorDate: 2021-09-30 23:50:31 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-30 23:50:31 +0900 marshal.c: don't call the proc with partially initialized objects. (#4866) For cyclic objects, it requires to keep a st_table of the partially initialized objects. Notes: Merged-By: byroot <jean.boussier@gmail.com> commit 912a8dcfc5369d840dcd6bf0f88ee0bac7d902d6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-30 18:24:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-30 19:22:08 +0900 Needs `AC_PROG_CC` [Bug #18156] Although `AC_PROG_CC_C99` has been obsolete, `AC_PROG_CC` is not and the latter is necessary not to make C++ compiler mandatory. Notes: Merged: https://github.com/ruby/ruby/pull/4914 commit 90f2ab9d62860d7b3413fb363403c1d16b4a860e Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-30 13:26:56 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-30 16:55:23 +0900 rb_fiber_raise(): add doxygen Must not be a bad idea to improve documents. Notes: Merged: https://github.com/ruby/ruby/pull/4912 commit 565649cfe86ce7ec7e1f558c6b91787c343ee570 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-30 08:04:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-30 08:04:49 +0900 * 2021-09-30 [ci skip] commit 49edaa061fc2a910a167fd02c01b4be8845d25cc Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-30 08:04:29 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-30 08:04:29 +0900 Enhanced RDoc for Enumerable (#4910) Treats: #min #max #minmax #min_by #max_by #minmax_by #include? Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit bbf98b572e1dde9b882ded516db7a01b4867005e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-29 22:31:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-29 22:31:24 +0900 lldb: Get rid of error at unpreserved encodings [ci skip] commit 5eb8b6d1bd1b711a47541de41a2747af82cb0aea Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-28 19:21:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-29 22:07:49 +0900 [ruby/reline] Support ed_argument_digit by M+num The vi mode can handle "argument number" before an operator or a motion, such as, "3x" (equals "xxx"), and "3l" (equals "lll"). In the emacs mode, GNU Readline can handle argument number with meta key, like "Meta+3 x" (equals "xxx"). https://github.com/ruby/reline/commit/9183cc2e8b commit 0182bf615a6ef3fb0401a31b4f6840221af00db7 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-29 08:20:58 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-29 08:20:58 +0900 Enhanced RDoc for Enumerable (#4908) Treated: #none? #one? #min Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit d3bd73823b6431f9037d1b72142971d3204ba565 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-28 22:46:47 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-29 05:16:53 +0900 Refactor rb_add_event_hook function Notes: Merged: https://github.com/ruby/ruby/pull/4907 commit fd76117a5de3b561475a4a8261c6a4d37a8bea1f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-29 01:38:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-29 01:38:55 +0900 * 2021-09-29 [ci skip] commit 1e10099e0919eda9464ef454b4920213eca658f3 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-29 01:38:35 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-29 01:38:35 +0900 Enhanced RDoc for Enumerable (#4906) Treats: #partition #group_by #tally #first #sort #sort_by #all? #any? Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 545e01645f7350c255f79b90f184a1317d3d55fb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-28 19:55:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-28 20:03:54 +0900 lldb: Show encoding of String [ci skip] commit 8bdaaeb99a7e737f9cde38889b94b2bd83d9d2dc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-28 19:58:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-28 20:01:35 +0900 [ruby/ostruct] Strip trailing spaces https://github.com/ruby/ostruct/commit/df1109c18f commit 2f19f4d1d8f944a012c691533aeb82151359dfcc Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-28 19:15:12 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 19:15:12 +0900 Followed up behavior change of set https://github.com/ruby/ruby/commit/f360ebb30606a4143029996073d29d007069428d commit 395da04aa6d2c8043b82b257a76aecba48dac755 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-28 19:14:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 19:14:02 +0900 Followed up ruby/spec examples for date. https://github.com/ruby/ruby/commit/f9f7f3a75ec5af4a70e3332f8f5aa300c13432e2 commit be51f4ce839c8a008178a1d757e7541922a00f7a Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-08-17 10:52:10 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 17:48:57 +0900 [ruby/did_you_mean] Disable error_highlight when testing did_you_mean Fixes https://github.com/ruby/did_you_mean/pull/160 https://github.com/ruby/did_you_mean/commit/93df310873 commit fcaa918445c85c7b21d83f8eda2d237eace4b315 Author: Ellen Marie Dash <me@duckie.co> AuthorDate: 2021-09-25 06:54:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 17:43:42 +0900 [rubygems/rubygems] Only disallow FIXME/TODO for first word of gemspec description 7890c98 matched the start of each line, whereas this matches the start of the entire string. https://github.com/rubygems/rubygems/commit/432de7b819 commit 6874d4f11622ab5c0ba68e5b45d1a35354eb6524 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-09-23 18:54:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 17:43:05 +0900 [rubygems/rubygems] Add missing `rubygem_push` prerequisite Just like all the other tasks using the `built_gem_path`, the `:build` task is a prerequisite for this task too. https://github.com/rubygems/rubygems/commit/d193f9a7f9 commit f360ebb30606a4143029996073d29d007069428d Author: Kazuki Tsujimoto <kazuki@callcc.net> AuthorDate: 2021-05-23 20:10:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 17:37:41 +0900 [ruby/set] Make Set#pretty_print IRB::ColorPrinter friendly https://github.com/ruby/set/commit/f467028cdb commit a6459081bca72ddb98e0fa971c7b0e225c9343e9 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-09-10 19:25:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 17:36:41 +0900 [ruby/un] Bump version to 0.2.0 https://github.com/ruby/un/commit/104bc10c57 commit f9f7f3a75ec5af4a70e3332f8f5aa300c13432e2 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-28 02:23:47 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 17:34:26 +0900 [ruby/date] Make %v strftime flag use uppercase month %v is supposed to be the VMS date, and VMS date format uses an uppercase month. Ruby 1.8 used an uppercase month for %v, but the behavior was changed without explanation in r31672. Time#strftime still uses an uppercase month for %v, so this change makes Date#strftime consistent with Time#strftime. Fixes [Bug #13810] https://github.com/ruby/date/commit/56c489fd7e commit af68070068e86872014af9e69bae628c78ac26d6 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-14 13:45:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 17:31:23 +0900 [ruby/drb] 6d890ec5979ec72586dd5f66dd8d33f7a9aefd1e was introduced to support only Ruby 2.7+ https://github.com/ruby/drb/commit/bec410d184 commit f6c32287942ca554a8f422ab19a1336ad9ac1b57 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 13:43:05 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 17:31:08 +0900 [ruby/drb] Use omit instead of skip for test-unit https://github.com/ruby/drb/commit/0da149e7a9 commit 3be987653aef5a4e507fe23ac40a7025cdd903d3 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-06-16 20:22:50 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 17:30:58 +0900 [ruby/drb] gemspec: Remove "executables" configuration This gem exposes 0 executables. https://github.com/ruby/drb/commit/ed4d0363e5 commit cefa02957312620187cfd81219650304032ae787 Author: rm155 <86454369+rm155@users.noreply.github.com> AuthorDate: 2021-08-20 21:12:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 17:30:06 +0900 [ruby/ostruct] Allow properties to be accessed even when the object is moved to another Ractor (https://github.com/ruby/ostruct/pull/29) https://github.com/ruby/ostruct/commit/d85639f2f5 commit 83662f1d9968204a43adf4a94d6872967b65f712 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-28 16:13:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-28 16:13:45 +0900 Removed needless rake and bundler files for rdoc commit 6bca410ae8b16238d02c868ce8fa1af13a5c4460 Author: U.Nakamura <usa@ruby-lang.org> AuthorDate: 2021-09-28 15:50:38 +0900 Commit: U.Nakamura <usa@ruby-lang.org> CommitDate: 2021-09-28 15:50:38 +0900 Move platform maintainers list commit c4acde8959c898f4ed50bd8b76f4a026397cbc8b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-27 04:39:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-28 14:15:49 +0900 [ruby/reline] Ignore NUL by ed_quoted_insert https://github.com/ruby/reline/commit/43b7c01a98 commit 1e9a688cd55d825d8c77c74c62d4b642ef492659 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-28 13:00:16 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-28 14:08:08 +0900 Move some function declaration to internal/io.h Notes: Merged: https://github.com/ruby/ruby/pull/4901 commit 2cf101436202c72278926a9d2593f9c26b8e83ce Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-28 08:17:47 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-28 08:17:47 +0900 Enhanced RDoc for Struct (#4895) Revises introductory material. Adds section "What's Here". Adds previously missing documentation for method #deconstruct_keys. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 1147136b8a2fd40b2c2a60c00aa47ad514dd934e Author: John Bachir <j@jjb.cc> AuthorDate: 2021-09-25 07:15:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-28 06:05:50 +0900 [ruby/timeout] test that yield is given number of seconds https://github.com/ruby/timeout/commit/ec5a614334 commit a60bf6f9bfbfe4248cbe6792d70fe029357b3d86 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-28 00:53:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-28 00:53:19 +0900 * 2021-09-28 [ci skip] commit 5ec730cda5c0ad38146a0cc693bc6c41512f7ee7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-27 16:18:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-28 00:52:18 +0900 Set the locale encoding to UTF-8 Cirrus CI sets the environment variable `CIRRUS_COMMIT_MESSAGE` from the pull request description. Notes: Merged: https://github.com/ruby/ruby/pull/4900 commit a28fff5f73b10d7b6ec463c8c6a563b43eb52321 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-28 00:40:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-28 00:52:18 +0900 Revert "Unexport `CIRRUS_COMMIT_MESSAGE`" This reverts commit 09863a4cd8eb40b34b310083d8cdda899ab5bcc1. Notes: Merged: https://github.com/ruby/ruby/pull/4900 commit 09863a4cd8eb40b34b310083d8cdda899ab5bcc1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-27 21:01:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-27 21:11:56 +0900 Unexport `CIRRUS_COMMIT_MESSAGE` Cirrus CI sets this environment variable from the pull request description. However it does not seem any locales other than C are installed, the default external encoding is US-ASCII. That means this environment variable will be an invalid byte sequence, and some tests fail. commit dfa67db62bbffd9f6900b46aa04309ea77acf673 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-27 16:01:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-27 20:47:44 +0900 Show failed environment variables commit 0a38212e57fc3c07e5607c5bd79d21c51e5b48d2 Author: rm155 <rohitmenon@verizon.net> AuthorDate: 2021-07-17 07:23:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-27 19:36:20 +0900 [ruby/timeout] Freeze VERSION https://github.com/ruby/timeout/commit/ac7b010c41 commit efa0c31ce518bb26aca80392cce7fc5471ca9fef Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-27 19:02:45 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-27 19:02:45 +0900 Add printf-style format attribute to oniguruma functions Also make the format string compatible with literal strings which are const arrays of "plain" chars. Notes: Merged: https://github.com/ruby/ruby/pull/4899 Merged-By: nobu <nobu@ruby-lang.org> commit f8000e293141a9af9f51effc76007aab21b0dede Author: Joao Fernandes <joao@hopin.to> AuthorDate: 2021-09-25 00:13:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-27 15:23:25 +0900 [ruby/base64] Avoid unnecessary string duplication String#ljust returns a new string, so whenever we need to add padding, we can replace "-/" in place with String#tr! and avoid creating yet another copy of the string. https://github.com/ruby/base64/commit/6401ef5824 commit 1b004ba0db2b8e4e0a6b3362dd7681e0c642cab0 Author: Joao Fernandes <joao@hopin.to> AuthorDate: 2021-09-03 00:57:26 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-27 15:23:12 +0900 [ruby/base64] Simplify Thanks @nobu! https://github.com/ruby/base64/commit/39e22efa2b commit 05a28ce5b11d0e0ca48bae799ef65e9657dc4f6a Author: Joao Fernandes <joao@hopin.to> AuthorDate: 2021-09-02 23:53:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-27 15:23:04 +0900 [ruby/base64] Improve Base64.urlsafe_encode64 performance Improves the method's performance when asked to remove padding. str.delete!("=") iterates over the entire string looking for the equals character, but we know that we will, at most, find two at the end of the string. https://github.com/ruby/base64/commit/544e0c2cf7 commit f7ffe9dbdeb2bebb4c9155fc391f0bab198bfb51 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-27 14:47:52 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-27 14:47:52 +0900 Introduce `RBIMPL_NONNULL_ARG` macro Runtime assertion for the argument declared as non-null. This macro does nothing if `RBIMPL_ATTR_NONNULL` is effective, otherwise asserts that the argument is non-null. Notes: Merged: https://github.com/ruby/ruby/pull/4898 Merged-By: nobu <nobu@ruby-lang.org> commit 582602d142c7ea2b21cd7539c09976b078d7bbe9 Author: John Bachir <j@jjb.cc> AuthorDate: 2021-09-25 06:19:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-27 13:22:46 +0900 [ruby/timeout] test for basic functionality https://github.com/ruby/timeout/commit/1c6bb90aea commit 00cfafc0f5424e31dbf0a13b5bd6345572260f13 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-27 03:21:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-27 03:23:48 +0900 [ruby/irb] Add doc about "echo on assignment" https://github.com/ruby/irb/commit/5af637b3c1 commit 51773bed10eb9d8f4d38e1a1e9d9d04d4954380d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-27 03:14:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-27 03:23:41 +0900 [ruby/irb] Add blank lines to sample code in doc for readability https://github.com/ruby/irb/commit/123b7e53ee commit 2ae64bf6b92bc64005830fc8778a56a3a8f44865 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-27 03:13:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-27 03:23:37 +0900 [ruby/irb] Fix sample code in doc https://github.com/ruby/irb/commit/642adbe968 commit 5c0636bda4a2abf71dbb8a4e398f002d5c2079c2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-27 03:03:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-27 03:23:31 +0900 [ruby/irb] Add a space before left paren https://github.com/ruby/irb/commit/973bac83ff commit 7ba16939bbf626630547dbe51a629a63b373dbc0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-27 01:16:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-27 01:16:29 +0900 * 2021-09-27 [ci skip] commit a230ff0f83005c18e8da95d53027e3b726152875 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-27 01:14:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-27 01:16:15 +0900 [ruby/reline] ^K is kill-line and ^U is unix-line-discard for inputrc https://github.com/ruby/reline/commit/5936071940 commit 3f7b08d2cbdaa2d8c917e53cfa57210d0d99b0bf Author: Jake Zimmerman <zimmerman.jake@gmail.com> AuthorDate: 2021-09-10 07:35:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-26 23:47:11 +0900 [ruby/reline] Implement vi_kill_line_prev This operation is mentioned and bound to `^U` in both `vi_command.rb` and `vi_insert.rb`, but there is no definition of it. Both Vi and Emacs use the same keystroke to do the same behavior, so I've chosen to use `alias_method` to make the implementation small, rather than duplicating the method and re-implementing it. https://github.com/ruby/reline/commit/fdbfc8669f commit 389de6f052ff8b835594d3109b2f214d995838c2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-26 09:56:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-26 09:56:39 +0900 * 2021-09-26 [ci skip] commit 18f0b7c2f7b601d0bb84d6526486e67966d84c45 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-26 09:48:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-26 09:48:53 +0900 Fix dependency of verconf.h template/verconf.h.tmpl reads rbconfig.rb. commit 806a27f98b5d414f8e7daa853072113ec41451fb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-25 15:41:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-25 15:44:14 +0900 Dot-prefix appveyor.yml commit 69ce154d6e5bc99a93e82e013862c321f74af8ec Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-24 19:23:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-25 15:38:38 +0900 FL_USER flags on ohter than T_DATA are reserved [Misc #18059] commit 9151ed2fb2fa8c0648666cdfdb56e38ec3b15815 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-09-24 05:17:56 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-25 15:19:20 +0900 Return fstrings from `build_const_pathname`. It's possible for `build_const_pathname` to be called when `rb_cString` is still NULL. There is a fix-up step when `rb_cString` is initialized, but it only applies to `fstring` instances. Notes: Merged: https://github.com/ruby/ruby/pull/4892 commit 13b17cb8fcdc1d37ac9708b344ac69be61c51681 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-21 22:59:35 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-25 14:03:36 +0900 Refactor rb_call_super function Notes: Merged: https://github.com/ruby/ruby/pull/4877 commit 39a6bf55134c7c2360877f9298aebd7f5e6b7d6d Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-25 08:41:02 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-25 08:41:02 +0900 Enhanced RDoc for Struct (#4891) Treats: #values_at #select #== #hash #eql? #size #dig Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit bbdfce96a29e30680b8038d1902ef6b9116d0f08 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-25 00:35:19 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-25 00:35:19 +0900 Enhanced RDoc for Struct (#4890) Treated: #each #each_pair #inspect #to_a #to_h #[] #[]= Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 7adfb14f603bb4dc67b37cd961fa489fff0f2758 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-25 00:12:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-25 00:12:00 +0900 * 2021-09-25 [ci skip] commit f726c79d7489c09615b37f74eb747cf64876a643 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-20 23:44:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-25 00:11:44 +0900 [ruby/reline] Add aliases {prev,next}_history to ed_{prev,next}_history https://github.com/ruby/reline/commit/d740e18cff commit ff26c60bc137b6be96c7f49241b831b037a157b3 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-23 18:02:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-24 23:50:32 +0900 [ruby/irb] Revert "Show original string byte sequence to debug" This reverts commit b42fe5937ab2a605a198ffb866db5ccda541568d. https://github.com/ruby/irb/commit/b22094a16f commit 93291005a0bcb11d8dca4abdc645d50e1c98aefd Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-23 16:20:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-24 23:50:26 +0900 [ruby/irb] Show original string byte sequence to debug https://github.com/ruby/irb/commit/7a97bb0e56 commit 40a65030e568633a01529ba416c64a9dde94ee54 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-24 22:56:38 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-24 22:56:38 +0900 Pend test_complete_require_library_name_first commit 225a29b9bc200f09ee56ce7b5221245709f64e4c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-24 19:23:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-24 19:23:15 +0900 FL_USER flags on ohter than T_DATA are reserved [Misc #18059] commit 845c017e0847ec3eedf50900f922a63d3c8c1f71 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-24 12:31:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-24 12:31:20 +0900 Reminders of the Windows versions each API is available [ci skip] commit 0eb679f70c6066b85251a8324ba69bf60d25b8dd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-24 11:36:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-24 12:12:38 +0900 HCRYPTPROV is not a HANDLE Even though it is called "handle" and prefixed with "H", and its value looks like a handle. commit 61aedb28ef1c618b57b59a7f96d598be376f3222 Author: Lucas Kanashiro <lucas.kanashiro@canonical.com> AuthorDate: 2021-09-24 06:25:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-24 10:57:27 +0900 [rubygems/rubygems] Use pend instead of skip in the absence of git in test helper https://github.com/rubygems/rubygems/commit/798a93a98c commit 4e7f085cf7a4e83a05ce134f19719146ee131ffe Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-09-23 18:42:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-24 10:57:15 +0900 [rubygems/rubygems] Revert "Fix an issue causing nested Gem::Uri instances" This reverts commit 6589f7bcc7a63a47cb73f58a290c1e1ac42bba99. https://github.com/rubygems/rubygems/commit/9d0ce31f08 commit b1ab1ee046816b021a3cbd0a08bfce0e459beb4b Author: huangduirong <huangduirong@huawei.com> AuthorDate: 2021-09-09 16:24:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-24 10:57:03 +0900 [rubygems/rubygems] Fix error message building changing password of source Do not change the password of the input parameter source during anonymization, by using the proper helper instead of changing the original uri directly. https://github.com/rubygems/rubygems/commit/eaa2dd8a97 commit 63297c2ca494661bdf5536a3c5d3a1c8d68d2d64 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-24 10:05:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-24 10:11:32 +0900 Align the implementation precedences with `rb_atomic_t` definition On MinGW, where both of Win32 API and GCC built-ins are available, the mismatch of implementations to the definition caused lots of warnings. commit b929af430c39df6597d2f3f53b82c38b1d76217b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-24 01:30:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-24 08:29:00 +0900 Use the flag for uninitialized module [Bug #18185] Make `Module#ancestors` not to include `BasicObject`. Notes: Merged: https://github.com/ruby/ruby/pull/4883 commit 65285bf673914424e960671d1d35e357c455985e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-24 00:55:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-24 08:29:00 +0900 Consider modified modules initialized [Bug #18185] Notes: Merged: https://github.com/ruby/ruby/pull/4883 commit 854fe9d1c1d52037a0c04d75b75765f25f028d1e Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-24 08:08:49 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-24 08:08:49 +0900 Correct two errors in Range RDoc (#4889) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit b38d2bf1182081df7cb09538bb4b23e89a416dfb Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-24 07:21:40 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-24 07:21:40 +0900 Enhance RDoc for Struct (#4885) Treats #members and ::new. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit edb34e35639b1446cf3a860f9a839e910297387a Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-09-24 06:14:04 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-24 06:14:04 +0900 Fix typo in insns.def [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4888 Merged-By: XrXr commit 5d756118af16d22c9b276bad86464050d9100cce Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-08-19 06:01:24 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-09-24 04:29:07 +0900 Use the correct address size Notes: Merged: https://github.com/ruby/ruby/pull/4439 commit 77e6715d67b92b16bcb4588e0da37b494cdc5278 Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-04-30 23:29:57 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-09-24 04:29:07 +0900 Interpret `DW_RLE_start_length` Fixes [Bug #17823] Notes: Merged: https://github.com/ruby/ruby/pull/4439 commit f140965b973c2b6c3fb3e029cb8484cf45a0f1ec Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-04-30 23:22:37 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-09-24 04:29:07 +0900 Fix return value when `base != 0` Notes: Merged: https://github.com/ruby/ruby/pull/4439 commit 3531c859a63573cf43cd708db887d4af31b2add5 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-24 03:08:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-24 03:08:48 +0900 * 2021-09-24 [ci skip] commit 63aba768931a871e3454ad0d62c7813f300c9a53 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-24 03:08:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-24 03:08:33 +0900 [ruby/reline] Use SGR 0 instead of SGR 39 and 49 to reset font settings https://github.com/ruby/reline/commit/cbacb4c1cf commit 3b5923bca3f6cdaddda59c4b52fed1706dd727e9 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-23 23:41:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-23 23:41:55 +0900 [ruby/reline] Reset all font settings at left end of dialog https://github.com/ruby/reline/commit/5f293b5127 commit 8226c33bb510cbe26ec286099812126e938d236d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-23 00:23:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-23 22:07:52 +0900 Add symname_equal_lit for comparison with a string literal commit 96c8964e0e65bb6e232f1da6b4725404cf4f4540 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-23 19:33:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-23 22:04:19 +0900 Revive the test using US-ASCII incompatible symbol commit 4704bc09767cb885315abf7393605fcb930fddb8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-23 18:02:02 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-23 18:02:21 +0900 Revert "Show original string byte sequence to debug" This reverts commit b42fe5937ab2a605a198ffb866db5ccda541568d. commit ede95f541b15d8f95db0215716e005b989a1e7d5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-23 16:28:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-23 18:01:36 +0900 [ruby/irb] Ignore any encoding errors while symbol completion https://github.com/ruby/irb/commit/daa65cded1 commit e6118c8108b6233615618ba1d048336ef83c6ff6 Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-09-22 16:51:53 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-09-23 17:21:06 +0900 .github/workflows/compilers.yml: Use `GNUMAKEFLAGS`. Because the `make` environment variable causes some rubygems tests to fail. And to align with `.cirrus.yml`. Notes: Merged: https://github.com/ruby/ruby/pull/4880 commit 8b48b57fd89ad1bbb1d3b4b8445a65ab2d0b272b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-23 16:40:04 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-23 16:55:35 +0900 Comparing nonnull argument to NULL is useless commit b42fe5937ab2a605a198ffb866db5ccda541568d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-23 16:20:51 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-23 16:21:06 +0900 Show original string byte sequence to debug commit 49af9012a20a824542cf588e55e5488895553e09 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-23 16:02:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-23 16:02:44 +0900 Prohibit invalid encoding symbols [Bug #18184] commit 7cec727612c7b3a3c05b6d9efa16a6d4557d2f47 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-23 00:04:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-23 14:01:08 +0900 Check instance variable count overflow commit 64bdad59918f8d439ffef9000ea4e670a8bdd0f5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-23 00:53:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-23 13:59:45 +0900 Extract ruby2_keywords predicate and setter commit 842a4cb915e7feba6f390ad66106aaa53ed929cf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-22 23:16:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-23 10:55:49 +0900 Turned to_be_skipped_id to an inline function commit e0c6e8c64ac3d7cf05a40acacb36dc60924af897 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-09-23 09:20:00 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-09-23 09:20:00 +0900 [DOC] Use `unpack1` instead of `unpack(template)[0]` [ci skip] commit fb976df81f99bb4505179ec02a74ece6cb6ffeee Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-23 04:51:11 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-23 04:51:11 +0900 What's Here for Range (#4881) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit c8661de0143c1d434dd9f68910ae304c59f8576b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-23 01:20:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-23 01:20:02 +0900 * 2021-09-23 [ci skip] commit 552728a23aeab0df598b356b19a573259e297d14 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-23 00:04:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-23 00:07:17 +0900 Check the encoding of `ruby2_keywords_flag` [Bug #18184] commit 357406da8b463978b6db68ef5672b76067506c64 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-09-22 18:14:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-22 23:37:59 +0900 [ruby/reline] Use `unpack1` instead of `unpack(template)[0]` https://github.com/ruby/reline/commit/45aa367616 commit 782d1d876bb119284f52a7eb59e63f3571c4d55e Author: Kaíque Kandy Koga <kaiquekandykoga@gmail.com> AuthorDate: 2021-09-20 04:44:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-22 23:26:41 +0900 [ruby/irb] Use typed spaces when the line is inside the here documents Use first method instead of square brackets to support 2.5 and 2.6 versions Use tokens Clear check_newline_depth_difference https://github.com/ruby/irb/commit/6fec2a5d46 commit 7c0230b05d0978958f89434c84ddd9c82419c1a5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-22 18:57:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-22 19:04:55 +0900 Check the entire name as `ruby2_keywords_flag` [Bug #18184] commit e2976fd1f678866be68ec213926f336a87e9a6aa Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-22 17:59:28 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-22 17:59:28 +0900 add NEWS entry for https://github.com/ruby/ruby/pull/4815 commit 0dea31c437abc59c80ece31e94cc5f8fb562c3e0 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-21 14:05:19 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-22 16:37:13 +0900 RBIMPL_ATTR_NOALIAS: not until LLVM 12 I observed CI failures. https://github.com/ruby/ruby/actions/runs/1240165911 It turns out that RBIMPL_ATTR_NOALIAS was not mature before. Skip using it for old clang, and everything work as expected. Notes: Merged: https://github.com/ruby/ruby/pull/4848 commit ecaf3a391d7f84ea8893d75940c1958aa2374b68 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-15 16:46:47 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-22 16:37:13 +0900 include/ruby/atomic.h: rework Reduce macros to do the same things in inline functions instead. This way assertions can be made granular. Notes: Merged: https://github.com/ruby/ruby/pull/4848 commit dd78084ea6c3fe97302889eedcb04b859fdaf21c Author: fedor <fedor@cirruslabs.org> AuthorDate: 2021-09-15 01:20:01 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-09-22 16:01:43 +0900 .cirrus.yml: Add Cirrus CI for Arm64 tests. Co-authored-by: fedor <fedor@cirruslabs.org> Notes: Merged: https://github.com/ruby/ruby/pull/4875 commit bf3e3148525b8f83be9b7374ae41b07cc73f5052 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-09-21 21:02:14 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-22 15:50:26 +0900 Rework order of operations to better handle last_status. Notes: Merged: https://github.com/ruby/ruby/pull/4595 commit 7db021f83bc68420746835bb92fce9a5d5a93d9b Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2020-12-05 21:05:40 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-22 15:50:26 +0900 Add support for non-blocking `Kernel.system`. Notes: Merged: https://github.com/ruby/ruby/pull/4595 commit f8bf766877782468c4da8c1cecaf21ce9eac3684 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-22 14:08:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-22 14:17:09 +0900 [DOC] Additional to `Array#sample` [ci skip] * The requirement to the `n` argument. * The order of the result array. [Misc #14147] commit 13bb16f41edb4682f76d02a9bf2e4d65b443dcf8 Author: Jonathan <jonacom@lissismore.com> AuthorDate: 2021-09-18 03:39:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-22 10:14:48 +0900 [rubygems/rubygems] Fix bug where redacted credentials are sent to server Implement deep cloning for `Gem::Uri` class to fix a bug where redacting credentials modifies the URI string in place instead of returning a modified copy. https://github.com/rubygems/rubygems/commit/eafb5a279b commit 42dcac00b156d403f5bde0c9c709bc35a9c8e963 Author: Jonathan <jonacom@lissismore.com> AuthorDate: 2021-09-18 03:40:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-22 10:14:33 +0900 [rubygems/rubygems] Update gem request tests to pass a Gem::Uri into the Gem::Request class https://github.com/rubygems/rubygems/commit/e8e7c2078f commit 63109976bef20a7141f18fc33d6d8a867c3a7fc1 Author: Jonathan <jonacom@lissismore.com> AuthorDate: 2021-09-18 03:36:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-22 10:14:19 +0900 [rubygems/rubygems] Fix an issue causing nested Gem::Uri instances https://github.com/rubygems/rubygems/commit/6589f7bcc7 commit 105e037fe8a64dd3331123d45b302f03d555bb21 Author: fiveNinePlusR <fiveNinePlusR@gmail.com> AuthorDate: 2021-09-18 01:41:05 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-22 10:14:04 +0900 [rubygems/rubygems] Fix possible malicious website to example.com example.com is the canonical stand in for domain examples and will never have a backing website. via https://www.rfc-editor.org/rfc/rfc2606.html https://github.com/rubygems/rubygems/commit/26622c81c2 commit cd2e6318f6502018d398cb9706a286ef5b202bf4 Author: Ellen Marie Dash <me@duckie.co> AuthorDate: 2021-08-14 04:59:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-22 10:13:49 +0900 [rubygems/rubygems] Only check if descriptions *start with* FIXME/TODO It doesn't make much sense to just forbid certain words in descriptions. https://github.com/rubygems/rubygems/commit/7890c98415 commit eaeb5bf0bcf42d43b3118e0586508a5d78cfa5c7 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-09-03 19:21:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-22 10:13:34 +0900 [rubygems/rubygems] Avoid loading URI unnecessarily when activating gems https://github.com/rubygems/rubygems/commit/ef5f30cba7 commit 5fb42986a1b38a758863799aea7e649a6d9fb48c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-22 09:59:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-22 09:59:23 +0900 * 2021-09-22 [ci skip] commit 6e1507f8a2d65d83e597888df0831ba90fb8cdb2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-21 22:24:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-21 23:58:00 +0900 Explicit the target of do-install-all as the same as dont-install-all commit ee53d97b16fdf13e14e1a4a89c31e2a621ddbd66 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-17 20:30:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-21 23:28:14 +0900 [ruby/irb] Sort shortest files in each load paths There are two directories where csv*/**/*.rb exist, lib/ and test/, and depending on the order of tests, test/ may be placed before lib/. In that case, as "shortest" names were not sorted, csv/helper.rb will be the first candidate for "csv". https://github.com/ruby/irb/commit/2af7c6bf71 commit c94718e39fdeca4ae2079b7be64e42023e846aa3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-17 20:01:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-21 23:28:09 +0900 [ruby/irb] Check if Gem::Specification is defined https://github.com/ruby/irb/commit/005ade74dd commit 4576cdca7390ed694536cabf2e699d22c5e0750b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-17 19:56:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-21 23:28:02 +0900 [ruby/irb] Fix argument order https://github.com/ruby/irb/commit/05c65858a0 commit 98c5907c653d19477e19b973cc67b97607c4ba4b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-20 22:17:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-21 13:05:27 +0900 Ripper source on mswin * Get rid of command substitution for cmd.exe. * Separate RM1 command to remove single file sans directory. commit 046f1bf492d707465c0fe90ea8bac34746c9455a Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-21 08:19:21 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-21 08:19:21 +0900 Enhanced RDoc for Enumerable#inject (#4876) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 736eb30e523bc38ddf29e40bf38f0de618843117 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-21 03:41:55 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-21 03:41:55 +0900 Enhanced RDoc for Range (#4870) Introductory material revised. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 53bee7536a6f13d88a4471ac84c8c9f3230a78c2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-21 03:41:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-21 03:41:10 +0900 * 2021-09-21 [ci skip] commit 2a9876a885ba671178458e7fa98738eb8aa21420 Author: Jemma Issroff <jemmaissroff@gmail.com> AuthorDate: 2021-09-21 03:40:55 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-21 03:40:55 +0900 Enhance documentation on GC.stat (#4843) Notes: Merged-By: peterzhu2118 <peter@peterzhu.ca> commit 9770bf23b7a273246b9a6b084e79a8fb6fc1af11 Author: Peter Zhu <peter.zhu@shopify.com> AuthorDate: 2021-09-18 03:38:06 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-09-20 22:01:58 +0900 Fix malloc_increase is not correctly calculated Commit 123eeb1c1a904923754ce65148dbef045b56e083 added incremental GC which moved resetting malloc_increase, oldmalloc_increase to before marking. However, during_minor_gc is not set until gc_marks_start. So the value will be from the last GC run, rather than the current one. Before the incremental GC commit, this code was in gc_before_sweep which ran before sweep (after marking) so the value during_minor_gc was correct. Notes: Merged: https://github.com/ruby/ruby/pull/4860 commit b61064b821823e016e8015f3d9eeab3cf9074ccd Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-07-16 12:22:17 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-20 20:16:45 +0900 Add gvl and fiber assertions to scheduler interface to catch invalid usage. Notes: Merged: https://github.com/ruby/ruby/pull/4656 commit cb8434563d3cc8fc5c3a5aa1e34ad7a9bb542cdb Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-07-19 07:14:51 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-20 19:07:58 +0900 Add alternative optional hook for `scheduler_close` to allow public usage of close. Notes: Merged: https://github.com/ruby/ruby/pull/4658 commit 4730a1e0ec24cf273d2d93866ef56f9c5ac2a516 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-09-20 17:50:57 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-20 19:07:34 +0900 Don't describe C function that does not exist in prior versions. Notes: Merged: https://github.com/ruby/ruby/pull/4871 commit 649c87bd86d08bee8cd61584e6ece34e15e6814d Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-09-20 11:19:52 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-20 15:30:51 +0900 Add C interface spec. Notes: Merged: https://github.com/ruby/ruby/pull/4649 commit 88ba5fe547cae2370eccbe230754f59e1d5cbaf3 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-07-14 10:42:18 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-20 15:30:51 +0900 Expose `rb_fiber_raise` and tidy up the internal implementation. Notes: Merged: https://github.com/ruby/ruby/pull/4649 commit 2e3d43e5775799d1b4d6672a3a18b3fc5777c52b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-19 22:22:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-20 15:23:00 +0900 Allow to include uninitialized modules [Bug #18177] The module that is about to be included is considered initialized. Notes: Merged: https://github.com/ruby/ruby/pull/4868 commit d2d549032c7e40d3720f298a67abbcdc5b1666a2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-20 00:15:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-20 00:15:48 +0900 * 2021-09-20 [ci skip] commit 576b2e64cdc5ea42ad345dd3c1c215e006c06fca Author: Lars Kanis <kanis@comcard.de> AuthorDate: 2021-06-25 17:07:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-20 00:15:30 +0900 MINGW-UCRT: Set CONFIG['arch'] and RUBY_PLATFORM to "x64-mingw-ucrt" This allows easy differentiation between ABI incompatible platforms like MSWIN64 and MSVCRT-based MINGW32. This also implicates a distinct rubygem platform which is also "x64-mingw-ucrt". Although the term "mingw32" is the OS-part for 64 bit systems as well, the "32" is misleading and confusing for many users. Therefore the new platform string drops the "32" from the OS part to just "mingw". This conforms to the common practice of windows platform testing per RUBY_PLATFORM=~/mswin|mingw/ . Notes: Merged: https://github.com/ruby/ruby/pull/4599 commit 52cc54ce6f4258e4349c93d95c1ce111d26f8a7d Author: Lars Kanis <kanis@comcard.de> AuthorDate: 2021-06-23 17:17:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-20 00:15:30 +0900 CI: Enable MINGW-UCRT build and test in github actions This enables a temporary branch on ruby/setup-ruby and MSP-Greg/setup-ruby-pkgs for UCRT-capable action setup. They set correct PATH and MINGW_PACKAGE_PREFIX for UCRT, if a UCRT based ruby is used. See here for more details: https://github.com/ruby/setup-ruby/issues/193 To enable correct UCRT settings this therefore uses rubyinstaller-head as base ruby, since it is already UCRT based. Notes: Merged: https://github.com/ruby/ruby/pull/4599 commit 70cefcfa0f769f7269cf0c950a4516036dd1a1ea Author: Lars Kanis <kanis@comcard.de> AuthorDate: 2021-06-22 15:52:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-20 00:15:30 +0900 Adjust test to set+get big values on all platforms and add MINGW-UCRT Previously the test verified on MSWIN that huge values can not be stored in environment variables but that they can on others. IMHO the intention of the test should not change between platforms. Therefore this adjusts the test to have the same intention - that is to store a big value. This also fixes compatibility with MINGW-UCRT, which previously failed with: <Errno::EINVAL: Invalid argument - ruby_setenv(foo)> test/ruby/test_env.rb:512:in `[]=' test/ruby/test_env.rb:512:in `block in test_huge_value' Notes: Merged: https://github.com/ruby/ruby/pull/4599 commit e32fe3ce7611f58f260959f96757704aee17a18e Author: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> AuthorDate: 2021-06-21 21:46:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-20 00:15:30 +0900 MINGW: _WIN64 is not defined on i386-mingw32 + ucrt. Notes: Merged: https://github.com/ruby/ruby/pull/4599 commit 637d7288f3b8d803c4207f5f842d408d48c20411 Author: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> AuthorDate: 2021-06-21 21:45:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-20 00:15:30 +0900 MINGW: More permissive pattern matching for coroutine Pattern matching for target_os in configure script should be permissive if we consider suffixing something onto "mingw32". Notes: Merged: https://github.com/ruby/ruby/pull/4599 commit 8bda51287865c0d9fe38d7cb39c60070159a6ea3 Author: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> AuthorDate: 2021-06-21 21:44:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-20 00:15:30 +0900 MINGW: set rb_cv_msvcrt=ucrt and RT_VER=140 when UCRT is used Notes: Merged: https://github.com/ruby/ruby/pull/4599 commit 4705ebd907343cf635cbd9288503653fccf61f0f Author: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> AuthorDate: 2021-06-21 21:41:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-20 00:15:30 +0900 MINGW: Fix build error on Windows UCRT Notes: Merged: https://github.com/ruby/ruby/pull/4599 commit c0a892a7f04689ea360784ead526b8d9c02809d2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-19 22:39:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-19 22:39:18 +0900 Fix a typo [Bug #17048] commit d531f12e283fa54f9405d01c787146334fd6f14b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-14 14:27:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-19 17:17:03 +0900 Enable shallow clone on appveyor https://www.appveyor.com/docs/how-to/repository-shallow-clone/ commit 70624ae43d72b94c12e7fe717e0b9d5456bcadda Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-18 16:15:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-19 16:27:47 +0900 Extract hook macro for attributes commit 162ad65fdd5e3f826eff4e0208c58a21151e993a Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-09-19 09:37:35 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-09-19 09:37:35 +0900 Revert "Do not load file with same realpath twice when requiring" This reverts commit ddb85c5d2bdf75a83eb163856508691a7436b446. This commit causes unexpected warnings in TestTranscode#test_loading_race occasionally in CI. commit f9fd04ffbc334bb5a3e8a0898ad201ad1c11709d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-19 01:05:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-19 01:05:40 +0900 * 2021-09-19 [ci skip] commit ddb85c5d2bdf75a83eb163856508691a7436b446 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-01 05:50:19 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-09-19 01:05:23 +0900 Do not load file with same realpath twice when requiring This fixes issues with paths being loaded twice in certain cases when symlinks are used. It took me multiple attempts to get this working. My original attempt tried to convert paths to realpaths before adding them to $LOADED_FEATURES. Unfortunately, this doesn't work well with the loaded feature index, which is based off load paths and not realpaths. While I was able to get require working, I'm fairly sure the loaded feature index was not being used as expected, which would have significant performance implications. Additionally, I was never able to get that approach working with autoload when autoloading a non-realpath file. It also broke some specs. This takes a more conservative approach. Directly before loading the file, if the file with the same realpath has been required, the loading of the file is skipped. The realpaths are stored as fstrings in a hidden hash. When rebuilding the loaded feature index, the hash of realpaths is also rebuilt. I'm guessing this makes rebuilding process slower, but I don think that is a hot path. In general, modifying loaded features is only done when reloading, and that tends to be in non-production environments. Change test_require_with_loaded_features_pop test to use 30 threads and 300 iterations, instead of 4 threads and 1000 iterations. I saw only sporadic failures with 4/1000, but consistent failures 30/300 threads. These failures were due to the fact that the concurrent deletions from $LOADED_FEATURES in other threads can result in rb_ary_entry returning nil when rebuilding the loaded features index. To avoid concurrency issues when rebuilding the loaded features index, the building of the index itself is left alone, and afterwards, a separate loop is done on a copy of the loaded feature snapshot in order to rebuild the realpaths hash. Fixes [Bug #17885] Notes: Merged: https://github.com/ruby/ruby/pull/4615 commit 1b300789ffc5fda1fcb534d0611ffdb7731e5b9d Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-09-18 21:52:18 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-09-18 21:52:18 +0900 ast.c: AST.of against C method should return nil (as Ruby 2.6--3.0) commit ed9d9cee76ee941c504ccea33c70c0eb5d825813 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-09-18 21:28:35 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-09-18 21:28:35 +0900 ast.c: AST.of checks if a given method object is defined in C [Bug #18178] commit 1c07c98229aa16bf13cbd3997d32230d5324b4f2 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-18 21:27:02 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-18 21:27:02 +0900 Enhanced RDoc for Range (#4847) Treated: #to_s #inspect #=== #include? #cover? #count Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 593cc4ca83298c9495e6694dec6ada5c79453b11 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-18 18:04:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-18 18:04:12 +0900 * 2021-09-18 [ci skip] commit ec4ecb6d6d452037359ab8782771b410f30995aa Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-13 12:30:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-18 18:03:54 +0900 Include the invalid value in invalid_utc_offset error Notes: Merged: https://github.com/ruby/ruby/pull/4864 commit b45fe48fbb20e334ef6dd1a85d5b7a37e6701d40 Author: Jose Galisteo <ceritium@gmail.com> AuthorDate: 2021-09-01 16:34:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-17 20:46:18 +0900 [rubygems/rubygems] Trigger install command by default on remove Closes https://github.com/rubygems/rubygems/issues/4889 https://github.com/rubygems/rubygems/commit/2b1754479c commit fd918d1afa89405c194e90476373f936b3577df0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-07-26 13:20:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-17 11:14:08 +0900 Removed Module.allocate [Bug #17048] Notes: Merged: https://github.com/ruby/ruby/pull/4858 commit 178ee1e801acb33d13b3e8a630f6ca4926c68fbc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-07-26 11:52:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-17 11:14:04 +0900 Already initialized modules cannot be replaced [Bug #17048] Notes: Merged: https://github.com/ruby/ruby/pull/4858 commit 8f41c791b19a47e2dfa39b0a6d12ef964098536a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-17 10:20:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-17 10:27:00 +0900 Add spec for MatchData#match and MatchData#match_length [Feature #18172] commit 5a048829a488bb1cb4b0e77b3d46a1920ad92136 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-09-15 18:40:42 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-09-17 10:03:39 +0900 Add WB_PROTECTED to mutexes mutex_mark is (basically) NULL, so we don't have any references to mark. This means we should safely be able to mark Mutex as WB_PROTECTED without changing anything else. Notes: Merged: https://github.com/ruby/ruby/pull/4852 commit 34d6720fee545c42a24f88044d0f78db0477452d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-17 08:54:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-17 08:54:18 +0900 Prohibit test method redefinition Notes: Merged: https://github.com/ruby/ruby/pull/4854 commit 8450b6a91d44457375cad24a4d4e46165f046d25 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-17 08:39:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-17 08:39:26 +0900 * 2021-09-17 [ci skip] commit 475a4651b639c943887c57d20704bab27e397eae Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-17 08:38:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-17 08:38:29 +0900 [Feature #18172] Fix duplicate test name commit cbbda3e648f8eff032679cdddb0ce48643cdd723 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-16 23:49:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-16 23:49:16 +0900 Adjust indent in string.c [ci skip] commit aa3d8388c056d8692e40a96de7441524654effc4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-16 19:55:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-16 19:55:31 +0900 NEWS for [Feature #18172] [ci skip] commit f2cb6288bc6f1d5e693841734ce5eb04ff41c2a9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-16 19:50:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-16 19:55:06 +0900 [Feature #18172] Add MatchData#match_length The method to return the length of the matched substring corresponding to the given argument. Notes: Merged: https://github.com/ruby/ruby/pull/4851 commit 09d724e6f846b4e53e8571d41ca7d3055d732d9f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-16 19:37:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-16 19:55:06 +0900 [Feature #18172] Add MatchData#match The method to return the single matched substring corresponding to the given argument. Notes: Merged: https://github.com/ruby/ruby/pull/4851 commit ddb32e66160ab50849419ef7c7ac584913b79c34 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-14 00:57:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-16 18:48:20 +0900 [Bug #18173] Update loaded_features_index If $LOADED_FEATURES is changed in the just required file, also the index table needs to be updated before loaded_features_snapshot is reset. If the snapshot is reset without updating the table, the name of the added feature will not be found. Notes: Merged: https://github.com/ruby/ruby/pull/4849 commit 5f1385bec0b6cfddbd51fc867ee6dcff2122399b Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-09-16 17:31:39 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-09-16 17:31:39 +0900 Add a newline [ci skip] commit 81fd91ab1ba0a17ba7d117d125cc439bc17aa6e0 Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-09-16 17:28:31 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-09-16 17:29:48 +0900 Add details of Hash value ommission [ci skip] commit 68bd5626c3c3520691ff14ee5dcd9da551a274f5 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-09-16 13:21:06 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-16 13:21:06 +0900 Remove unneeded ruby_reset_leap_second_info function declaration (#4824) Notes: Merged-By: nurse <naruse@airemix.jp> commit 745287d43a8fb63c84be986b23319d40e6affe2f Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-16 05:51:54 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-16 05:51:54 +0900 Enhanced RDoc for Range#minmax (#4846) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit e967740d071a132cc0d09ff14fbe50594226844e Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-16 04:48:47 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-16 04:48:47 +0900 Enhanced RDoc for Range#max (#4844) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 67e3727d71c6d1ba9083b2de5bd6b46ad75206c9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-16 03:37:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-16 03:37:51 +0900 * 2021-09-16 [ci skip] commit 97374c7eecb5a52bcb4ec3baa0b3d25b060a3a0f Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-16 03:37:34 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-16 03:37:34 +0900 Enhanced RDoc for Range#min (#4842) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit db51bcada408f8b0b93a11d41f8e4222436bd9f2 Author: Peter Zhu <peter.zhu@shopify.com> AuthorDate: 2021-09-15 22:37:46 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-09-15 22:59:37 +0900 Fix total_freed_objects for invalidated pages When the object is moved back into the T_MOVED, the flags of the T_MOVED is not copied, so the FL_FROM_FREELIST flag is lost. This causes total_freed_objects to always be incremented. Notes: Merged: https://github.com/ruby/ruby/pull/4841 commit a65ac2d6fa4e7381d88b79a2881f7c05daa903c3 Author: Peter Zhu <peter.zhu@shopify.com> AuthorDate: 2021-09-13 22:19:10 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-09-15 22:00:42 +0900 Don't overwrite free_slots count during sweeping gc_compact_finish may invalidate pages, which may move objects from this page to other pages, which updates the free_slots of this page. Notes: Merged: https://github.com/ruby/ruby/pull/4831 commit e624d0d202ef691f5c75841b90bf44a624e3cdcc Author: Peter Zhu <peter.zhu@shopify.com> AuthorDate: 2021-09-13 22:12:08 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-09-15 22:00:42 +0900 Update the free_slots count of the original page When invalidating a page during compaction, the free_slots count should be updated for the page of the object and not the page of the forwarding address (since the object gets moved back to the forwarding address). Notes: Merged: https://github.com/ruby/ruby/pull/4831 commit 92ac1721c23e3c865b929f201c04edca53ccb5b5 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-09-15 16:27:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-15 16:55:12 +0900 [ruby/racc] gemspec: Link to https in homepage [ci skip] https://github.com/ruby/racc/commit/96075f7720 commit 645acf5771dccdae7791c8e1e24a43ad350a3594 Author: Olle Jonsson <olle.jonsson@auctionet.com> AuthorDate: 2021-09-14 21:38:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-15 16:20:18 +0900 [ruby/racc] Prefer __dir__ over File.dirname(__FILE__) https://github.com/ruby/racc/commit/c49df40658 commit fae0f2486dd9768b7e20b9cf67166fe935f18b0f Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-09-15 16:10:42 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-09-15 16:11:40 +0900 Add test cases for constants and keywords commit a27c274f0476fa270b9e2f5d4f4ec36bd8c0b61a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-15 09:39:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-15 14:16:14 +0900 [DOC] Fix broken links [ci skip] * As the "doc/" prefix is specified by the `--page-dir` option, remove from the rdoc references. * Refer to the original .rdoc instead of the converted .html. commit 63ab2fedc86e463cb5132e19c285f5c3442ca5f7 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-14 16:25:28 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-15 09:25:23 +0900 include/ruby/atomic.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4835 commit 789232f9fde3c8956397778b30b98d7e18361bed Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-13 16:53:52 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-15 09:25:23 +0900 template/Doxyfile.tmpl: modernise applied doxygen -g for Doxygen 1.9.3. Notes: Merged: https://github.com/ruby/ruby/pull/4835 commit f650ca7568d076f6e7afb32886abfcf85b17275d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-14 21:15:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-15 08:52:49 +0900 [ruby/racc] Rename helper to case commit 845ab32a2911f9a857e1a91551465d1cb1f70996 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-14 21:26:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-15 08:49:24 +0900 [ruby/racc] Ignored loading CoreAssertions in test case https://github.com/ruby/racc/commit/1f8b05b298 commit 8f6b42e0cb5c41255b51d1d09086eb7748f9ac69 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-14 20:53:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-15 08:49:24 +0900 [ruby/logger] Ignored loading CoreAssertions in test runner https://github.com/ruby/logger/commit/2fd5401ad6 commit f77f9b9328efef34389cd559e8bf239a064755c5 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-09-14 20:27:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-15 08:49:23 +0900 [ruby/logger] gemspec: Drop unused "executables" configuration This gem exposes 0 executables. https://github.com/ruby/logger/commit/fbd9315393 commit b8c3a84bddac7366c4e391234b2535253869e885 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-09-15 08:11:05 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-15 08:11:05 +0900 Refactor and Using RBOOL macro Notes: Merged: https://github.com/ruby/ruby/pull/4837 Merged-By: nobu <nobu@ruby-lang.org> commit 89242279e61b023a81c58065c62a82de8829d0b3 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-09-01 17:43:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-15 08:00:18 +0900 Marshal.load: do not call the proc until strings have their encoding Ref: https://bugs.ruby-lang.org/issues/18141 Notes: Merged: https://github.com/ruby/ruby/pull/4797 commit a0357acf197dcdb504dd97af39103dd8c68f53b3 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-15 07:51:31 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-15 07:51:31 +0900 Enhanced RDoc for Range (#4839) Treated: #size #to_a #each #begin #end #first #last Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit aa18f645ed742b30e09b2e76be0fe3382529bcfe Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-15 06:08:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-15 06:08:37 +0900 * 2021-09-15 [ci skip] commit 1af5a0c574e45dae22098af855c124e12fb8bb6d Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-15 06:08:21 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-15 06:08:21 +0900 Bsearch doc for Array and Range (#4838) This PR creates doc/bsearch.rdoc to provide common documentation for bsearch in Array and Range. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 57d315c937e79199af2b77f21f5eecaca85ffac8 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-09-14 03:59:04 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-09-14 23:55:14 +0900 Handle overwriting Object::ENV in spawn Instead of looking for Object::ENV (which can be overwritten), directly look for the envtbl variable. As that is static in hash.c, and the lookup code is in process.c, add a couple non-static functions that will return envtbl (or envtbl#to_hash). Fixes [Bug #18164] Notes: Merged: https://github.com/ruby/ruby/pull/4834 commit 616d6717589abb30a5c67c79cbf874693c3dadbd Author: ima1zumi <mariimaizumi5@gmail.com> AuthorDate: 2021-09-13 14:51:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-14 22:28:50 +0900 [ruby/reline] Remove unused using method follow #347 https://github.com/ruby/reline/commit/37453a83a3 commit fa05697e4832fbd67a4f91b9bb362471902faab3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-14 16:36:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-14 18:51:38 +0900 Use `%printer` directive for Bison 3.8 Notes: Merged: https://github.com/ruby/ruby/pull/4836 commit 6031f4268b56d9db807fc05a06ba7c4fcb5c5bf8 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-14 16:04:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-14 16:04:28 +0900 Update bundled_gems at 2021-09-14 commit 3fd85313319e69b37abeff40d48d1e5aebd043b0 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-09-14 15:22:01 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-14 15:22:01 +0900 Remove uneeded initialize local variable (#4818) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 692dfc50888b86084181d520297a49faa4bd0809 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-14 09:19:30 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-09-14 14:58:28 +0900 Refactor vm_yield function Notes: Merged: https://github.com/ruby/ruby/pull/4830 commit bb84c75001f1bf13b4b2a12db8f4420e76a3ea03 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-31 16:44:09 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-09-14 14:53:42 +0900 Revert "Force recycle intermediate collection in Hash#transform_keys! [Bug #17735]" This reverts commit 522d4cd32f7727886f4fcbc28ed29c08d361ee20. Notes: Merged: https://github.com/ruby/ruby/pull/4341 commit 881136d2fff829b4c6c3cdd1fbfe93d361b85954 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-14 05:36:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-14 05:39:18 +0900 [ruby/reline] The behaviour of Alt+key on Windows is changed ref. https://github.com/ruby/reline/commit/dc2cf90fa6 https://github.com/ruby/reline/commit/4d1518aafc commit 4e03032a83a059e32da9d886df2552fd06799c01 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-14 04:00:39 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-14 04:00:39 +0900 Enhanced RDoc for Range (#4833) Treated: ::new #include_end? #== #eql? #hash #step Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit ebad1e829316de48f212cd57f88639fa5ac55ee4 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-14 00:37:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-14 00:37:38 +0900 * 2021-09-14 [ci skip] commit 94dea77cd6d16f85fabbeb53e12accf37e5f6159 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-14 00:37:15 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-14 00:37:15 +0900 Links for What's Here sections (#4827) Makes What's Here sections in Time and Dir link to What's Here for super and included modules (like all the others). Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 43f49b2d1cde1d3816a852f9c80a50ac562f7853 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-13 21:15:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-13 21:15:36 +0900 Fixup 455978cd133f27fab9e2bfa4301efd3b7c7d0462 commit ec6f04c092027102369acfe19368e65ee07d8b52 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-13 21:14:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-13 21:14:42 +0900 Use capture_output instead of capture_io commit be04006c7d2f9aeb7e9d8d09d945b3a9c7850202 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-13 20:56:34 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-13 20:56:34 +0900 Rename capture_io to capture_output and deprecate to use capture_io commit 455978cd133f27fab9e2bfa4301efd3b7c7d0462 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-13 20:41:03 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-13 20:41:03 +0900 Removed unused mu_pp method commit f5993331b2737a212134cb0b9e3a7a0d417e0d58 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-13 19:09:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-13 19:09:24 +0900 Renamed skip to pend and prepared to deprecate skip method commit aaa9805e7e26c50f21eff01f9ca67ce366226ca4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-13 15:47:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-13 15:47:45 +0900 Add unique token to separated runner Same as Test::Unit::CoreAssertions#assert_no_memory_leak. commit dbdceb8a191b540caae534d28cee6f20a9759d50 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-13 11:31:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-13 14:39:23 +0900 Removed workaround for test_order Notes: Merged: https://github.com/ruby/ruby/pull/4828 commit 4676921730bd257c234396fd9134ae9876043756 Author: Brandon Weaver <keystonelemur@gmail.com> AuthorDate: 2021-09-13 12:34:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-13 13:54:03 +0900 Adds mixed hash value and value omission tests Introduces specification tests for mixed values and value omissions for Hashes and keyword arguments, such as `{ a:, b:, c: 3 }`. Notes: Merged: https://github.com/ruby/ruby/pull/4829 commit 2982464a8e3f07e769d8d6eb0fd70b01c168a962 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-13 10:54:24 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-13 11:07:32 +0900 Revert "Resolved conflict initializers" This reverts commit 62db6e47b6c0fbba337649bfa468ec221d5d1001. 308183fffab43f1e111d5bb4c60f1380432966e6 is the correct solution about this. commit ec6b444fbf975421150b3ff3a2c50bcc53aaf854 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-13 09:36:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-13 09:36:42 +0900 Fixed leaked file descriptor Leaked file descriptor: TestRDocGeneratorDarkfish#test_template_stylesheets: 11 : #<File:./tmp20210913-30865-7c4ey8/hoge20210913-30865-evm2uo.css> commit 8de53fb31cd7491c31c56db6a01c5cab40d25e4b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-13 04:04:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-13 05:15:47 +0900 [ruby/reline] Use expanded method definitions instead of refinements @jhawthorn said, "this will make Ruby's integer comparisons slower globally." It looks like "binding.irb" is going to cause serious problems in Rails applications. https://github.com/ruby/reline/commit/ee8d6c6a82 commit a8fe7c9e2a2fa1e3e8cd28e73093e26c9719a817 Author: DC <devnexen@gmail.com> AuthorDate: 2021-09-12 13:55:25 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-09-13 05:12:15 +0900 coroutine enables assembly version for dragonflybsd. Notes: Merged: https://github.com/ruby/ruby/pull/4823 commit c8a1e57af0608c294c5b94f9d158b3d34b94ebb2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-13 01:08:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-13 01:48:43 +0900 Downloader: accept some RFC 2616 noncompliant dates commit 6257090496cf4482637a4c67c1fec4e2ca3a5d8a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-13 00:51:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-13 00:51:22 +0900 * 2021-09-13 [ci skip] commit 289f3a79b5257931004252515a56a783132941df Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-12 16:38:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 22:49:07 +0900 [ruby/openssl] Add fallthrough comments https://github.com/ruby/openssl/commit/258e30b640 commit 6920f3dc964052112795dc9c5c4f9650807726c8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-12 16:27:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 22:49:05 +0900 [ruby/openssl] Suppress cast-function-type warnings https://github.com/ruby/openssl/commit/0f91e2a6ee commit 598d66f6b2d1ab34dcd6db3bed70c59836a6206a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-12 15:40:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 22:49:03 +0900 [ruby/openssl] Separate formatting from ossl_make_error Just append OpenSSL error reason to the given message string object, which would be alreadly formatted. Suppress -Wformat-security warning in `ossl_tsfac_create_ts`. https://github.com/ruby/openssl/commit/11b1d8a6b8 commit c7dce12eb9e07f6ae35fc767760b862c10317e11 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-12 00:44:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 22:49:01 +0900 [ruby/openssl] Suppress printf format warnings * Add `printf` format attribute to `ossl_raise`. * Fix a format specifier in `config_load_bio`. * Use `ASSUME` for the unreachable condition. https://github.com/ruby/openssl/commit/41da2955db commit 11fd3fec534bb626e717a0628a0cf6d6252a0ff4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-23 09:57:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 18:44:53 +0900 Add benchmarks to create Time instances commit e8025874334fa583fc77ed2ccc32ee78c2519a2c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-12 14:05:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 14:05:52 +0900 Add printf attribute to functions call va_list format functions commit c5570a7c11ba0872e171500a548f2ecb82e94588 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 22:50:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 11:16:51 +0900 Extract backref_number_check Notes: Merged: https://github.com/ruby/ruby/pull/4822 commit 99d8c4832a7133ca52578d015e3ddcfd94820f4a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 21:43:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 11:16:51 +0900 Preserve the encoding of the argument in IndexError [Bug #18160] Notes: Merged: https://github.com/ruby/ruby/pull/4822 commit 83a5e2bb5c1b9f24b70dc30c50b5deb4d7232119 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-11 09:56:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 11:16:31 +0900 Using RB_FLOAT_TYPE_P macro Notes: Merged: https://github.com/ruby/ruby/pull/4821 commit af5826a25e24ba7179038f99362aa918d48bd8be Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-11 13:45:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 11:16:09 +0900 Replace RB_TYPE_P macro to FIXNUM_P and RB_INTEGER_TYPE_P macro Notes: Merged: https://github.com/ruby/ruby/pull/4816 commit 926749516e2f9ee23c2eb6295b9759d06509b8e4 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-12 03:56:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-12 03:56:41 +0900 * 2021-09-12 [ci skip] commit bbd105c4453525b0b1d9838a2c6aad188549f86d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-12 03:51:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 03:51:19 +0900 Exclude option_parser from Test::Unit::Runner#inspect commit 308183fffab43f1e111d5bb4c60f1380432966e6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-12 03:23:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-12 03:45:58 +0900 Prepend the modules in Test::Unit Needs to override Test::Unit::Runner#run, so that RunCount#run runs which increments @@run_count. Previously it worked because these methods were inserted between Test::Unit::Runner#run and MiniTest::Unit#run. commit 7686776c0563eeb269c5ffa1fc2cf42d4d31e222 Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-09-11 22:03:10 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-09-11 22:03:10 +0900 Hash values should be omitted in Ripper results commit 8d0315a2bbda2cdefeaf00ff1edcd90384d8951a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 21:05:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 21:05:15 +0900 Removed unused assertions for rubygems commit d58e0ffc247a18bbd6ec5a7f78c79e171bda4168 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 20:35:18 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 20:35:18 +0900 Removed unused alias for run_test commit 297f9b8d4c4502aa2ba0eccf93dfce215a7b6dfe Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-09-11 20:23:36 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-09-11 20:23:36 +0900 Add documentation and tests for keyword argument value omission [Feature #14579] commit d05ef38865af8dd43fd583e46f46509fe29e93cb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 19:13:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 19:20:16 +0900 [DOC] NEWS for [Feature #14579] [ci skip] commit 8e832ea031ed37696853dbe9527273c2a58af1ab Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 19:18:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 19:19:39 +0900 [DOC] Fixed indents in NEWS.md [ci skip] commit 28df037718b47e06158250f75402ee983fcc53e1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 18:15:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 19:09:37 +0900 [DOC] Separate paragraph in LEGAL instead of break lines [ci skip] Although trailing spaces in Markdown breaks the line, it is often overlooked. commit 7899866849c1bac708e513e5d9e14467a0155a9e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 19:07:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 19:09:37 +0900 Another test for [Feature #14579] The value of the dynamic key cannot be omitted for now. commit c60dbcd1c55cd77a24c41d5e1a9555622be8b2b8 Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-09-11 18:49:12 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-09-11 18:52:25 +0900 Allow value omission in Hash literals `{x:, y:}` is a syntax sugar of `{x: x, y: y}`. commit 64e056a4c5d4595cd2c36aabc747cca32f4b5395 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 18:09:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 18:10:15 +0900 Drop to Ruby 1.8 related code commit a13ee1f33cca476061f3ed7c823059188884fc17 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 18:04:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 18:10:15 +0900 Removed rubinius support from test suite commit aebd0a873e9de23544426e5a27e0fb68140d474a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 18:03:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 18:10:15 +0900 Removed maglev related code because it's not active status now commit b568e6a1304e8b9398ae4f8cc8a09ffa7cf89d8b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 17:54:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 17:54:11 +0900 Suppress deprecated rb_iterate declaration warnings in C++ Apply commit:733ffa74cd32a5c11ff744a5490782daa00ff1ae again. commit 952806cdecac2c275cf54392d3bf815ee746a063 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 17:37:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 17:37:49 +0900 Update comments for minitest commit cd83e716d0efa2e060d366c910a2745c2bdb78e5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 17:32:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 17:32:42 +0900 Update an option message commit 911f62e681019dca947585d154f39195b99dbef9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 17:19:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 17:19:02 +0900 Directly alias orig_run_suite commit 46bde60df31790d1618eabaf3dc5f36931c2acaf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 16:43:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 17:12:27 +0900 Remove method filter hack for minitest commit 0fbde94b27d9ed08c96944717bf7bfa76897276e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-10 23:25:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-11 17:03:52 +0900 [ruby/rdoc] Convert upper case copyright and registered marks https://github.com/ruby/rdoc/commit/3bca7dc093 commit bc0ea95ca8742b11d361952232d22c4ac0e33e83 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-10 22:56:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-11 17:03:38 +0900 [ruby/rdoc] Convert tick double quote in character entity references https://github.com/ruby/rdoc/commit/6ed889aac9 commit 6944163415997e75e0d70ea860dad6071ee5d79a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-28 12:57:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-11 17:03:33 +0900 [ruby/rdoc] Convert a backtick to an open single quote https://github.com/ruby/rdoc/commit/82eaefbae4 commit c5c0f5c65262f621484c711229e8c4de0b58d9d9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-28 12:19:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-11 17:03:26 +0900 [ruby/rdoc] Convert single quotes in character entity references As well as double quotes. https://github.com/ruby/rdoc/pull/824#discussion_r683173389 https://github.com/ruby/rdoc/commit/09002bdab5 commit 30b4da2bc1300bb37c7d6cd3b097768a99ab4dba Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-11 16:25:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 16:26:00 +0900 Update the test tool path commit cbda32cd98133d8a29a6219d00b1dfdad3308c5b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-11 16:02:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-11 16:02:42 +0900 Update bundled_gems at 2021-09-11 commit d9025ee2b5f8454987aa801f074638837f226a9f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 15:29:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 15:29:16 +0900 fixup f73f9e1f893409d8b7b42ff5fbda104fdd277cba commit 806583c093ecc2d67830f0a8f0d94decf0ed71e5 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 15:17:34 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 15:17:38 +0900 Change include order for test assertions commit f73f9e1f893409d8b7b42ff5fbda104fdd277cba Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 14:29:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 15:17:38 +0900 Replace minitest to test for backtrace_filter commit bf5711f49874ca33aebdad6df2ae037533e9a800 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-14 19:23:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 15:01:22 +0900 Check ruby-related includes only [ci skip] commit 6f35a4e526c38e8c1f561a623488f836a5c84119 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-09-11 12:29:59 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-09-11 12:29:59 +0900 Use `./autogen.sh` instead of `autoconf` in doc commit b1789294695432557fbb79d5ba522c2eaa5b968d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 11:21:37 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 11:21:37 +0900 Fixed uninitialized constant Test::Unit::Assertions::MIN_MEASURABLE. I'm not sure why it's failed under the chkbuild and rubyci. http://rubyci.s3.amazonaws.com/arch/ruby-master/log/20210911T000007Z.fail.html.gz commit 2bc85766c0886fd690576f19fb3cc454dbb818bf Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 10:24:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 10:25:34 +0900 [ruby/net-http] Use omit instead of skip for test-unit https://github.com/ruby/net-http/commit/5bb14fd3bc commit 9784f6685e1ccf7929c53ecc95272006645e70c5 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-04 01:25:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 09:15:21 +0900 Using NIL_P macro instead of RB_TYPE_P macro Notes: Merged: https://github.com/ruby/ruby/pull/4806 commit 032534dbdf08c0912dffa482e29a491b8aa9276c Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-03 20:50:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 09:13:24 +0900 Using RB_BIGNUM_TYPE_P macro Notes: Merged: https://github.com/ruby/ruby/pull/4805 commit 56065f0686e6798fff2ee7319f0f03026f427c13 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-02 12:15:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 08:48:56 +0900 Using SYMBOL_P macro Notes: Merged: https://github.com/ruby/ruby/pull/4798 commit 9583d2057d1a4d907875ad447dfd64a541e63447 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-11 06:52:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Added missing Assertions for assert_file_predicate Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit d05383812adf86e6c6a536246c03a2d401f10058 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-10 20:56:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Replace Test::Assertion and Test::Skip to Test::Unit::AssertionFailedError and Test::Unit::PendedError Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 7cec81e073ed1d29910b3e1dc4dd5d7e9d2b490f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-10 20:46:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed needless require Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 151a1cd45eb28982083d0c2c99ed8c564c18a0af Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-10 20:41:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Fixed inconsistent require order for assertions and core_assertions Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit d7f0b41c7ba75639503d562cf7f5e26c3157c676 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-10 20:37:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Surpressing the noisy messages Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 980f61935f6e8331e0908dc963e60fb727ab4d8c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 21:47:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Temporary pend unknown behavior of parallel tests Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 566bbc24217a71842ed8b467711f9df721e2762a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 21:38:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 pend non-supported feature Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit bc1c09c6e8d0c101baa1ed20146ecaac118d39fd Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 21:16:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 More fixed assertion message tests Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 1c4f0f1eee78a6c3339e31897191d5d38f5087bb Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 21:03:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 We prepared Test::Unit::TestCase in default value Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 0fda70e3a3833c1ee82ad06c22aa7436027cccc0 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 20:56:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 We don't want to consistent assert and refute assertions Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 47928204b7541f7728eae4ebc157029af8c42589 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 20:55:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Fixed compatible assertion message format Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 0a5844cbdd176977ec6f7e3cc31d2a1959f18759 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 20:35:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed output assertion tests. Because our default runner is replaced by custom output Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 6b5400ccde478da7734a769bfb87a1ebf626bb46 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 20:13:43 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Use msg format with test-unit Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 934feb1dee4a75383f4326b7a7fec538181ea9ce Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 20:04:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed minitest dir from make task Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 905c04d1e6a9996d146ea8261cc36694a10ccf1c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 15:51:00 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Use Test namespace instead of MiniTest in test_parallel.rb Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 9ff614bc13b946628852624fe0462be7d9660557 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 15:10:00 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Use Test::Unit::Assertions migrated with MiniTest::Assertions Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit ad979a5e00996881a06a5863a607009ed7e13320 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 14:26:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Replace Test::Unit to Test::Unit::Runner migrated with MiniTest::Unit Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 6d206352c3c224228547fcfececb29d09b2b7fed Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 14:14:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Use assert_raise instead of assert_raises Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit d5e94bf5db899b5a54b37f10f39250df4ebef6a8 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 14:13:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Replace MiniTest to Test Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 8aaa40e55fa2812755dec33db265745c77cdb3ed Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 13:56:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Move test of minitest to testunit Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit a3b0518672c323ede41669d93c7cb0a496459191 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 12:26:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed obsoleted constant Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit dbbfdc488cdbaac89157e7a4679ab4bd45c333fa Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-09 12:13:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Added core_assertions.rb to LEGAL Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 4505be6fd0863aac9624062a98f4cbdafd8f4b72 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 21:11:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed MiniTest hack for the default gems repo Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 3451d4d9417ce1a6099d18e3a0d4ee012cf7bace Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 21:07:24 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed minitest dir and added LEGAL information for based code Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 9b026ca39b27b1213758699555eb8e6d4874984c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 21:02:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Integrate Minitest to Test Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 1e18f4e60f948e5887ae696390c99def102d8345 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 20:36:56 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Use Test::Unit::Runner instead of MiniTest::Unit Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 0598e87abf4d1de56b410d217c2cde518c6a8484 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 20:23:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Use prepend for override to status line Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 8ee38bdd7d44dd8e6b7d073349c1b7abbf1346a8 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 19:33:34 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed duplicated autorun method Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 62db6e47b6c0fbba337649bfa468ec221d5d1001 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 14:04:43 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Resolved conflict initializers Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 7ef0a4634c742a15dc1d4bc9a62e8ff5d8ba5c09 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 14:03:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed unused _run_suites Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 988eda744c9e9782f661bd5fbabaea19ca2277bd Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 12:32:37 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed deprecated process_args Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 206af4727c2892e755d1c82fcd211d4712fe658c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 12:32:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Merge poke methods Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 1fd2a66a93a4065b6be725066044107045c81d01 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 12:04:10 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Merge run methods Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 374cc7231e4dd0ded505aad45d74d7533ba58f22 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 11:00:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed VERSION constant Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 8ec187c091537aa5d25f19eee522aaec12bc7c26 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 10:35:50 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Replace MiniTest::Unit to Test::Unit::Runner Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit c18e9539373a1e90e36e503a51ce5cebb7372e23 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-08 10:00:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Move MiniTest::Unit to under Test::Unit::Runner Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 78ec066347cd5e59957ef6f98d4f40fd00aa667a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-07 21:12:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Use CoreAssertions instead of Assertions Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 48933a34095b7565196c1b78d9644b44cef8f602 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-07 21:00:31 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Added default test-class for parallel tests Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit e4b5ac9b9a6c701735e1e1787d2e2ddf4a970c8d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-07 20:27:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Use Test::Unit namespace Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit df86d78a26edaafbaf317e86db946ab09700a920 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-07 17:23:43 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Use self class for diff Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 3e32412e08d2ec77cb84d535b591445cdaa4656a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-07 11:46:12 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Fixed broken runner for `make test-all` Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 871e7b5f55f079e04fdc3f6f42eaa139e3a3345a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-07 10:03:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Use MiniTest Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 7456cbdd09b3f0e6d58cd16d8bd060a397d2156b Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-07 09:36:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Move test_order under the Test::Unit::TestCase Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 93c44c4ed2f3b35db862f4238e5fb104cfb7aab9 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-07 09:31:44 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Move constants under the TestCase Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 54d2d706296c325fa67d05e73aebd01698205ab5 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-07 09:30:22 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Migrate MiniTest::Unit::TestCase class under the Test::Unit Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 8431c718bb4c7133c4da5f34006fd64552fcdd9e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-07 08:54:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed needless compatibility for MiniTest 5 Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 77763d49406ddfb7b682e68961a51d8d39dd686b Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-07 08:53:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Removed needless alias about Minitest Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit 1bec4f251d2dbf5578a884a8fb96c773ffa5e451 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-06 22:17:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-11 08:48:03 +0900 Move MiniTest::Assertions to Test::Unit::Assertions Notes: Merged: https://github.com/ruby/ruby/pull/4813 commit cd829bb078e6a3486d9b5ea57fc5111d289c1860 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-09 23:21:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-11 08:41:32 +0900 Remove printf family from the mjit header Linking printf family functions makes mjit objects to link unnecessary code. Notes: Merged: https://github.com/ruby/ruby/pull/4820 commit 967b9743faac0b55a3d8deb176a08fdff449bba8 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-09-11 07:21:21 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-11 07:21:21 +0900 Enhanced RDoc for Enumerable (#4808) #to_a #to_h #inject Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit c09f8e56bc28227aaa1c00d1d6d93e69b322fb41 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-11 04:41:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-11 04:41:38 +0900 * 2021-09-11 [ci skip] commit 3e038ab1c7f0009f753bfada2e18fb6078a92c12 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-11 04:30:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-11 04:41:20 +0900 [ruby/irb] Ignore invalid 3 colons in completion https://github.com/ruby/irb/commit/5e29e3e39c commit cfbf2bde4002821d12047b2aba0010739aaf925e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-10 21:26:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-10 21:26:16 +0900 Remove unused argument commit cb4e2cb55a59833fc4f1f6db2f3082d1ffcafc80 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 22:19:07 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 .github/workflows/compilers.yml: disable shared for LTO LTO is about static links. Makes no sense to have DLLs. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 0de84bb763dab21daa39e73d0b4d62c8aa503d3e Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 21:57:12 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 .github/workflows/baseruby.yml: check Ruby 3.0 Why not? Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit f752382688f18b98ac36aff10158309b4cf91e1c Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 21:46:17 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 spec/ruby/optional/capi/ext: must support GCC 5 What a silly bug. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit b0f01202677da255f2004b4d6de43088202a0f8b Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 21:44:06 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 spec/ruby/optional/capi/ext: support ruby < 3 RBIMPL_WARNING_PUSH is a 3.0 feature. Rubyspec OTOH has to support 2.x. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit b563b9c48f09093b94554867fe8a71de6c27a37b Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 18:19:07 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 spec/ruby/optional/capi/ext: suppress warnings These warnings are okay here. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 488ef54f0bbd724fd0965b7439d00ed1a3ffc379 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 18:02:24 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 .github/workflows/compilers.yml: --enable-shared Noticed that defs/gmake.mk has `exts: rubyspec-capiext` dependency only when $ENABLE_SHARED is true. This one adds extra tests so we basically welcome. Why not default it on. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit a310f896db4e25d8a355087fce1cf932f4758331 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 17:15:58 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 common.mk: update dependencies Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 64f271241d79448ec75040d97df611f86d44ecda Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 15:35:18 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 suppress GCC's -Wnonnull-compare This particular NULL check must be a good thing to do both statically and dynamically. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit c39dd708b5f59766ce75c88e92d92ebcaa1df341 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 14:24:09 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 suppress GCC's -Wmissing-attribute I was not aware of this because I use clang these days. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 6522b51ce5a878989766875d049e38daa0d0b9bc Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 14:11:38 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 rb_ary_new_from_values: can take NULLs Explicit check done at runtime. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit dddc618d3076de2c1b27d01f106bf0bf126d4677 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 14:05:11 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 suppress GCC's -Wsuggest-attribute=format I was not aware of this because I use clang these days. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit fd12bc1896bd4a78b9ff376fd685a009254b153f Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 12:20:40 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 ruby_scan_oct, ruby_scan_hex: are not pure Silly bug, they write back consumed bytes through passed pointers. Must never be pure functions. ruby_scan_oct does not refer any static variables so it can still be __declspec(noalias), while ruby_scan_hex is not because it reads from ruby_digit36_to_number_table. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit de2afff1b9233b5b23ca1f6442a4b880e160cffb Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 12:19:20 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 dln.c: add missing dependency Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 4f03930d04a0185ee9057ee314cfb79eb5a1b73a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-09 11:12:33 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 ruby_cleanup: fix MSVC compile error See https://ci.appveyor.com/project/ruby/ruby/builds/40686153/job/1wihxw5m5kybtohj Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 679f4b895b683430c49f0014ac885eb9291d59e9 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-11 17:40:38 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 template/Doxyfile.tmpl: EXTRACT_ALL=NO This prevents file-static functions/variables be listed in the CAPI documents. An entity shall be placed inside of a file that contains `@file` doxygen comment, in order for it to be documented. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 0e3dae78b31fbb86233aac80668a06d9930ca47f Author: sonots <sonots@gmail.com> AuthorDate: 2017-10-21 16:38:32 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 template/Doxyfile.tmpl: EXTRACT_STATIC: YES [Bugs #14037] I often feel that C API documents are lacked in C source codes, especially for static functions. I propose to turn EXTRACT_STATIC = YES flag of Doxygen to YES, and write document comments for static functions as much as possible. * template/Doxyfile.tmpl: EXTRACT_STATIC: YES [Bugs #14037] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit bbe70498135c880fbece705b5962c3a9381857aa Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-12 17:19:48 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 template/Doxyfile.tmpl: rethink about exclusions I guess we don't want documents for C API of extension libraries? They are never intended to provide C APIs anyways. We could revisit this decision later. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 676073b62eb9a0e7b368c3a0a6ebb01aa1a8791b Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-08 17:03:56 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby.h: skip doxygen Everything defined in this header file are for backwards compatibility only. No one practically need them any longer. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 4702b59f2151b5d32a1b799a9580ea0870c886d4 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-08 17:02:08 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward.h: skip doxygen There is nothing interesting here. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 6420db8ab72e3348d0ddf59071c696cbdb270818 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-06 23:32:23 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/debug.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 1563526edffe4dfc8330ebdef23ffd25e2ac460c Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-08-08 15:24:44 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/defines.h: add doxygen The only thing that remains in this file which is still worth documenting is the RUBY macro. Everything else were split into many files in https://github.com/ruby/ruby/pull/2991/commits/1ff4cee2b172bf7653c29a8522c132907172b975 [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 6e8e2b467bc2d1db0a593ddfb23eabdc109d85e1 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-08-19 15:18:08 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 forgot to delete a redundant comment Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 3ca688aeb0506ce2cdf1c7b6f7058e0c42581b01 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-08-06 23:32:41 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/encoding.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 84b96298b33a80318ed0fc2f3010119ac9207a0f Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-07-09 15:35:21 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/fiber/scheduler.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 809138fe4bb4e72b9c790de794b6ca50b8586291 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-07-08 12:48:32 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/io.h: add doxyen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 6204b0dd99fe244636d98666df7bce70cc79e3ca Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-09-06 23:35:06 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/memory_view.h: add doxygen I'm just applying doc/memory_view.md as a doxygen comment. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 5a79439a683b405a1d766d99bf477ba63aa97118 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-07-02 14:57:19 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/missing.h: skip doxygen We don't want to document e.g. M_PI, which is an ISO C thing. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 56c0475036846f542529c52d9c78be9586ecf87d Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-07-02 14:31:54 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/ractor.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 2c4dccad337b58b4d36cf489ebecd9c7da778e4c Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-25 09:53:40 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/random.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 1c9106da8bfe96dafa844cf543eda08dca1b176d Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-23 15:43:05 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/re.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 4c14c55505800b8605962c7dd93d6dff6e832ff7 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-18 11:37:50 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/regex.h: skip doxygen It seems this is a part of Onigmo's API, not Ruby's. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit e18bc14a05cba2a00fea1525b097530bd5362a9e Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-11 17:15:28 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/ruby.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 4912260b7050ce24c2fde345bc8ea206152e02aa Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-09 14:00:02 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/subst.h: skip doxygen Nothing worth documenting in this file. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit a50287ab03ce9cf871d307cc619e394d9a736466 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-09 13:59:32 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/thread.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 53e0d7eec71302eacd370426d0af29f8adcfe19d Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-08 17:58:25 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/thread_native.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit eb39497ecf2599edfb5ab5bbb2c1ed16102819cc Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-08 14:51:47 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/util.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 99dd95806d6e29dca3b7dc639a8bd5193417c3a8 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-08 11:25:50 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/version.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 072d74cc7aa710cf1d8e42c661bdf6c84ead1c82 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-08 09:55:09 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/vm.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit ba814a5aa3c69322d616471e934592b261448645 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 17:26:34 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/2/assume.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 5107a6bf12e91b830acca044484ff123b6ac7f96 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 16:48:29 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/2/attributes.h: skip doxygen These macros are for backwards compatibility. No longer used in our public header files. People can safely forget about them. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 07240056f9dc2419d1d90d7557051f648bbd6548 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 15:40:14 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/2/bool.h: skip doxygen It's 21st century, right? Just forget about them. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit c0b5d95cc026678a7d2409deee58ee4e48772125 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 15:27:13 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/2/gcc_version_since.h: skip doxygen It seems no public APIs depend on this macro any longer. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 5868ebf46e35e7a618dfeba071f9a83d662d65d9 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 15:11:18 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/2/inttypes.h: skip dpxygen These macros need not be documented methinks. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 0f9cf6d4d0a9571c4d7dbc341e05b912c50de159 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 14:46:28 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/2/limits.h: skip doxygen For instane CHAR_BIT is an ANSI C macro which should be documented in other places than Ruby (and the definition in this file must work exactly identical to that of standard one). [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 7ead69068edaddf62487d6525b8fe29231566947 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 14:12:04 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/2/long_long.h: add doxygen Might want to delete LONG_LONG macro but for the time being let us describe what on earth it is. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit f05dc8b44a1d546ed1046860454f92b094efb475 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 13:35:29 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/2/r_cast.h: skip doxygen Nobody practically uses this file. Please just don't remember. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit e5a1efb72a9bb406395813ea79625ff9bd1e89ac Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 14:44:29 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/2/rmodule.h: skip doxygen These macros are considered archaic. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit c4693b8a5b230a34fd59898d03949248e09c8eaa Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 13:33:33 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/2/stdalign.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 8a469f1c2575ae8a1da602affb94e74ffa6a06c3 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 13:33:08 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/2/stdarg.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 5453031fd468b06e0401d3d53cb963454ae5aaef Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 11:56:52 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/cxxanyargs.hpp: addo doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit cac1e88d752d2bb9087314eb7c54623fbfc6aacd Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-21 16:30:10 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/backward/cxxanyargs.hpp: suppress doxygen warning rb_cFiber is not visible from extension libraries, hence intentionally not documented. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 9eab1e910768c51fd78288263a1432723d4e0b6c Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-26 11:07:18 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/char.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 6e62cf46edc59aede8ddcc5b272b24f5e019d24b Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-26 09:29:05 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/double.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 887c1f117dfe3a46478faea00d084ee8374b643f Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-25 11:55:36 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/fixnum.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 98ab28619575a766f90dfcbfa54a73c9274e387d Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-25 10:51:04 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/gid_t.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 5e1caeb15ce7590621facf93d87207e73dd8a3a9 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-25 10:37:46 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/int.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 8fa82cd2722698880718f5b2fec948edcbf55850 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-25 09:23:09 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/intptr_t.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 6706d0216f5491d7a0386838bc71a1e7aaa9a3fb Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-22 14:44:45 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/long.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit abd15ac775d41e6485f728fe0fad4cddf138d3ec Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 15:43:07 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/long_long.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit e9c423ac6c90f760e65e3b528bc7c26996ccab02 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 14:45:12 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/mode_t.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 92150fde85f028a5d60cf670cf66a2036cdb3a15 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 14:39:13 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/off_t.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 5289552e53d0d4874b70d652b8e7da76de27de4d Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 14:11:27 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/pid_t.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 009c6b742b5a1e301daaf7f73ed87a60005503be Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 14:08:14 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/short.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 5c3cd09715c8ac623c0c0b41451d1568cba85a74 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 12:02:26 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/size_t.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 86d4fe686c52920c2bb638fd1da731e811c4261a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 11:57:07 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/st_data_t.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit edf1964bdfabbd25be3082f77986b9f5ad845ba1 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 11:43:31 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/arithmetic/uid_t.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 0ea157136f1b255321722db1acd0be3c6229a77a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-24 09:21:58 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 postscript about rb_mutex_sleep Asked ko1 about the design. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit ce54282b75761b97ea961ea5fe19cef244f82f97 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-04 23:53:32 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/array.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit f9a00f9ef2dedaad4fe09c327603d63d580fa32e Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-19 10:54:58 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/bignum.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit fbe1fcd82deef1ab035729244fed219ee6f18cc9 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-14 18:25:36 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/class.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 5f478d8ac3101bf774e8f3f1943fde37ab36db5b Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-13 14:06:12 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/compar.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 0375f1fe9728638da51d1fae0c87b3176f24d9ec Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-13 13:03:55 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/complex.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 0f3ae588822fb63435d38b91001afd0237900fa8 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-13 09:49:20 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/cont.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 974a9e4fba646727c9ba8ebfe898ad17286a5f12 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-07 14:49:09 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/dir.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 0a7034258f765f057ad56d1210b890d44324f904 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-06 18:08:32 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/enum.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 407c4850f19f92c703847cea1e07b3151e1cdc6e Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-06 15:50:02 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/enumerator.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit d5460f1cdac1c941baa29625b794b630a5f2f593 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-04-26 11:31:26 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/error.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 3fa875f88b4630af072a2719506a65f58e96822a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-04-23 15:25:42 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/eval.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit e3b94182a08db8d5e9f7021627ad4ad216c3250b Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-04-22 14:41:39 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/file.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit ba42d35dd087c2133fb49289c72fff0ac7f108e6 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-04-21 14:10:12 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/gc.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 990a6c789a4e7cddaea4831de90b9a5e451444f3 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-04-16 14:54:31 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/hash.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 398be8bc92a1affef5aa3a72ef5730f16b8098d0 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-04-12 17:27:01 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/io.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 63aef9b177b817b8dbb0a886f2992bf4ad769a23 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-15 17:23:02 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/load.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 72a43d4a4b6d4d41d15578b465bb393f6ed051ed Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-15 10:04:43 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/marshal.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 14e6e122e73fc0b5a05a68e277895c6b965092b8 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-12 14:16:11 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/numeric.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit d43accae15cdfc245052f6b08c5880913a35ae9e Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-11 16:34:49 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/object.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 4f97917474ea67a711e89e6051047d4e657a9774 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-08 16:52:35 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/parse.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 26b7efc51cf2085c5173bd4fc7263760b81900c7 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-05 13:55:54 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/proc.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 15255b303c7fffa146550f69df6f9f772af38ea3 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-02 18:02:30 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/process.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 357a43558e0f6bd214873c16530b2e7c8d27a4ad Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-26 15:45:17 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/random.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 949220d9dba4a86697798302ec7bf5b4ebe3230a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-25 14:39:57 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/range.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 7c8ad0a37d983f44f2ecb8a304fb926e31cac08b Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-25 11:44:19 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/rational.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 06127fe4aeb8aa14b7dda050e56dffefa2a731c5 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-24 17:20:31 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/re.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 9d91878b79401cdeb70c6cd22519c82ae1638ea4 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-24 11:52:23 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/ruby.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 4625ab88e2ebd853378cd59ab4b5dee5e88b6a20 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-19 18:08:12 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/select.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 29201e1ad2074076211de51895cee92fff479f60 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-19 18:05:12 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/select/largesize.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 20716f64e9287bc71fd8b215e7e92d3a26d2faa6 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-19 16:03:10 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/select/posix.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 515f8d09671812ce08ccc20de483420ab81e417b Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-19 14:34:44 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/select/win32.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 65ec1706180c0432be66af765425c6780e84ca3c Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-19 11:31:26 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/signal.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 772ad7718b932bd3aa28e88321f5974bd75d5e49 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-18 17:50:03 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/sprintf.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 091faca99ca92cb1146b3c4d8ebba67f4822561c Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-18 15:35:55 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/string.h: add doygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 1bdae3773f224dd711a601fbb0add5eea6b455fa Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-12 11:58:36 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/struct.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 45803af58cc5fefa7acff8ae1fa955487347d309 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-10 13:57:45 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/thread.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit a88bd246cafc584ddaccef45b31b35a42f3cdd50 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-08 11:32:11 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/time.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit cbf9fc6b0210488713750ca7b53de2b83d667e05 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-05 16:36:18 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/variable.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 43cac51277ab2c0e713b549a5a64c05aedc8bcfc Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-04 17:35:39 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/intern/vm.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 8b0dbca2f41228ed0c7adb2ae592aea722a440c4 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-03 16:39:38 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rarray.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit a2b8f61cba2fb4720acbed846ae0409b3a39b909 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-03 11:27:49 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rbasic.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 9c4aa94a199fbbf0dacb1b5e3530b1d8ccc65105 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-02 17:29:23 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rbignum.h: add doxgen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 7c28330ca03d124068f608e9d8d1a4e07ba5dd7d Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-02 16:34:14 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rclass.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 005ff5da52f8b9c8e7633fad9d39e6a47c39ae40 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-02 12:58:32 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rdata.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 0c486c55310e5392e6773b04472404589c4ed9a0 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-02 10:31:57 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rfile.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit b92a9af405f6d0ce838d29496c44b5ea62c059fe Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-02 09:58:57 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rhash.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit b40d74ce696ca3c58e051220fafdaeb2d2e20214 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-01 16:52:16 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rmatch.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 549e9383e46d9fb9074cef483caaf9b5af908199 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-01 14:51:15 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/robject.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit ada4a0fdd231cce24407ad4a89f6e5fd56940b31 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-01 14:01:07 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rregexp.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 1bd133949295be3b50439c956f951f7b1bfe7d6e Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-01 12:10:21 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rstring.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 746996e6c97d65f9b34021c2481719270e0941b6 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-29 11:05:16 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rstruct.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit fdae26a5a8815e430661e5c6e7e90f167d5d1447 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-28 15:10:40 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/core/rtypeddata.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 156101291899cb7da65a07f07ce6e7f525e36ae7 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-19 17:02:37 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/anyargs.h: fix typo RBIMPL_ATTR_NONNULL macro takes an argument. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 618fa0a67bdfd67bbbc524ad1830c4eae3a4c9d7 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-04-26 13:57:36 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/anyargs.h: fix typo Just applied spell checker. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit cf1424d62ad5406efb79adc1e387c5b111527454 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-07 16:38:59 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/cast.h: skip doxygen This header contains nothing worth documenting. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit b5e491fb456cb4decdd27e91584aa3c8023173ab Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 11:32:14 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/compiler_is: skip doxygen We don't want 3rd parties to use these RBIMPL_ macros. Let's not document them. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 924d78f87d4332d388739932b5c2f620440b12da Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 11:03:57 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/config.h: skip doxygen It is definitely desirable to document them, but we need more human resources. Tentatively disable documenting them. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit b7cd9a3b7946107ad2b2d2e71a628dcb04f6f960 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-20 15:29:02 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/constant_p.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 538a3919d993a253e0aef14ca2fab8f65aa87634 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-08 15:55:05 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/ctype.h: add doxygen Must not be a bad idea to improve documents. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 9febab7afcff3a2b7d6a90f022ad19377f62733d Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 10:36:19 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/dllexport.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 0d13f5aa736ed2c30113df9f72d4044f2a091ef5 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 10:16:50 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/dosish.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 30f33198714555abc9ed004b75b4508a39922335 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-01 14:10:07 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/eval.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit ee94fb44f4ea0c75203bd0e99909360c81f971fa Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-21 09:36:11 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/event.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 99c3328edc696ec3ce12d536a1dfe4578fd26f13 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-09 17:00:50 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/error.h: name a parameter Better document [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 891dbedd001720442167b8bbeee0edf11c3e58de Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-21 11:16:16 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/error.h: refactor move contents around [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 1b6245ccdcd414698a257847d508603f438578ca Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-21 11:15:08 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/error.h: add doxygen Must not be a bad idea to improve documents. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 4881a3ed38dca132ae85878d40ad79b8f4aa5e55 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-20 10:18:13 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/fl_type.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit fbe0785a3476023e36cfa38c089ff4d79c8c0c21 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-23 11:13:01 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/glob.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 3be4adcf2bf0d4181f666f6102eba45b5fd73568 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-22 16:39:42 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/globals.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit f83b14af247c56083fa19f2f0ca47ba4088b324f Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-18 14:24:07 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/interpreter.h: add doxygen Must not be a bad idea to improve documents. [ci skip] In fact many functions declared in the header file are already documented more or less. They were just copy & pasted, with applying some style updates. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 03fd22a170977f23b6c75981c41b3b90b4704975 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-11 18:26:27 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/iterator.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 4397e737c57a0722499669f3c60693d2cdeba609 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-19 12:55:16 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/memory.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 00ff6b68e4c2de55b175a5723d14269602cf163a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-21 14:43:55 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/method.h: add doxygen Must not be a bad idea to improve documents. [ci skip] In fact many functions declared in the header file are already documented more or less. They were just copy & pasted, with applying some style updates. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 9ba9dbf168c8be042a11baad90a2b7bf8428a478 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-21 16:32:40 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/module.h: add doxygen Must not be a bad idea to improve documents. [ci skip] In fact many functions declared in the header file are already documented more or less. They were just copy & pasted, with applying some style updates. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 1f66d8a77b4d7efcff778ba82284b7b651b53104 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-18 12:27:20 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/newobj.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit c3c0bf6823ed86981235b71b83cb420d272532cb Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-07 10:27:53 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/rgengc.h: add dosygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 2061dadb0a7022c64bd0599105ffb5c17bb0b2e9 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-15 17:34:29 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/scan_args.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit b0a7c0dfd04ac51b621c016387d5f65cfe3ecf5a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-15 16:34:34 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/special_consts.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 818fabfcd96898192ab9de3cb31fc424bcd167c6 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-18 19:57:48 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/stdalign.h: add doxygen Unlike other "add doxygen" commits this one adds a preprocessor branch that doxygen would process. This prevents it from parsing other parts of the file. Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 73d2bf97c1b93bb45d9c0edda02dde43165fc0da Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-12 17:11:48 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/symbol.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 178ce745975134b87aacb3d42e383011e4350ed4 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-11 18:39:29 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/value.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit e2a441bdd4584292deaf85906d747521ad2e9f2a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-14 16:25:16 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/value_type.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 3341e178ef5729443729a0eaef42b305fc3aef1b Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-14 11:47:56 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/variable.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 13be4c0342951131f89272097f3796332f5d89ad Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-14 15:15:53 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/warning_push.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 28b7b0e13e261006dee4b4d9152aaabdb1286718 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-13 14:38:03 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/xmalloc.h: add doxygen Must not be a bad idea to improve documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit a300133b4ada9d647e8c57914727bc4fac25647e Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-11 17:24:33 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 include/ruby/internal/xmalloc.h: fix typo [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit daf0c04a47e5aaede2f2a3e3663148dff96ff770 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-08 09:40:43 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 internal/*.h: skip doxygen These contents are purely implementation details, not worth appearing in CAPI documents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit b6469c3aaf5362ec7c953a90a7b6b2c1e0449a1d Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-23 14:51:41 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 template/Doxyfile.tmpl: add alias This enables me to write `@shyouhei` in C comments without complained by doxygen that @shyouhei is an unknown special command. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit a08163fb2497ea4a6468b202155b3d28b752cacc Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-15 10:53:14 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 template/Doxyfile.tmpl: use of += operator It is easier to maintain (e.g. sort them). [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit f9af5c954205c20c149f27b455543834161e798f Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-22 11:07:44 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 template/Doxyfile.tmpl: quote spaces The new Doxyfile.tmpl says: > # Values that contain spaces should be placed between quotes (\" \"). [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 85a737a1f91e3cc5c22452e3f83b11cbe0cb5b33 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-09 11:34:42 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 template/Doxyfile.tmpl: increase DOT_GRAPH_MAX_NODES `make capi` warned: > warning: Included by graph for 'dllexport.h' not generated, too many nodes (85) [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit c9753f3f91917b8b998d9b81d136a7bfcae310f6 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-22 11:50:39 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 template/Doxyfile.tmpl: delete commented-out settings Let our VCS manage old contents. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit aa5dc3e297a788213bf5b6244a0f9e9638d208bd Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-22 10:43:41 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 template/Doxyfile.tmpl: modernize Didn't question the current settings. This changeset just re-applied `doxygen -g` against: doxygen 1.9.0 (1e72202d8fa0e9d2b3f2a29c88ec4f5790a0a4e2) [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit ef7448359478a04d67a4a406cca1c8442b5e2f94 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-12-26 14:45:57 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 tool/strip-rdoc.rb: optimize This script is called from Doxygen many times. Worth optimising. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit 94e5953b484517234ad476b1e179d1bdbcbafbd7 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-14 15:00:54 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-09-10 20:00:06 +0900 sed -i 's/. They/. They/' Truly editorial fix for comments. This works better with Emacs' set-justification-full function. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4815 commit b76ad15ed0da636161de0243c547ee1e6fc95681 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-10 14:19:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-10 14:51:56 +0900 Remove stale DLEXT2 Actually disabled at 181a3a2af5df88d145b73a060d51fe437c8c4ad4 in 2004, it has remained in config.status and been carried over to rbconfig.rb. commit 3d4207f9bb4f39dd06eb419cc0bf185c8f03375f Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-09-10 13:51:50 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-10 13:51:50 +0900 Need `#` `shareable_constant_value` is magic comment. commit 5dc753df47739ce03d4ecaf1f37817858861e5cd Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 11:23:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 11:38:54 +0900 [ruby/reline] Move #pointer from DialogRenderInfo to Dialog https://github.com/ruby/reline/commit/92dbac0bff commit 01a364a36a14bc4cc0dfbfba02557bceec10f6b8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 11:01:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 11:01:33 +0900 [ruby/irb] Version 1.3.8.pre.9 https://github.com/ruby/irb/commit/4781f67fb8 commit e02bbe469bb24fe5e3fe485183ccc0222a1bc253 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 11:01:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 11:01:27 +0900 [ruby/irb] Update dependency, reline >= 0.2.8.pre.9 https://github.com/ruby/irb/commit/ab5d84c55b commit fbfa0c880d3f68bb93cc53340e2dd355081cab26 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 10:59:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 10:59:40 +0900 [ruby/reline] Version 0.2.8.pre.9 https://github.com/ruby/reline/commit/bad76b5a87 commit 4c896cda37fabb562f07ab1dccc6ab03a3b2c703 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 10:56:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 10:57:16 +0900 [ruby/reline] Fix scroll range of a script for tests https://github.com/ruby/reline/commit/6ceebe52bc commit e5c40c3dc9d20481700ba8c859b08678b7b21971 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 08:54:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:06:48 +0900 [ruby/reline] Add tests that column of dialog with scrollbar is moved without garbase https://github.com/ruby/reline/commit/45c70d6222 commit 199a681d7141b83842247a689321f9aa6e40b4c2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 08:29:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:06:39 +0900 [ruby/reline] Add a test that text under dialog appears https://github.com/ruby/reline/commit/0b63bd56ce commit a22c04a1d900746761da93e5051a6b22571b94cc Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 08:24:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:06:29 +0900 [ruby/reline] Add a test that autocomplete doesn't crash after 2nd line https://github.com/ruby/reline/commit/f682c74975 commit d1498f93ab0ef48f8cf8f6ec718317dab6cd11b6 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 08:15:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:06:19 +0900 [ruby/reline] Add a test that dialog doesn't crash when callback returns nil https://github.com/ruby/reline/commit/2c6f604b98 commit b00522608fb8ccdc81a5561dca1157e0f64922e8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 08:08:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:06:08 +0900 [ruby/reline] Add a test that autocompletion returns to the original text https://github.com/ruby/reline/commit/d80880e56b commit 90f0f22fcc905aed76772b583691d9615dcc91b8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 07:58:34 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:05:56 +0900 [ruby/reline] Use single quotes to match others in the file https://github.com/ruby/reline/commit/a17de2d6d8 commit 9066496aa33b0b74f664cfddfbc9fc307225acb6 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 07:57:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:05:45 +0900 [ruby/reline] Add a test that autocomplete dialog doesn't crash when empty https://github.com/ruby/reline/commit/9c0080c27f commit 8e6ed5d75b24ddf5249e877cdc32171ef2140140 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 07:37:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:05:35 +0900 [ruby/reline] Add a test for when completion target is wrapped https://github.com/ruby/reline/commit/25a94d70c3 commit 5af602e4d48fd9951bcdd873b3e471ca4b123d45 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 07:36:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:05:25 +0900 [ruby/reline] Erase lines correctly when dialog height is changed https://github.com/ruby/reline/commit/68d2516551 commit f51ce20c6ad59eb8e274bde1780dae58020cb192 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 07:34:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:05:14 +0900 [ruby/reline] Fix complete proc of a script for tests https://github.com/ruby/reline/commit/ee1c1adddc commit 963e2c33b66c6fabcbcce2acbf280be9e3ccb2e8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 06:57:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:05:05 +0900 [ruby/reline] Add a test that dialog may appear at the top if cursor at bottom edge https://github.com/ruby/reline/commit/6c2ab47958 commit c00643c18a6c4da2c3c5ff05f8b3987523bc23e2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 06:42:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:04:56 +0900 [ruby/reline] Add a test for dialog at right edge https://github.com/ruby/reline/commit/db642169b9 commit c25511ef46c047e970e45e363288e8c005284c31 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 04:58:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:04:47 +0900 [ruby/reline] Add a test for dialog with scroll key https://github.com/ruby/reline/commit/99640abf75 commit c94735fa240eae853265900876bbe67d9b9655d6 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 04:37:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:04:41 +0900 [ruby/reline] Add tests for autocomplete with scrollbar https://github.com/ruby/reline/commit/29634cbc93 commit 364e646317fb9bf0f284532ad8a1c1e707bcbb21 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 04:36:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:04:36 +0900 [ruby/reline] Add a test for simple dialog https://github.com/ruby/reline/commit/d70f507e2c commit 44759533786562d0ff5c49147d050ea685e97ea5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-09 07:22:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 09:04:30 +0900 [ruby/reline] Add a simple test for autocomplete https://github.com/ruby/reline/commit/11f83b2f4b commit 7983fb965891330f5c41919b266ada53ab822f12 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-10 08:07:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 08:34:51 +0900 [ruby/irb] Tests may not execute in the source directory https://github.com/ruby/irb/commit/f4aaa70cfc commit 62cecea073a6d86f3176fba11762606c7e1ed2a1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 07:43:01 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-10 07:43:01 +0900 Find irb command path in test commit 7cc298a484dfaec5d1af349b25f28b0cfb8c9c20 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 06:18:21 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-10 06:37:07 +0900 [ruby/irb] Pend on truffleruby https://github.com/ruby/irb/commit/fbf52d9608 commit 3bd596efa45cf7e33529906b648b98e219a16fe2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 06:09:09 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-10 06:37:07 +0900 [ruby/irb] Remove an unused variable https://github.com/ruby/irb/commit/5bf1cb2078 commit 90afe5f11f9c70ebab1ccb318712692884498931 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-10 06:08:56 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-10 06:37:07 +0900 [ruby/irb] Move IRB::TOPLEVEL_BINDING from exe/irb to lib/irb/workspace.rb https://github.com/ruby/irb/commit/e736a77076 commit 3503c94af501e38164613ef8347174a27346828a Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-03-18 22:44:42 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-10 06:37:06 +0900 [ruby/irb] Avoid loading files' local variables [Bug #17623] https://github.com/ruby/irb/commit/b12f0cb8e2 commit 192147afd875a177b45086d904bd910a3dc8ff7e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-10 04:59:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 04:59:35 +0900 * 2021-09-10 [ci skip] commit d86c1a31613adf6b97f79dbdc2ebc63135b64198 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 22:22:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 04:59:25 +0900 [ruby/irb] Add yamatanooroti test for symbol with backtick https://github.com/ruby/irb/commit/4d32f0e88e commit f085a6fb6953a23e555cae7ffe4274927c6b0961 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 22:19:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-10 04:59:17 +0900 [ruby/irb] Support symbol with backtick https://github.com/ruby/irb/commit/0aa2425883 commit 419e6ed464b2abcc18b60d1bcbd183fe9dfb99c2 Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-09-09 23:49:39 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-09-09 23:56:28 +0900 Update the Travis badge URL in README. [ci skip] It seems the current URL is outdated, as it is not reachable. Notes: Merged: https://github.com/ruby/ruby/pull/4819 commit 141db4f383b6cb74bf17aa8b5deeaa04d313946d Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-09-09 23:34:30 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-09-09 23:35:03 +0900 test/psych/test_scalar_scanner.rb: Prevent a warning ``` [ 4696/20990] TestAst#test_ranges:test/psych/test_scalar_scanner.rb(none):138: warning: ambiguous first argument; put parentheses or a space even after `-' operator ``` http://rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20210909T123007Z.log.html.gz commit 34839e41f181fca0655754c152e42e7faca56adb Author: Soutaro Matsumoto <matsumoto@soutaro.com> AuthorDate: 2021-09-09 21:45:14 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-09 21:45:14 +0900 Bundle RBS 1.6.2 (#4817) Notes: Merged-By: soutaro <matsumoto@soutaro.com> commit 847c70011e53ec2c83eed0183ed7045a3ac34fc4 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-09 14:51:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-09 14:51:47 +0900 * 2021-09-09 [ci skip] commit 2bd6c5dc1650e852a95961402b094ccf0909842b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-09 13:25:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-09 13:56:13 +0900 [ruby/date] Ignore warned variables To suppress warnings at the compilation time. https://github.com/ruby/date/commit/ff21132203 commit 5d815542815fe8b939239750bba7f8f0b79c97d6 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-09-08 03:06:42 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-09-08 23:20:12 +0900 [Bug #18154] Fix memory leak in String#initialize String#initialize can leak memory when called on a string that is marked with STR_NOFREE because it does not unset the STR_NOFREE flag. Notes: Merged: https://github.com/ruby/ruby/pull/4814 commit 0b9242ffacd92fe02e640efb8640041e6838cb8b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-08 18:50:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-08 18:51:49 +0900 [Misc #18153] Install debug symbol files/directories by the option commit 00fd7dac32c283d073fc85d7b48362d86035b1cb Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-08 16:03:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 16:03:25 +0900 Update bundled_gems at 2021-09-08 commit 580f340c3393a811b8018e19360937a758212d4e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 05:20:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 05:24:04 +0900 [ruby/irb] Use "csv" for test The "csv" doesn't conflict with other stdlib names in any Ruby processing system. https://github.com/ruby/irb/commit/49203a1c83 commit bc24af0f355c71ccc8e57ec95f771fa0737bd27d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 05:07:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 05:23:56 +0900 [ruby/irb] Show lib name first because it's the most common use case https://github.com/ruby/irb/commit/74d635758b commit c5e8088c7e1c67566f0c2fed0c377c4c8b1990c2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 04:51:09 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 05:23:50 +0900 [ruby/irb] Define absolute_path? by myself for backward compatibility https://github.com/ruby/irb/commit/d9c0dc043e commit 04984415a5fc59ff316830f0ddadf7ed61b765ba Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 04:42:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 05:23:45 +0900 [ruby/irb] Use gem paths to complete "require" https://github.com/ruby/irb/commit/c870b23455 commit e4eb08532942bd50125f02eac5e82c1bc87799f2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 03:27:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 03:34:51 +0900 [ruby/reline] Render scrollbar when the column of the dialog is moved https://github.com/ruby/reline/commit/5cea268e56 commit 8b6d757ba0782799e17431be4ea4d776c7c2f80b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 03:25:54 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 03:34:46 +0900 [ruby/reline] Remove variables that have no meaning in calculations https://github.com/ruby/reline/commit/3b7a1900fd commit 11a00e3fa2cdae7e65334097dc614ebe0c625e55 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 03:18:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 03:34:40 +0900 [ruby/reline] Remove garbage left behind when rerendering the right side of the dialog https://github.com/ruby/reline/commit/d89c23e30b commit 258661409e9e3fd470f006975ded872778aad4f4 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-09-08 02:01:07 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-09-08 02:01:07 +0900 Update to ruby/spec@b1e93a2 commit a375640ea561d1f7c4d2d89839007b3a973a04e0 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-09-08 02:01:03 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-09-08 02:01:03 +0900 Update to ruby/mspec@e768949 commit 95089ddaf486e6ab245aa479ef1d6da30412a8f6 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 00:40:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 01:11:13 +0900 [ruby/reline] Move only one line when render a line and then go to the next line https://github.com/ruby/reline/commit/8a966cd962 commit 6faf653ab0cd966f738b8e1d41e92f816a360959 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 00:13:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 00:13:21 +0900 [ruby/reline] The #reset_dialog should also use calculated block elem width https://github.com/ruby/reline/commit/577df401b9 commit 5a01da7a291b4c1f1d231be399712f8fb9f22bc1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 00:08:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 00:08:48 +0900 [ruby/reline] Remove debug print https://github.com/ruby/reline/commit/6f82177f2e commit b7662148510757b11c0718925ee3f02c30c6ad44 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 00:01:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 00:08:43 +0900 [ruby/reline] Calculate block elem width only once https://github.com/ruby/reline/commit/3054a67d05 commit 0ef3d574a087087077691418336372b25dbf80f3 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-08 00:00:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 00:08:38 +0900 [ruby/reline] Ensure that scrollbar is only rerendered when the position is changed https://github.com/ruby/reline/commit/f629853eae commit 3c77f00965109aeb8e5d422991eb6798c6b4a47b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-08 00:04:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 00:04:57 +0900 * 2021-09-08 [ci skip] commit 30486d91504e33c3f49776b1df135a6182de9b42 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-07 05:14:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-08 00:04:40 +0900 [ruby/reline] The width of Block Elements in Unicode is East Asian Ambiguous https://github.com/ruby/reline/commit/05e8ab8cbb commit 26153667f91f0c883f6af6b61fac2c0df5312b45 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-07 12:21:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-07 13:02:56 +0900 [ruby/pathname] Prefer omit over skip https://github.com/ruby/pathname/commit/abd0b91044 commit b4d9126e4332619644bfc9284688c1a8bd56d8ad Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-07 03:19:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-07 03:23:33 +0900 [ruby/reline] Refactor the merging key bindings to make it more readable https://github.com/ruby/reline/commit/59665a22de commit 2441bc8ea90b4e6790afb3174167103ec6a3b240 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-07 03:17:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-07 03:23:26 +0900 [ruby/reline] Change the comment about key bindings to more appropriate https://github.com/ruby/reline/commit/4364d9a386 commit 30203a6fd9814b90e84a5579d4d2da52f7e5f03a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-07 02:33:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-07 02:42:49 +0900 [ruby/reline] Use Symbol for method names https://github.com/ruby/reline/commit/479eee5393 commit cec50ec8d664c39e8858de8f3a50ccbc99ce7511 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-07 02:28:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-07 02:42:42 +0900 [ruby/reline] Remove SIG prefix because don't use it in any other signal processing https://github.com/ruby/reline/commit/37648042e8 commit f927614e55fd73e5af717381d84fbf0039d69b38 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-07 02:24:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-07 02:42:38 +0900 [ruby/reline] Use String for the value to be passed because Signal.trap also returns String https://github.com/ruby/reline/commit/b908fe4439 commit 8d9e767f1a56fae2900bcdcbccde4e4749d17743 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-07 01:59:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-07 01:59:29 +0900 * 2021-09-07 [ci skip] commit 4885a61b124967afc06a38d317225d02270d9dce Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-07 01:57:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-07 01:59:13 +0900 [ruby/reline] Rescue ArgumentError from Signal.trap(:TSTP) on Windows https://github.com/ruby/reline/commit/8da8182d1c commit e8ad881336974d1719359d7545b6b9a0efe0dc79 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-07 01:44:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-07 01:59:05 +0900 [ruby/reline] Trap TSTP to handle C-z https://github.com/ruby/reline/commit/ebbd0076b8 commit 966ed206a626ef19a5e4deaf77a6ee2a28453026 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 22:50:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 22:50:11 +0900 [ruby/reline] Limit number of chars only when completion source text (pointer == -1) https://github.com/ruby/reline/commit/1d7b603811 commit afd7d1672f199f305f3cf9c7049ae83f5396c53b Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-06 19:36:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-06 19:36:04 +0900 Removed obsoleted comment commit ecfbf1df33a1e90008baa131369c80cfa6282692 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-06 19:33:56 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-06 19:33:56 +0900 Use Test::Unit::PendedError instead of MiniTest::Skip for test-unit migration commit 544e37f184d38d52423d163b711cd626e53ff75b Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-06 19:31:24 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-06 19:31:24 +0900 Simplify conditions for CoreAssertion initialization commit 940a19e4b3ae1ce466c3bc912175b4ef7c615c53 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-06 18:34:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-06 18:34:15 +0900 Use Test::Unit::AssertionFailedError instead of MiniTest::Assertion for test-unit migration commit 8baac078bcbdbfdc70d2c5aef938ba23f44df17b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 16:11:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 16:11:50 +0900 [ruby/irb] Version 1.3.8.pre.8 https://github.com/ruby/irb/commit/9ff0b1bba0 commit 692e7147b48e105156cd1f69fb22ab23d0e4e664 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 16:11:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 16:11:45 +0900 [ruby/irb] Update dependency, reline >= 0.2.8.pre.8 https://github.com/ruby/irb/commit/79ad1f5a6d commit 3cef8869b0aedda06a94c3ab11c6d74f55356caa Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 16:09:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 16:10:22 +0900 [ruby/reline] Version 0.2.8.pre.8 https://github.com/ruby/reline/commit/967e19786d commit f8bb2d9b2724b4a74322ac82d27c32a61153e8dd Author: Kenta Murata <mrkn@users.noreply.github.com> AuthorDate: 2021-09-06 16:01:52 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-06 16:01:52 +0900 memory_view.c: Rename private to private_data for C++ (#4812) * memory_view.c: Rename private to private_data for C++ * doc/memory_view.md: Update document * Fix doc/memory_view.md Co-authored-by: Sutou Kouhei <kou@cozmixng.org> Co-authored-by: Sutou Kouhei <kou@cozmixng.org> Notes: Merged-By: mrkn <mrkn@ruby-lang.org> commit a5e323f5edb85fa1bd94bb1e67b8ef8f6827056d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-05 13:10:04 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-06 15:17:04 +0900 Schedule to update bundled_gems commit f336a3eb6c76890f3d8f878725b3d328c8fdcf33 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-09-06 14:22:24 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-09-06 14:22:24 +0900 Use free instead of xfree to free altstack The altstack memory of a thread may be free'ed even after the VM is destructed. After that, GC is no longer available, so calling xfree may lead to a segfault. This changeset uses the bare free function to free the altstack memory instead of xfree. [Bug #18126] commit 13dd07e3972fb41c8c834a46e29d34976f478fbc Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-06 11:54:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-06 13:11:29 +0900 Removed redundant tests Notes: Merged: https://github.com/ruby/ruby/pull/4811 commit a68a1b0b7d23e03f71044f6d5f9781b4913bcb08 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-06 11:54:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-06 13:11:29 +0900 Removed MiniTest::Assertion from test/rdoc Notes: Merged: https://github.com/ruby/ruby/pull/4811 commit 540eea39ddd358780a6002cbf60a37a79c27c61f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 07:03:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 08:10:08 +0900 [ruby/reline] Add a test for key bindings with Reline::Key https://github.com/ruby/reline/commit/cadbd576c7 commit 83a0807b3be32fea7ddb5f66bd40193e5981f6b9 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 07:01:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 08:10:02 +0900 [ruby/reline] Add a test for oneshot key bindings https://github.com/ruby/reline/commit/42ebea82b7 commit 14cc611133fbd01a663321fcaceae5ce5141d902 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 06:53:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 08:09:57 +0900 [ruby/reline] Rename a temporary test name to appropriate one https://github.com/ruby/reline/commit/26ebecde5c commit 168bd4f356d94eaa2de28ef29fc1e301d9768205 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 06:50:34 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 08:09:50 +0900 [ruby/reline] Add a test for Reline::Unicode#take_range https://github.com/ruby/reline/commit/af7953ff93 commit be5159c2f8c2e41b727ed2149486458b42ca4c07 Author: Filip Pyda <filip.pyda@gmail.com> AuthorDate: 2021-07-16 17:35:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 07:10:27 +0900 [ruby/irb] Pass RI options to help https://github.com/ruby/irb/commit/9b98d1afab commit 97a569c648acf489c9fd5602cc4ecc8a012bb07b Author: manga_osyo <manga.osyo@gmail.com> AuthorDate: 2021-08-25 21:56:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 07:05:52 +0900 [ruby/reline] Memoize path of `.inputrc` [Ref #319] When `ENV["HOME"] = "foo"` on irb, an exception is raised when retrieving the path of `.inputrc`. Memoize the path of `.inputrc` and don't get the path after the second time. https://github.com/ruby/reline/commit/7b90b16165 commit 2a4bacce8c3b21ad2283f3588573f37c671152d2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 06:37:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 06:39:02 +0900 [ruby/irb] Add comments for Alt+d key sequences https://github.com/ruby/irb/commit/4cb5f7e546 commit 32ff4a8c93f1e186cef94197827bb9c137f4c31d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 05:12:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:35:03 +0900 [ruby/reline] Set scrollbar color https://github.com/ruby/reline/commit/d7962e420d commit 991eb4894d4e2e130774ad51f5b0ab42b869a4b5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 04:37:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:24:41 +0900 [ruby/irb] Use multiple trap_key https://github.com/ruby/irb/commit/416abe2524 commit 348bb623314c7ed87cfd7ed22f321f89e1093a8d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 04:48:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:24:15 +0900 [ruby/reline] Cut out read_2nd_character_of_key_sequence https://github.com/ruby/reline/commit/92518d1dee commit 79652c58734be2d9d2055cbbe076e952fa7978a1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 04:20:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:24:05 +0900 [ruby/reline] Support multiple trap_key https://github.com/ruby/reline/commit/b0207fa049 commit d07060c42a7d3fd1ff9a3024e5f064448578a722 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 04:11:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:23:55 +0900 [ruby/reline] No need to use max_by when array.size == 1 https://github.com/ruby/reline/commit/7e56c8af05 commit 8913b9b742b425b7660870a20adcebb400453221 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 04:05:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:23:46 +0900 [ruby/reline] Use sort.last instead of sort.reverse.first https://github.com/ruby/reline/commit/67f1d8d2d2 commit 7de2c9a9662c26c955d6afa1bce0fc4e07dd5ff7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 04:02:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:23:36 +0900 [ruby/reline] Use combined_key if it exists when comparing Reline::Key and Integer https://github.com/ruby/reline/commit/8fca5f6f9c commit 3773296bfc45a60baf9e5cc025bfed2d6b493eaa Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 03:58:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:23:27 +0900 [ruby/reline] Allow Reline::KeyStroke to compare raw and meta-key processed key sequences https://github.com/ruby/reline/commit/731103f9c9 commit 56ab22ab3daaedcef428a3ad623010f84e9e687c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-05 23:36:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:23:18 +0900 [ruby/reline] Support for key bindings result Symbol in Reline::Key https://github.com/ruby/reline/commit/cf78a38064 commit bbb3162dd21903656344aea90c2ad47c89f695ad Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-05 23:35:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:23:11 +0900 [ruby/reline] Add Reline::Key#== as an alias to Reline::Key#match? https://github.com/ruby/reline/commit/1fc3276c01 commit 544cd3fb910ff41cdc87c70edf1d00e4f6d5b435 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-05 23:33:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:23:06 +0900 [ruby/reline] Support oneshot key bindings config for key_trap of dialog callbacks https://github.com/ruby/reline/commit/5f1141b693 commit bb6d45cfeecc8e16ec22e89ab40fb6b56177da7f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-05 23:29:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:23:01 +0900 [ruby/reline] Reline::Key supports the comparison with Integer https://github.com/ruby/reline/commit/ebc3e0f673 commit e68a5862630590caf79ac0576ba6d15135709d58 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 05:22:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:22:36 +0900 [ruby/reline] Add that Reline::Unicode.take_range is cutting based on width https://github.com/ruby/reline/commit/18405d9594 commit 1fe604a67501d5f05694266d065833e3c150d79a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-06 05:19:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 05:22:29 +0900 [ruby/reline] Add comments about optimizing chars in ASCII range of UTF-8 https://github.com/ruby/reline/commit/3c13d93486 commit f831ecd8d5516842bece52c5aeb8a5a9da8539bc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-06 01:12:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-06 01:12:13 +0900 * 2021-09-06 [ci skip] commit 6bae5ac95564c18cce9acf784b5c40e038a751a2 Author: Soutaro Matsumoto <matsumoto@soutaro.com> AuthorDate: 2021-09-06 01:11:50 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-09-06 01:11:50 +0900 Bundle RBS 1.6.0 (#4809) * Bundle RBS 1.6.0 * Specify bundled rbs commit hash to fix test ref https://github.com/ruby/rbs/pull/778 * Bundle RBS 1.6.1 Co-authored-by: Masataka Pocke Kuwabara <kuwabara@pocke.me> Notes: Merged-By: soutaro <matsumoto@soutaro.com> commit bdd6d8746f0a07b2c0cc3a6b387bf594569c0bb7 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-08-31 20:30:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-05 23:01:27 +0900 Replace RBOOL macro Notes: Merged: https://github.com/ruby/ruby/pull/4791 commit 8f752c95d20134bcc0b5394f1cea723a40f1ac8c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-05 04:54:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-05 17:43:48 +0900 [ruby/fiddle] Use test-unit gem (https://github.com/ruby/fiddle/pull/69) https://github.com/ruby/fiddle/commit/e08c4c635e Co-authored-by: Sutou Kouhei <kou@clear-code.com> Notes: Merged: https://github.com/ruby/ruby/pull/4810 commit afa33da72b35fd8e98ebd56eb24b6204c35994ce Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-24 13:15:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-05 17:31:46 +0900 [ruby/fiddle] Create extconf header for MSVC Not to include parenthesized argument. https://github.com/ruby/fiddle/commit/c2c921e16a Notes: Merged: https://github.com/ruby/ruby/pull/4810 commit 521aea9a7609d0d3b588d8dc6494d4d77052c2b1 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-05 00:33:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-05 00:33:51 +0900 * 2021-09-05 [ci skip] commit f91f82ca30206b4fc3459fa61454d43b831c9f56 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-09-05 00:33:26 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-09-05 00:33:26 +0900 Update bundled_gems commit 5f771f4f02663ed9f6b79efefe0a10f1c72a541e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 00:45:53 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-04 21:59:39 +0900 [ruby/irb] Remove commeted out code https://github.com/ruby/irb/commit/7dda1f803e commit c8bf45f23c9ef0bdd6658c05007f028971c53ad2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 16:16:38 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-04 21:57:11 +0900 [ruby/irb] Show doc at the same height as the autocompletion dialog https://github.com/ruby/irb/commit/a9db71e6bc commit f7d9dd2e4c1c0668c27093373dc08a3ede4a56f8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 20:48:05 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-04 21:55:55 +0900 [ruby/irb] Render properly if both autocomplete and show doc dialogs are left of the cursor https://github.com/ruby/irb/commit/0090203107 commit 03e9887d2e4c637a70791c65be6e496dbe190ed1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-04 07:46:41 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-04 21:40:17 +0900 [ruby/reline] Correct misalignment of scrollbar https://github.com/ruby/reline/commit/7924b4cfc6 commit ec36ceb072be5b08dbdd747443192901a1c771e9 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-04 07:29:23 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-04 21:40:12 +0900 [ruby/reline] Implement scrollbar https://github.com/ruby/reline/commit/4c7fc42151 commit ff372ed74b4cedd8252e589d2b89c59b0bd8d763 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-04 05:41:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-04 17:48:31 +0900 [ruby/irb] Suppress "assigned but unused variable" warning https://github.com/ruby/irb/commit/a1ddf64c69 commit 9ac32e87bba3a6d873b92c587a83e78051a83839 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-04 05:40:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-04 17:48:26 +0900 [ruby/irb] Add an assertion to check completion "var.method" to get correct "class.method" https://github.com/ruby/irb/commit/cc1ddb37a9 commit 6fa37d26666b1c7e009d661beb8c13fe39ce1b7f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-04 05:33:03 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-04 17:48:20 +0900 [ruby/irb] Retrieve completed receiver that is a module or class correctly https://github.com/ruby/irb/commit/b2324727e1 commit f6bc4b9b977d6bc14bba570fce2ded6c046277ac Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-04 02:22:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-04 02:32:04 +0900 [ruby/irb] Use autocomplete with show doc dialog that uses Reline::Key in tests https://github.com/ruby/irb/commit/142fc53e9c commit b7e2f7759de208b6d7b6670095c4079727164cce Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-04 02:18:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-04 02:18:54 +0900 [ruby/irb] Version 1.3.8.pre.7 https://github.com/ruby/irb/commit/02c4a8d3b6 commit 119edc459f830c784c6ab05b876e7893990ec094 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-04 02:18:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-04 02:18:50 +0900 [ruby/irb] Update dependency, reline >= 0.2.8.pre.7 https://github.com/ruby/irb/commit/39593fb4d0 commit 36afcf1e15c3af0ea21bd580e6d791fa1aab5b47 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-04 02:17:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-04 02:17:50 +0900 [ruby/reline] Version 0.2.8.pre.7 https://github.com/ruby/reline/commit/c77c3c6fae commit f445d34c254b386d8d1c0dacf06c814f00f1817e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-04 00:42:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-04 02:16:28 +0900 [ruby/reline] Show even if it's only one candidate until a perfect match https://github.com/ruby/reline/commit/fe7e34e79f commit 6fe1c0783d1ffe6edee03a95e7de94c999a6d40b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-04 00:27:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-04 00:27:42 +0900 * 2021-09-04 [ci skip] commit 3a145066a6d51cf622a9cd77d7f0942d7313fdc3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-04 00:26:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-04 00:26:39 +0900 Expand upstream issue numbers to URLs in ChangeLog commit af68112a1b8512c8d5c9823f0f71db8df1c0c6b1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-03 23:46:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-03 23:46:33 +0900 Add some punctuations as regexp separators to fix commit logs commit c60a52954378a0e28ab0c05718c81a2bb1aeb7c6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-03 20:27:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-03 22:47:58 +0900 Get rid of duplicate typedef commit 94845d01704b213e00e947e85d218a145299c1ef Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-03 20:35:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-03 20:35:29 +0900 Removed needless Gemfile in ruby repo. commit 76c7388c1f41fb0ae3dacda0d9c02e7562a6655d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-18 13:48:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 19:13:15 +0900 [ruby/rdoc] Add tests for `--template-stylesheets` option Also flattens `@options.template_stylesheets` when parsing the command lines. Fixes https://github.com/ruby/rdoc/pull/205 Fixes https://github.com/ruby/rdoc/pull/828 too https://github.com/ruby/rdoc/commit/857002a763 commit 33676a7aa6a9f10c72a811f4b6b6ad08958f2bca Author: Vít Ondruch <vondruch@redhat.com> AuthorDate: 2021-09-02 01:48:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 19:12:24 +0900 [ruby/rdoc] Try to load WEBrick for testing This is in similar vein Rake is optionally loaded in: https://github.com/ruby/rdoc/blob/5437418baf8eeb984fe7e74b181d3da1b174d0f7/test/rdoc/test_rdoc_task.rb#L3-L6 https://github.com/ruby/rdoc/commit/5f3901ae60 commit b809e5a4a98cf73f80e96c16c9a0c6f3da332dc5 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-03 16:58:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 19:10:34 +0900 [ruby/rdoc] s/minitest/test-unit/g https://github.com/ruby/rdoc/commit/73c030c7b0 commit 0a9a3799bb8421b09cc458f47590574d2d59506d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-03 16:58:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 19:10:28 +0900 [ruby/rdoc] Removed duplicated doc https://github.com/ruby/rdoc/commit/0dd36a5c35 commit 078969914d6776499a655301b3a86e904d8b27b4 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-09-03 16:57:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 19:10:20 +0900 [ruby/rdoc] minitest is not need to run rubygems test now https://github.com/ruby/rdoc/commit/27c5f946d2 commit 62fc81fe124d4de35153aad5df0dcf21dafdddc6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-03 13:39:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 17:50:00 +0900 [ruby/cgi] Use Time#strftime https://github.com/ruby/cgi/commit/caf1d0755d commit 250b86bbee0235574d7496afd548d6f97da83134 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-03 12:50:17 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-03 13:20:55 +0900 Remove unneeded comment Notes: Merged: https://github.com/ruby/ruby/pull/4803 commit 3d6a47558793ddbb280a0d046b786754cea4f263 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 03:31:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 04:28:53 +0900 [ruby/irb] Use Reline::Key for trap_key in dialog callback https://github.com/ruby/irb/commit/b05ce3c72d commit 5458f23de24352d115b85470af831ce746a7fb39 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 02:50:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 04:28:45 +0900 [ruby/irb] Add TODO comment to remove disabling autocomplete later https://github.com/ruby/irb/commit/856f001b60 commit 864b40176de37f01411fb104997a693d5c419b6a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 02:41:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 04:28:38 +0900 [ruby/irb] Disable autocomplete in yamatanooroti test https://github.com/ruby/irb/commit/cb9c9c64df commit eb92d7c732959ab03deb0ed57aa3167fedb33f84 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 01:17:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 04:28:32 +0900 [ruby/irb] Add message to show full doc https://github.com/ruby/irb/commit/6370a5d974 commit f793f682641030da81a45f5a9a0f3191f79a75c2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 01:17:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 04:28:27 +0900 [ruby/irb] Add Alt+d trap from show doc dialog to show full doc https://github.com/ruby/irb/commit/368327b082 commit 057ab5f056bb310e324a48ca0aed2ee5231bcbd2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 03:30:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 04:27:53 +0900 [ruby/reline] Emulate Unix like terminals that sends Alt+key as \e+key https://github.com/ruby/reline/commit/dc2cf90fa6 commit 9e0caba187746acb03449ea5b08334cd6b68ea0a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 03:29:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 04:27:48 +0900 [ruby/reline] Add Reline::Key#match? https://github.com/ruby/reline/commit/8f6aa3af2e commit 38ae3b8e36a6bdb39a8fa743789525ad764e064d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 01:14:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 04:27:42 +0900 [ruby/reline] Add key accessor for dialog callbacks https://github.com/ruby/reline/commit/c949e44a14 commit b4efa37d98b49d8d9efb1b79f70e99bec9160024 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 01:20:40 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-03 03:34:09 +0900 [ruby/readline-ext] Omit Editline on without tty test https://github.com/ruby/readline-ext/commit/a2835ce957 commit f3fe3511da1ca37d92464c8cc3e2c163dae16017 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 00:05:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 03:32:12 +0900 [ruby/reline] Swap the order of initialization for readability https://github.com/ruby/reline/commit/d53749b208 commit 93080111cdb96b90f66ec6913e242eef45d7b49e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 00:03:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 03:32:07 +0900 [ruby/reline] Fix autocomplete dialog width https://github.com/ruby/reline/commit/9868432687 commit 8f56629bb292911d276aee31de9bd28e4ee7d4f9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-03 01:13:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 01:13:01 +0900 * 2021-09-03 [ci skip] commit 8c067f182e74f7e0570d200ee6308ea85ab676d0 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-03 00:27:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-03 01:12:46 +0900 [ruby/reline] Autocompletion ignites when target char length is 4 or longer https://github.com/ruby/reline/commit/261830fda3 commit a95262356ef5b975f4b4b88db97dca93f451f74b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-02 21:42:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-02 23:11:33 +0900 Extract always_finite_type_p and handle flonum cases Notes: Merged: https://github.com/ruby/ruby/pull/4801 commit 682f58a93354fe4bf5a8ac83be9b1e553d41afcd Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-09-02 22:55:12 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-09-02 22:57:02 +0900 Fix typo in test name Notes: Merged: https://github.com/ruby/ruby/pull/4800 commit ed83a0104883aa634208237c86b987e75486b3d7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 22:16:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 22:17:01 +0900 [ruby/irb] Version 1.3.8.pre.6 https://github.com/ruby/irb/commit/7dc98df80b commit 1efe5cb020a6a2e5a57123adc2077e2934b3730f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 22:16:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 22:16:56 +0900 [ruby/irb] Update dependency, reline >= 0.2.8.pre.6 https://github.com/ruby/irb/commit/7896296ae2 commit a0a5bdb3aecaa267dd38021b0b75111109ce31df Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 22:14:34 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 22:16:36 +0900 [ruby/reline] Version 0.2.8.pre.6 https://github.com/ruby/reline/commit/175d5ad4c4 commit 4e40b7ddb06b4ac806c85dabf2bd094fdd4bd6d0 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 21:34:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 21:39:55 +0900 [ruby/irb] Detect the variable class to show doc https://github.com/ruby/irb/commit/33b9bec954 commit f734590f8ec9b9ac938f625eb6dd586039d287db Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 21:36:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 21:36:24 +0900 [ruby/reline] Add a space https://github.com/ruby/reline/commit/3d70e07331 commit 137fde717bfa4d1a116bf1d56c288a1f3016126c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-02 17:12:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-02 17:43:10 +0900 Make internal predicate functions to return simple boolean commit d1d76f24288993b4f004770397a05c0be8ac13b4 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-09-01 12:11:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-02 17:39:22 +0900 Refactor f_infinite_p function Notes: Merged: https://github.com/ruby/ruby/pull/4794 commit afa4b59e068e4bb327a8cbacf34fd1ebfc2b69b5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 16:54:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 17:11:21 +0900 [ruby/reline] Clear only necessary parts when dialog disappearing https://github.com/ruby/reline/commit/46ff0ff435 commit 4208cd030101c9c174af99e4ef574bbb86b325f1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 16:27:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 17:11:14 +0900 [ruby/reline] Shrink the dialog height when contents is shorter than it https://github.com/ruby/reline/commit/a18817635f commit a44d28db9f2c8d3fd82314e59b96f2e69aa16283 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 16:15:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 17:11:09 +0900 [ruby/reline] Fix a misalignment when dialog is shown on top https://github.com/ruby/reline/commit/0527b1a492 commit 123fcc8c921c6f987383429246d31934cd823661 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 16:15:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 17:11:01 +0900 [ruby/reline] Remove an unused constant https://github.com/ruby/reline/commit/44da8a6b9e commit 4852d87a81ae8b7f239787bdc18560f89dd18cab Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 04:43:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 14:07:48 +0900 [ruby/reline] Fix a crash when completing empty line https://github.com/ruby/reline/commit/8226ae7e57 commit 5f23003cc204182134af2682f1de1e8801b3f423 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 04:31:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 14:07:40 +0900 [ruby/reline] Fix a crash when completing after 2nd line https://github.com/ruby/reline/commit/f9d3480c34 commit ab63f6d8543903f177c46634f38e5428655f003b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-02 09:11:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-02 09:11:41 +0900 Refined test [Bug #18140] commit cb5a41c0a02962da838990853f5d6632d8abb92d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-02 08:47:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-02 08:47:47 +0900 Get rid of incompatible-pointer-types-discards-qualifiers warning commit 9c5ad5d42d026a1acc123e7597a4f92ef6e09e6b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-02 08:26:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-02 08:47:47 +0900 Suppress format-pedantic warnings commit 8db269edb3550a85dfab9b193ea115ca36912ced Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-01 08:58:29 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-09-02 02:58:20 +0900 Guard array when appending This prevents early collection of the array. The GC doesn't see the array on the stack when Ruby is compiled with optimizations enabled Thanks @jhaberman for the test case [ruby-core:105099] [Bug #18140] commit 0aa82b592fc3296ffde1f3fff59018a998c3ade0 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-09-01 23:42:22 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-09-02 02:42:22 +0900 Remove heap_is_swept_object function is_swept_object just calls heap_is_swept_object so remove heap_is_swept_object. Notes: Merged: https://github.com/ruby/ruby/pull/4799 commit 3c85698da2fd65d51db423e550efa5a9e6e13c0a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-02 01:36:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-02 01:39:01 +0900 Stop stale tests [Bug #9718] commit 07290523295523f0fe7df1446c7787aab0bff878 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-02 01:33:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-02 01:33:30 +0900 Test against the target class commit cd4f5b13228879d954fa97b6aa479c4a5ef4fb0a Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-09-01 08:58:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-02 01:22:19 +0900 Guard array when appending This prevents early collection of the array. The GC doesn't see the array on the stack when Ruby is compiled with optimizations enabled [ruby-core:105099] [Bug #18140] commit 73b22b3ce9994b3e674de4d5016d2d9130b0e27d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-02 00:32:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 00:32:28 +0900 * 2021-09-02 [ci skip] commit cf2faf2e3336592dbc9b94e8189f62e99cc9ae0c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-02 00:21:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-02 00:32:13 +0900 [ruby/rdoc] Move RDoc::RDoc#load_options to RDoc::Options.load_options https://github.com/ruby/rdoc/commit/ac85e01756 commit 10ebf87428fa41dcbb179f8a35428fb63dc69d5c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-09-01 18:45:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 19:28:54 +0900 Assert not to be UNDEF visibility Any defined methods, bound to any classes/modules and not being UNDEFINED_METHOD_ENTRY_P, should not be METHOD_VISI_UNDEF. commit f9bdb17c02ff012b6b9bb46463a3596b6f99f144 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-01 18:01:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-01 18:05:37 +0900 [ruby/reline] Use padding_space_with_escape_sequences to padding spaces in reset_dialog https://github.com/ruby/reline/commit/7d582f4982 commit acf11b94d2e70d5195ae7391f009a3040e6f0e24 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-01 18:00:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-01 18:05:30 +0900 [ruby/reline] Cut out a method that calcs width including the escape sequence and padding with spaces https://github.com/ruby/reline/commit/46c9d944e5 commit a669b9661eaf9623160e2f2010f24b0b9fd5f01a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-01 17:53:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-01 18:05:25 +0900 [ruby/reline] Calc width including escape sequences and padding with spaces correctly https://github.com/ruby/reline/commit/21c795e97f commit 3bd3adde7cd952046539ca5ecd21d1bcfa2fe568 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-01 17:52:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-01 18:05:20 +0900 [ruby/reline] Calc width including escape sequences and clear dialog correctly https://github.com/ruby/reline/commit/9b812d5151 commit 67eaa222cf37dd95ba0be8da3972126183868810 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-01 16:20:04 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-01 17:29:01 +0900 Add a test for Readline.readline without tty Notes: Merged: https://github.com/ruby/ruby/pull/4796 commit ba0464e0cfff4fa0ad414c912b3e304403d07226 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-09-01 16:19:31 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-09-01 17:29:01 +0900 Reline::GeneralIO should work fine without tty Notes: Merged: https://github.com/ruby/ruby/pull/4796 commit cb3df3d87b2b861ce79974cd259dafdc0d5253b8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-13 00:11:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:11 +0900 Extract compile_attrasgn from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit aac2b0fc6b6262d083c791bc333e0b1919f24b7a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-13 00:07:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:11 +0900 Extract compile_kw_arg from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit cbf841e3ed511123ba0457f3fc6b4c85ca075bd0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-13 00:03:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:11 +0900 Extract compile_errinfo from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit d7bba95eba62093b521cd112ff629f5fddb0f0f5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-12 23:59:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:10 +0900 Extract compile_dots from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit d58143f3b501bdb0859435bee7589936aa1fef82 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-12 23:55:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:10 +0900 Extract compile_colon3 from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit 70c8155d8b2987986ca42210d36c0b133e8e022e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-12 19:51:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:10 +0900 Extract compile_colon2 from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit 270a674a79a4c62c16e2f619aa3e03bb94215f37 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-12 19:36:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:09 +0900 Extract compile_match from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit a92fdc90da26be883b71e1f225034237991c5929 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-12 19:31:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:09 +0900 Extract compile_yield from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit 996489d7e08aeaf90cb44e9c1aec3ac3afccc3bd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-12 13:25:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:09 +0900 Extract compile_super from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit 6cf9f1719168dd4c07b423f419412bed5a2bbd56 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-12 12:55:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:08 +0900 Extract compile_op_log from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit d045d5f860192802b521af96309fd314156d8320 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-12 12:52:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:08 +0900 Extract compile_op_cdecl from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit 0c7ff3754029453197a87ea2e6a570c7e25f2991 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-12 12:49:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:08 +0900 Extract compile_op_asgn2 from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit 0b87b75ae9fb86cb1afe3cfe7117bb966dd5ec32 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2017-03-12 12:47:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-09-01 15:19:07 +0900 Extract compile_op_asgn1 from iseq_compile_each0 Notes: Merged: https://github.com/ruby/ruby/pull/4795 commit 8d5292f702e79ed03d21ef338210602f32948b53 Author: OKURA Masafumi <masafumi.o1988@gmail.com> AuthorDate: 2021-05-03 22:38:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-01 13:18:55 +0900 Trim extra whitespace in inaccesible error message One whitespace is already included in `inaccessible_mesg_for` macro. This extra whitespace is included since 72ff61f4a8ae7a8bf05b0bd6f91b3b290645627c Notes: Merged: https://github.com/ruby/ruby/pull/4447 commit f2ffa8896436050af679db6b5dff7b1fc35ef819 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-09-01 09:37:13 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-09-01 09:37:13 +0900 Show default argument explicitly for Rexexp#match? [ci skip] commit 45b8846bec5b8228767100fceb9389023560dfa1 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-09-01 09:24:34 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-09-01 09:24:34 +0900 Fix minor grammar issue in documentation of Regexp#match? [ci skip] commit 6095a4fec00a4272a284cb2646b95329dd86a98e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-09-01 09:16:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-09-01 09:16:16 +0900 * 2021-09-01 [ci skip] commit fe7aaa94b48645d58789979d59b093aafced7bdb Author: Stan Lo <stan001212@gmail.com> AuthorDate: 2021-09-01 01:58:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-09-01 09:15:57 +0900 Small grammar fixes Notes: Merged: https://github.com/ruby/ruby/pull/4792 commit d3155e3632b8d967c99863de993e793e52bd59c6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-31 23:18:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-31 23:20:42 +0900 [ruby/zlib] Don't print out warnings when finalizing https://github.com/ruby/zlib/commit/44a56d36e7 commit 31c427511c71f9491697cbdfc02731ad04ea57c6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-31 22:27:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-31 23:20:40 +0900 [ruby/zlib] Revert "Don't print out warnings when freeing." https://github.com/ruby/zlib/commit/931aa7a272 commit bfec03f5fe5123175f079b4112c1f2ed5f95e5ae Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-08-31 21:02:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 21:02:13 +0900 Match parens for hidden files parenthetical Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com> commit a826747ade4b6ae52ee9883120c1b1cd7aa98b3f Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-05-08 14:36:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 20:57:33 +0900 Remove unneeded comments in rational.c Notes: Merged: https://github.com/ruby/ruby/pull/4474 commit b6691e97374011dce31153295f47b617d7e2819b Author: universato <universato@gmail.com> AuthorDate: 2021-05-06 07:46:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 20:56:52 +0900 Fix a code in the Array#min documentation. Notes: Merged: https://github.com/ruby/ruby/pull/4463 commit 3ffca65047d67cd958a424ba6dcc55112cc39e0a Author: David CARLIER <devnexen@gmail.com> AuthorDate: 2021-03-23 03:58:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 20:52:49 +0900 addr2line: DragonFlyBSD build update. same code path as FreeBSD's. Notes: Merged: https://github.com/ruby/ruby/pull/4309 commit 9b188ac2385df107529a9950648f3e42ad56adc0 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 20:48:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 20:48:54 +0900 [ruby/reline] Remove one unnecessary nest for simplicity's sake https://github.com/ruby/reline/commit/f4bda85a7c commit 64373a3c58820fd7b3313f43de2a58d8516a1c95 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 19:36:26 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-31 20:35:10 +0900 Move access to dialog_render_info inside nil check commit a75f38431e7573b7cfd720816f51082fcc40d609 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 19:35:13 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-31 20:35:04 +0900 Revert "Omit some tests until debugging is complete" This reverts commit 3695d94b25f3e3e0d7a629bf1708ef421a51dd47. commit db154b20cceb2fc71390cce21fdff23f6f36f7b6 Author: jory-graham <jory.graham@shopify.com> AuthorDate: 2021-08-06 02:58:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:34:54 +0900 [ruby/psych] Replace A-Za-z with [:alpha:] https://github.com/ruby/psych/commit/8ec36494fb commit 9ed2cb26dee8ed801a75cf4b276f1ec354ade032 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-08-05 01:27:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:34:46 +0900 [ruby/psych] Add quotes to the strings "y" and "n" 'y' and 'n' are kind of ambiguous. Syck treated y and n literals in YAML documents as strings. But this is not what the YAML 1.1 spec says. YAML 1.1 says they should be treated as booleans. When we're dumping documents, we know it's a string, so adding quotes will eliminate the "ambiguity" in the emitted document Fixes https://github.com/ruby/psych/pull/443 https://github.com/ruby/psych/commit/6a1c30634e commit 0925fddc80646b9411b00e7f601aa3d9c48d66ec Author: opak <opak.alexandr@gmail.com> AuthorDate: 2021-06-01 17:11:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:34:36 +0900 [ruby/psych] Update lib/psych/scalar_scanner.rb https://github.com/ruby/psych/commit/64cc239557 Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com> commit 44353d0dee76a547629a6ab978fdaead9b5f79fb Author: Alexandr Opak <opak.alexandr@gmail.com> AuthorDate: 2021-01-29 22:10:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:34:28 +0900 [ruby/psych] add more tests https://github.com/ruby/psych/commit/8f71222bf3 commit beffa72c27c77603ecc15c60518a55bea4aad3de Author: Alexandr Opak <opak.alexandr@gmail.com> AuthorDate: 2021-01-29 21:10:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:34:21 +0900 [ruby/psych] fix typo https://github.com/ruby/psych/commit/ebb0cbded1 commit 48b50cb4febc37120a6026dc95a4a868360048eb Author: Alexandr Opak <opak.alexandr@gmail.com> AuthorDate: 2021-01-29 21:04:37 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:34:13 +0900 [ruby/psych] fix parsing integer values with '_' at the end https://github.com/ruby/psych/commit/e0bb853014 commit 31ba0921f8fe342ce317b1c9638b23756bffc9ff Author: Tomer Brisker <tbrisker@gmail.com> AuthorDate: 2020-08-08 20:46:05 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:34:06 +0900 [ruby/psych] Improve float scalar scanner Previously, `+.inf` was not handled correctly. Additionally, the regexp was checking for inf and NaN, even though these cases are handled earlier in the condition. Added a few tests to ensure handling some missing cases. https://github.com/ruby/psych/commit/6e0e7a1e9f commit d19af1675c9dcf4ccef643e831d83976f1831101 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-08-07 10:32:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:33:38 +0900 [ruby/zlib] Don't print out warnings when freeing. https://github.com/ruby/zlib/commit/098c50255d commit 41867532ac07515543e4d7e75094edeff09de743 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-31 19:07:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-31 19:07:08 +0900 No commits to pick is success [ci skip] commit f315be261502ac60b351d02f711d787b217e9c7c Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-08 03:15:18 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove dead code https://github.com/rubygems/rubygems/commit/9978b787a0 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 4bc87cb1fb9ecbd227720bd48836935996574166 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2020-07-09 06:26:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove `syck` traces from `bundler` Same reason as in the previous commit. https://github.com/rubygems/rubygems/commit/f00a6c8516 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 1e290c31f4fdfd330b9cd1d5c7fe61efa4ab066c Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-24 19:02:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Merge `Gem::UriParser` and `Gem::PrintableUri` into a `Gem::Uri` class The new class is a wrapper on top of an URI. And then, when you want credentials redacted, you call `#redacted` that returns a copy of itself, but with credentials redacted. https://github.com/rubygems/rubygems/commit/9581c2740a Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit f0c6cc14b10616a61d3113dd5a88291fe915461b Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-26 23:46:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Make sure `Gem::Command` is available before using it https://github.com/rubygems/rubygems/commit/95326f827c Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 41240ffee3a796c02d24e6ed424ec1a9a1e242d6 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-26 22:39:22 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unused require https://github.com/rubygems/rubygems/commit/2ee3e78a7a Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit e841042070357794ba9a73c685b98381f9ba6f80 Author: Keiko Kaneko <keiko.cda@gmail.com> AuthorDate: 2021-08-28 14:18:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Add missing key `branches:` ref: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestbranchestags Running jobs with only branch name, without `branches:`, CI fails https://github.com/rubygems/rubygems/commit/fcec167d61 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit ceba8668642ae9567c0952724217073462fee9a8 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-24 00:01:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unnecessary tests We will be passing string to this class so there is no need to be defensive about it. https://github.com/rubygems/rubygems/commit/30bd52a977 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 1948ac20ce5b1a84b8443d3b7438b18c6f2c89e9 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-23 23:55:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Replacing clone with dup https://github.com/rubygems/rubygems/commit/30f5b3c027 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 4715bbf7b3ab2fdc34f37a84cf004722d8ef7172 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-23 23:53:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove returning self for `Gem::PrintableUri#parse_uri` https://github.com/rubygems/rubygems/commit/25c99d7f9d Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit aa898b420676633cf36f95b8f97b10d6cac59141 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-23 22:51:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove @credential_redacted instance variable https://github.com/rubygems/rubygems/commit/c3bb52eb5c Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 7067005f2314b8c4927d53f37825941fe43a66c3 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-23 22:02:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Bring back the empty line that was removed previously by mistake https://github.com/rubygems/rubygems/commit/ffb480ca7a Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit d73dc8e937b8712878af3d744f0aec61d48c136d Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-23 22:01:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unused method https://github.com/rubygems/rubygems/commit/3a8486794e Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 6d883b33aef68c3ae9455a591c40a1ffb5836886 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-23 22:01:17 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove `ruby/uri` requirement For the purpose of this class, we need to make sure the return object by `Gem::UriParser.parse_uri` method will have the following method: - user - user= - password - password= So we can remove the the `uri` dependency and just look for the methods to exist. https://github.com/rubygems/rubygems/commit/241e093597 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 589377fbdce9d281041535e3bf63f008689bb776 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-22 19:06:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Refactor `Gem::RemoteFetcher::FetchError.build` back to its initialize method https://github.com/rubygems/rubygems/commit/21dcdd2dc5 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit a508693f06aefe30d2d83c9617541722ba6c8d66 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-22 18:55:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove defensive guards https://github.com/rubygems/rubygems/commit/dba130cd80 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit fafd9d280a4ce57c2868a866ae06ba006671bf5a Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-22 10:39:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Rename `Gem::PrintableUri#parsed_uri?` to `Gem::PrintableUri#valid_uri?` https://github.com/rubygems/rubygems/commit/a5177709c9 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit e3c319ad53026505b6920d37245b4f93e2de41fc Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-22 10:35:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove trailing `if` https://github.com/rubygems/rubygems/commit/5b6b649bba Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 3adc141a79cdab83671b7f68301901dd7726e7c4 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-22 00:40:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Refactor `Gem::RemoteFetcher::FetchError` initializer to `build` method The `initialize` method is already doing a lot and by adding the `Gem::PrintableUri` to redact sensitive information, things are getting complicated and hard to read here. For the start, I have refactored the `initialize` method into a class method called `build`. https://github.com/rubygems/rubygems/commit/4312e8fdf5 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 19e1d3cdce96b9e58a0947b6fcbabd6da06cbd11 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-22 00:37:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Using `Gem::PrintableUri` in `Gem::Request` class The `@uri` variable could be a source URI with a credential. Using `Gem::PrintableUri` to make sure we are redacting sensitive information from it when logging on verbose mode. https://github.com/rubygems/rubygems/commit/f566787211 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 31c2e6c08eccf77ec24126b9c77a910a4e543293 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-22 00:33:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Using `Gem::PrintableUri` in `Gem::Commands::InstallCommand` class The `x.source.uri` could be a source URI with a credential. Using `Gem::PrintableUri` to make sure we are redacting sensitive information from it. https://github.com/rubygems/rubygems/commit/8755ee0aaa Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit b41802421ac7e790a98ed59be67631687fc5808f Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-22 00:31:03 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Introduce `Gem::PrintableUri` that would redact URIs to be used on outputs We need to redact URI credential in several places and copy pasting the code into each part of it is not ideal. This class is responsible for parsing URI strings and redacting credential from it. Also, it will handle URI object in the same manner. We will be reusing this class whenever we need to print/display a URI to users. URI with the following format will be redacted: - Token: `http://my-secure-token@example.com` => `http://REDACTED@example.com` - Username & Password: `http://my-username:my-secure-password@example.com` => `http://my-username:REDACTED@example.com` - x-oauth-basic: `http://my-secure-token:x-oauth-basic@example.com` => `http://REDACTED:x-oauth-basic@example.com` https://github.com/rubygems/rubygems/commit/f1e45d3a89 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 14a9e24f7ea161056b56f4833fd8bbecd7718905 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-22 00:21:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Add a few tests for `Gem::UriParser.parse_uri` https://github.com/rubygems/rubygems/commit/1ea73df161 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 5f205073d2ded61348e9ea251542a5f133211f13 Author: Matt Larraz <mlarraz@users.noreply.github.com> AuthorDate: 2021-08-23 01:11:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Pass second argument to Array#split to ensure only two values returned https://github.com/rubygems/rubygems/commit/601b5553bb Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit c119dd2b5a0466ba317c2b5981c686355d7e3b6e Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-22 03:13:03 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Fix `bundle plugin install` misdetection of installed versions https://github.com/rubygems/rubygems/commit/9c88db949d Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit c044f818ca47511dceefcdddba64e4f144e8c731 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-22 00:39:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Move `Bundler.rubygems.clear_paths` to a better place Since it clears both home and path. https://github.com/rubygems/rubygems/commit/fadf5e03ea Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 8c79486e7e5682cc3a7da43050ee578a9c4b0f77 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-22 00:15:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Bundle path is already expanded https://github.com/rubygems/rubygems/commit/a296052670 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 71b937d3d7f1369a55844201f31720e815d0168c Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-21 23:52:48 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Normalize setting `GEM_PATH` https://github.com/rubygems/rubygems/commit/4188ebd568 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit d0da3a2a7f48fb912d7617f19d18f32cb5d7eb56 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-21 23:33:00 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove more unused code https://github.com/rubygems/rubygems/commit/986e889a79 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 8d32f46d0447eb8df0ca816498bb29b7beb01eea Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-21 23:05:43 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unnecessary line https://github.com/rubygems/rubygems/commit/a7023c6c21 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit f934096638ec5850b65e45dc7230900107441288 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-19 18:57:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Make plugin installation idempotent The error had not be caught be specs because `bundle install` was returning a zero exit code when plugin installation errors happened. So I fixed that issue too. https://github.com/rubygems/rubygems/commit/90cde87856 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 3a9dd795a70705d130fb856db148b068d26821c1 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-20 20:45:17 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Move some logic to a `save_plugin` method https://github.com/rubygems/rubygems/commit/9620bee2a5 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 2aed061384f68b10d8a4a973009512cb57999c63 Author: Matt Larraz <mlarraz@users.noreply.github.com> AuthorDate: 2021-08-20 05:12:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Correctly redact credentials when using x-oauth-basic https://github.com/rubygems/rubygems/commit/290b6ab078 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit f212b9d4f2eb7f94359778d0ec5f3e38f2d90461 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-19 20:57:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Refactor Ruby platform priority condition to its own method The `Gem::Platform::RUBY ? -1 : 1` has been used multiple times in different places and could be refactored to a method (DRY). https://github.com/rubygems/rubygems/commit/9d43ca8f0c Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit c71d1a26efc26309e877cd2babfec345514833cf Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-19 18:47:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Pick the last founded gems when fetching metadata https://github.com/rubygems/rubygems/commit/e3d150d822 Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net> Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 54ae3f587ed42f425edc7ec741702ac764429c5d Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2019-04-22 20:56:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Prefer `require_relative` to `require` for internal requires https://github.com/rubygems/rubygems/commit/c74fc58695 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit f6803d2411de002c00f1bacc756e412407bc61ed Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-18 18:02:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Fix `bundle check` showing duplicated gems If the lockfile contains multiple platforms, `bundle check` would show duplicated missing gems. https://github.com/rubygems/rubygems/commit/6ac5931783 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit e70419d608019a95135947d66a1603a24e3ced6d Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-18 17:28:30 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Explicitly set `allow_cached` to false when setting local mode https://github.com/rubygems/rubygems/commit/1b8139e9d3 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 3683781f53cc22b9fa507e4a2848c30086fa7897 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-18 16:58:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Restore working `bundle check` behaviour As part of a recent bug fix where bundler was accidentally hitting the network when not supposed to, I made some refactoring, and the commit I'm reverting here (https://github.com/rubygems/rubygems/commit/d74830d00bb541883377992f56818620a78930b0) was some cleanup that those refactorings allowed according to "past me". That was completely wrong, `bundle check` should never consider cached gems, only installed gems, so the code that was removed was necessary. https://github.com/rubygems/rubygems/commit/5483e98305 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 71f6711351b89330f5445cef6f0a38618627ce66 Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-08-18 01:21:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Fix some failing Bundler tests with old Git. Use the `git branch --list` rather than the `git branch -l` for better compatibility. Because the `git branch -l` is used to create a new branch in Git version < 2.20.0. https://github.com/rubygems/rubygems/commit/eac5be7d06 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 907fa88a76e6c5ea7c0610baaa8dfaf5d094e6b3 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-09 18:31:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unused file No longer used since https://github.com/rubygems/rubygems/commit/b7f6270b9e5e15591cd679f60fa8f43e6763f3f5. https://github.com/rubygems/rubygems/commit/76803894a0 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 590d2222a0f803f30f0323d51b8bcb51d6023cea Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-08 17:43:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove helper method not buying us much https://github.com/rubygems/rubygems/commit/81dc685d20 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit d01c3111c25d618ab42b0b52b620c55a9305d0e9 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-08 17:40:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove MacOS specific extra GEM_PATH They should properly configure `GEM_PATH` instead. https://github.com/rubygems/rubygems/commit/3bd9ae33ca Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit afabef5a5ab067ee34e70be54fc1b3cfcad63862 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-08 17:21:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove MacOS specific gem layout MacOS should properly configure Ruby. They should not expect us to maintain a different layout just for them. https://github.com/rubygems/rubygems/commit/ecad900925 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 717ad64f4198066ae1eedfb166e38e8f00f44705 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-08 18:45:14 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Replace StandardError with Exception We think it's unlikely that `rubygems/defaults/operating_system` could be shipped with a SyntaxError so StandardError could be better choice to prevent "false positives" errors. https://github.com/rubygems/rubygems/commit/1f73e784dd Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 34e073c0ca4a7bb0c7e07df883babeaafb03b438 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-08 18:40:05 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Reword the message For errors that could happened while loading `rubygems/defaults/operating_system` https://github.com/rubygems/rubygems/commit/6e1e2141f8 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 7d859489e181f00b9007e8e6f3d6f17a2b0e8827 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-06 19:53:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Bring `--jobs` documentation up to date https://github.com/rubygems/rubygems/commit/58da501e5d Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 890b2611547076ff70ab77eda6bfc1b8a238fec8 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-05 17:01:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] See if parallel installation on Windows works better now https://github.com/rubygems/rubygems/commit/0822e1c260 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 744e128ed98af65b6c8324a23720807659b2a8e9 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-08 16:27:47 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Exclude truffleruby from the test for failure of operating_system.rb truffleruby does not raise any error when requiring `rubygems`. https://github.com/rubygems/rubygems/commit/21e2fcd0b2 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit aafc615b4aff8b05efa14d30f0eb7c6adc5fde85 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-08 15:23:31 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Enhance error handling when loading the rubygems/defaults/operating_system file When loading `rubygems/defaults/operating_system` - we want to keep it silent if the raised exception is a LoadError - we want to print a message in other cases and ask users to report the issue to their OS support. Ruby 3 comes with special error handling for loading `rubygems` and it will show a warning when LoadError exception raised for requiring 'rubygem'. Because of that, we decided to leave the LoadError scenario as it is. Reference: https://github.com/ruby/ruby/blob/d1998d8767affe58be0bd09ec536dae9198a7fbd/gem_prelude.rb#L1-L5 https://github.com/rubygems/rubygems/commit/0a97e12fe1 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 9fa5c4cd0721f720282dfc9efe5657b136c7e99b Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-06 19:21:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Also load user installed rubygems plugins https://github.com/rubygems/rubygems/commit/82960c262f Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 21db5876caeb8f67dfef6f9010e4ab7639d39c1b Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-06 18:20:31 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Respect `BUNDLE_USER_HOME` for global config location https://github.com/rubygems/rubygems/commit/58fc31442f Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit ea16a0df80c950861e180aa7a025f527ff2713d0 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-06 18:18:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Disable `RUBYGEMS_GEMDEPS` for bundler spec run Running `bundler` specs using `bundler` is not supported. https://github.com/rubygems/rubygems/commit/cc97b6773d Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 5aee962fe37a5323e7a844b09f395a440d605872 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-06 17:31:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove `RUBYGEMS_GEMDEPS` warning When setting the `RUBYGEMS_GEMDEPS` environment variable to allow skipping `bundle exec`, `bundler` will print a warning about potential incompatibility. Initially the `RUBYGEMS_GEMDEPS` variable used a completely different (re)implementation of `bundler` functionality. That implementation was not battle tested and could potentially differ in behaviour from what `bundler` does. That's why print a warning. However, these days, all `rubygems` does when `RUBYGEMS_GEMDEPS` is set is to require `bundler/setup`, so there's no risk of any incompatibility, since that's just plain `bundler`. https://github.com/rubygems/rubygems/commit/bbddc27016 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit ab1edc75f8afb9e147158a7b20743aaea92ce96e Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-05 16:53:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Expect the right permissions on Windows Given Windows doesn't have executable bit. https://github.com/rubygems/rubygems/commit/35dc3fa845 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 2d0d1c339a23a40d274fb78c70b77b97e9c40ba0 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-04-13 20:03:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Recommend `bundle install` rather than `gem install -g` https://github.com/rubygems/rubygems/commit/4028cbc408 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 76b77d92757affbc75b393b3a10c6815d69fd34d Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2019-10-31 00:51:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Refactor reseting `RUBYGEMS_GEMDEPS` in tests https://github.com/rubygems/rubygems/commit/91dca11112 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 43aecf216e5ce323d307a94c987c836f40730ba5 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-04 17:59:50 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Get a CI matrix configured in default Github Actions generated config Even if it only has one entry at the moment, it makes it easier to add new entries by doing it this way. https://github.com/rubygems/rubygems/commit/46232fe265 Co-authored-by: NeimadTL <damientalbot26@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 2e30d9ab427e71d2c27d5873abbe7320d456d066 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-04 17:56:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Avoid double CI runs in default Github Actions generated config Otherwise CI will run once for every pull request update and once for every push. The disavantage is that people working on a non default branch without creating pull requests won't get CI run at all. I think the advantages are greater than the disadvantages, it's also my personal workflow, and it's something desired enough so that someone opened an issue about it. So let's do it! https://github.com/rubygems/rubygems/commit/924d916a73 Co-authored-by: NeimadTL <damientalbot26@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 553ee573d45d4e81407266705c3006d31f92d73d Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2019-10-30 00:57:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Don't use gemdeps on bundler binstub https://github.com/rubygems/rubygems/commit/320fdc1513 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 1663dd5f73c514343937cc018f5371dbffdeed99 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-04-13 19:13:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Simplify rescue of bundler errors As far as I understand, this block should only be run when `bundler/setup` fails. The only other case where these errors could be run is when bundler itself is required. If bundler itself fails to be required or activated (like in old rubies where it was not a default gem, for example), the raw error is much more helpful than this message. So we can move the rescue after bundler is successfully required, and that simplifies the list of exceptions that we need to track to just `Bundler::Error`. https://github.com/rubygems/rubygems/commit/3663c11e93 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 0aa9eb9eed9e0cb38c7e1c1fcd37061bdfc385b7 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-04-13 18:58:56 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Move list of exceptions to the `rescue` clause Instead of having to match classes and re-raise in the exception body. https://github.com/rubygems/rubygems/commit/5edf74b781 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 87dfb55c164b46d8f5c7968e20e4d03fe8831799 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2019-10-29 03:11:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Use `Gem.use_gemdeps` only from binstubs The previous behavior was to automatically require `bundler/setup` everytime `rubygems` was required, which I think was too much. https://github.com/rubygems/rubygems/commit/b25379a295 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit a3b3fdc3cdff57a6ec6da703841b75a41edbe42c Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-04 15:43:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Take advantage of `target` being a `Pathname` https://github.com/rubygems/rubygems/commit/c31b8cd232 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 8adc606271210acad490e93c47c3e1501407fb27 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-04 15:40:56 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Fix git repo initialization on a path with spaces https://github.com/rubygems/rubygems/commit/a2d6e10192 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit b6c082fd0951d22bc63582283d19f7c970829628 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2019-10-29 02:52:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove misleading comment When I read, I thought the assertion was incorrect. It's doing the right thing, though. https://github.com/rubygems/rubygems/commit/e72c27367a Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit d9ecc97f33a7b94a6dfb6264663e77d0fa2c13b3 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2019-10-29 02:51:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove bad TODO The commented out code causes failing tests because it's not correct. https://github.com/rubygems/rubygems/commit/38f0eca91a Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 19d77a1cfc8efa1d03083689f7de78a52ef05be6 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2019-10-29 02:08:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unnecessary spec manipulation https://github.com/rubygems/rubygems/commit/c7c00c280f Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 199083dd158c993998412d28d15df01e128e3981 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-04 15:36:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Simplify overkill usage of shared examples https://github.com/rubygems/rubygems/commit/36a00144b9 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 10dcd0eb5b848ffb8e5f0e830f5f8ad014a49e05 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-03 19:18:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Deprecate `bundle exec --no-keep-file-descriptors` https://github.com/rubygems/rubygems/commit/591466d512 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 8c1b31f7b33304f70948f81c22c14e26e1b9f61f Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-03 18:33:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Don't warn default behaviour https://github.com/rubygems/rubygems/commit/ed845d861c Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 58635d4ff75edfb98358f5c80ed9e798758358d0 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-08-03 18:32:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Keep file descriptors by default https://github.com/rubygems/rubygems/commit/88b7a3e7e2 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 9fc16a31d9a0800b46ae547acb7115a9c58f6c9f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-20 18:48:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Exclude gemspec file itself from gem The processed YML data is included as metadata, the source gemspec file is unused and just confusing. https://github.com/rubygems/rubygems/commit/f444478eac Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit d7c734a27e816992b592ebc586856a8a23b144fe Author: Tim Sutton <tim@synthist.net> AuthorDate: 2021-08-01 11:25:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] typos in UI messages: fix a couple missing spaces between sentence breaks https://github.com/rubygems/rubygems/commit/5cdda53382 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 97de4c02adf2c32c801eec5a683ae7d0c6dd6615 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-31 23:39:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove now unnecessary code https://github.com/rubygems/rubygems/commit/d74830d00b Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 0e01ad881a94d0195dcea36783f0bb525d054e7a Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-31 22:39:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] The `--local` flag to `bundle install` shouldn't hit the network If the cache was missing, `bundler` would try to re-fetch it. With the `--local` flag, it should just look at installed gems. https://github.com/rubygems/rubygems/commit/630d29c69e Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 7116ec6199ea55756154167676bb0c8296f8a391 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-31 22:05:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Requiring `bundler/setup` shouldn't try to hit the network https://github.com/rubygems/rubygems/commit/06f5efce02 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 0b4dbe2e6a0a0b27860fb6a509ff0429ece436c7 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-31 21:10:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Improve "gem not found in source" errors When printing sources inside these error messages, it's useful to only consider the current state of the source. For example, when requiring `bundler/setup`, the source shouldn't be configured to be able to hit the network, so the error message should only mention "locally installed gems" to make that more clear. https://github.com/rubygems/rubygems/commit/30eb14f853 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 2e850e0038e8ba9a5dd3266e9f0f6b2821f19084 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-31 20:21:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Only set local variable in the branch using it https://github.com/rubygems/rubygems/commit/9fd39bd5a3 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit b351cebab209217649ca2a607181709d61b9ffcc Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-31 20:33:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Simplify error message building in resolver Since all requirements have an explicit source now (even if it's the default source). https://github.com/rubygems/rubygems/commit/2c341cfc22 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit b17cdad2f803520ed472605cc8ef7a5350f095f7 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-31 19:57:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove redundant part of error message It doesn't really add much, in my opinion. We want to be helpful, but also concise when possible. https://github.com/rubygems/rubygems/commit/9d56009cf7 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit f1c072912813f9fc226e819f9c3a770869d005c7 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-28 02:43:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Fix standalone generated script to deal with path sources In the case of path sources, the path the source is pointing to should be added directly to the `$LOAD_PATH` without any modifications. https://github.com/rubygems/rubygems/commit/d3bba936f0 Co-authored-by: Daniel Niknam <mhmd.niknam@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 7465b94f8a4c2849498bf36b98be8da99c0504c2 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-30 19:42:18 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unnecessary `ruby_version` local variable Under some case, this variable might not end up being used, in which case running the script would print unused variable warnings. https://github.com/rubygems/rubygems/commit/bf96030362 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 7566c85cc02b464e74860b01905e5d70136d77e5 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-30 19:40:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Use same criteria for ruby engine as in the final script https://github.com/rubygems/rubygems/commit/fcb8c3d188 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 3aa087d5335112268b2d1bc4b0690ca62de732bc Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-30 19:39:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unnecessary `ruby_engine` local variable Under some case, this variable might not end up being used, in which case running the script would print unused variable warnings. https://github.com/rubygems/rubygems/commit/a2d6392ada Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 1d6551a02da866dc82866736cb216ce22dbd39d0 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-30 19:27:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unnecessary `path` local variable We can use `__dir__` directly. https://github.com/rubygems/rubygems/commit/0e6083ca94 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 97c0d3fead87316c127235f91535068ce60d0fa2 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-28 02:01:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Fix unnecessary $LOAD_PATH modification in standalone script Due to the `bundler` gem itself being ignored from `$LOAD_PATHS`, a `nil` value is being introduced here, resulting in the current folder being added to the `$LOAD_PATH` by the standalone script. I'm pretty sure this is unintentional. https://github.com/rubygems/rubygems/commit/df54b07b5e Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 23c27d2c7b10431ab806d25a7ea4ff5fc87691d3 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-30 18:48:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Don't sort materialized specs when not necessary This should fix a weird flaky spec failure, given that the code producing the error will be no longer run. https://github.com/rubygems/rubygems/commit/a171965409 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 0ab160e2e0b959054c28b06f1ada3f015c9f3bc3 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-30 17:30:24 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Respect `BUNDLE_USER_CONFIG` if set https://github.com/rubygems/rubygems/commit/f28ab141af Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit d37c2441ccd7dcdcedc317065c0f8141f9a66714 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-25 01:17:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] We can now avoid source materialization work No need to fill up missing names from sources anymore since they should now be properly set up correctly from the beginning. https://github.com/rubygems/rubygems/commit/706fd28681 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 1b9b41472f0e7b9aac429dc8f95e778a3fce174d Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-25 01:16:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Completely avoid replacing sources when in multisource compatibility mode Since this mode is only enabled in frozen mode, it's fine to use the lockfile and means we don't have to "prepare" the replacement for materialization. https://github.com/rubygems/rubygems/commit/dda01b288e Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit c2f376bcc006c3602ffd005fa1cb3cdf5c9d97fa Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-25 23:23:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Fix standalone install of default gems Rubygems source replacement was broken. https://github.com/rubygems/rubygems/commit/3549c122f6 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 9e7249da4e954088b5a3701a034e4ecd003cef43 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-25 23:22:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] This spec can pass now on ruby 3 TSort was released as a library so we can install it, and also other gems that are loaded by the spec. Also, Ruby on Windows apparently loads fiddle 1.0.6, so we need to also install that to make that not fail. https://github.com/rubygems/rubygems/commit/2b8dcab99e Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 579dbe6ecb7e399002faa4efe648b588a40cd775 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-25 23:12:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unnecessary test repository These gems are built and installed to system directly as default gems. There's no need to also build a remote repo. https://github.com/rubygems/rubygems/commit/ad9dad4c22 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 570167eaa9084cec3b11fd3eca64955795835283 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-26 22:49:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Give a `bundle install` hint when `bundle list` fails https://github.com/rubygems/rubygems/commit/98f5087e34 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 81c06437629da422a7b6701a140b040af430b832 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-26 22:21:18 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unnecessary escape sequences Bundler formatters already take care of this. https://github.com/rubygems/rubygems/commit/c24415fdd5 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit fe47ac213bc43747004779dd966790592d0ab309 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-26 22:20:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unnecessary exception If we have succeeded to materialize the bundle, all specs should be loaded. https://github.com/rubygems/rubygems/commit/bd3712d824 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 9a25a98c6b43ef32a8d2e36ef9fa4f5b00ad283c Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-24 06:49:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Show all missing gems when using a bundle before installing it Not only the first one that's missing. This also allows us to simplify things. https://github.com/rubygems/rubygems/commit/69718a9509 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit d298ef40f252165f76bfd8c677e1aa907e4c0007 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-24 06:06:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Small refactor by DRYing up some logic https://github.com/rubygems/rubygems/commit/c7e3c092e1 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit 8116b7fef7ccef49eda3d1258121bbf343daf12a Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-24 04:32:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Move rescue block around the code that can raise it https://github.com/rubygems/rubygems/commit/310937a546 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit c6e5267a77871cba26152a00dcbaa05c1544bd13 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-24 05:01:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Remove unnecessary check This error can only be raised when loading the cache, and we only load the cache if this condition is met. https://github.com/rubygems/rubygems/commit/86d692edb8 Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit dd22549e0712479905dae246fef0a5349ef002c4 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-24 04:26:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 19:06:14 +0900 [rubygems/rubygems] Let original exception be re-raised https://github.com/rubygems/rubygems/commit/a669401a5a Notes: Merged: https://github.com/ruby/ruby/pull/4789 commit defdfa020a5e30da132280f2ec16eb87d62cfc73 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-31 19:00:04 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-31 19:00:17 +0900 Exit with the syncing status [ci skip] commit 3695d94b25f3e3e0d7a629bf1708ef421a51dd47 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 16:21:40 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-31 16:21:40 +0900 Omit some tests until debugging is complete commit f781e537b537fcb02e266d55f636850c7e681299 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-31 11:41:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-31 15:27:02 +0900 Remove no longer used variable line_node commit d23264d35932f7154922017b2701ce3bdb8fec8b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-31 11:39:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-31 15:27:02 +0900 Extract compile_block from iseq_compile_each0 And constify `node` argument of `iseq_compile_each0`. commit 80309800f1fa752cc3ac695a8cea6a43f1b638f4 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 15:23:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 15:23:54 +0900 [ruby/irb] Version 1.3.8.pre.5 https://github.com/ruby/irb/commit/968422799c commit a512496b3ff9d7e52418ce35bbf610e1ef723fb6 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 15:22:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 15:23:47 +0900 [ruby/irb] Update dependency, reline >= 0.2.8.pre.5 https://github.com/ruby/irb/commit/657bd3fd12 commit 8273e95753a2b8ff96fecbe57afa81df6a34dfcb Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 15:22:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 15:22:05 +0900 [ruby/reline] Version 0.2.8.pre.5 https://github.com/ruby/reline/commit/79b7d80fee commit 817694481c7ea3436b71809305e9b5ecafdf6eb5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 15:15:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 15:20:34 +0900 [ruby/irb] Set the dialog width to render with a fixed width https://github.com/ruby/irb/commit/80c4329643 commit 077bc98ce42be3c22da1087ef9774065277612f9 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 15:14:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 15:20:27 +0900 [ruby/irb] Follow that Dialog#contents_width has been renamed to #width https://github.com/ruby/irb/commit/49a73d929e commit a8e6a850d571ea798ea52753f6b3252c33dd1270 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 14:06:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 15:20:22 +0900 [ruby/irb] Make show doc dialog appears on the left at the right edge https://github.com/ruby/irb/commit/6480eddd31 commit cf0ece810a72157437a76679bf22f7856afc16ca Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 05:50:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 15:20:17 +0900 [ruby/irb] Rename a variable "dialog" with "autocomplete_dialog" Because it's just used to receive data from the autocomplete dialog, not for show doc dialog. https://github.com/ruby/irb/commit/f8b752bd98 commit 7afb5b8b95c7eadb5e776590566d0430d62e62f9 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 15:11:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 15:19:44 +0900 [ruby/reline] Use Reline::Unicode.take_range to divide exactly by width https://github.com/ruby/reline/commit/de1ad93f44 commit 4f5166e790d1154447deaaf42ed1cdd647dd6bcf Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 15:09:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 15:19:37 +0900 [ruby/reline] Check if dialog_render_info is nil or not https://github.com/ruby/reline/commit/e2b87fe831 commit c8a07a1231361f41963960d5acb129808f6d1c98 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 15:09:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 15:19:32 +0900 [ruby/reline] Fix Reline::Unicode.take_range as it was not fully functional https://github.com/ruby/reline/commit/5da6a8d851 commit 7fae57dbb45703c5d0695dc501cf7dca3c7c40a5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 06:40:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 15:19:25 +0900 [ruby/reline] Use dynamic contents width https://github.com/ruby/reline/commit/f0e54f239b commit 2dd26bed86f721ed1982d00c3a0bd5ed37568e96 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-06-21 11:33:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-31 11:53:41 +0900 [Feature #16972] Add mode: option to Pathname#mkpath commit 181207e830cc8fb0fac78e9bcd4163c25831c600 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-31 00:47:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-31 10:21:22 +0900 Constify line_node in iseq_compile_each0 commit a598730e79345e4f8cac6c6e26cf0572b1610e3c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 05:45:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:45:02 +0900 [ruby/reline] Remove an unused variable https://github.com/ruby/reline/commit/0ae7d8b336 commit 4a174b7c55e5c774cc8c895aa0233444ddcd945e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 05:30:09 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:30:09 +0900 [ruby/irb] Version 1.3.8.pre.4 https://github.com/ruby/irb/commit/61fe6cfa43 commit 96131c5ae9554e04af7ead5fc4d899036c7e0a64 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 05:29:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:30:04 +0900 [ruby/irb] Update dependency, reline >= 0.2.8.pre.4 https://github.com/ruby/irb/commit/24315382d0 commit bb2b5052f52ec4885df744d08cc2b535a3240582 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 05:28:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:28:17 +0900 [ruby/reline] Version 0.2.8.pre.4 https://github.com/ruby/reline/commit/059d39b090 commit c98b2e14c71022ca46999a26fbde9668440c4347 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 04:23:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:26:53 +0900 [ruby/reline] Pass "dialog" to context to get "dialog.scroll_top" later https://github.com/ruby/reline/commit/d81f29a134 commit 32abd3801482d9bc9388a1e901b2cbd31435cb99 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 04:14:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:26:45 +0900 [ruby/reline] Autocompletion dialog height 15 https://github.com/ruby/reline/commit/7e18716754 commit 81d40b5b7e7951ed1d5e013f1e0b2e9413c6dc0f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 04:14:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:26:39 +0900 [ruby/reline] Scroll autocompletion pointer in dialog correctly https://github.com/ruby/reline/commit/dc79ed2dd8 commit 282f7ce8961b7493f46c48ef74b16fd9c7f2a158 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 01:56:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:26:33 +0900 [ruby/reline] Use DialogRenderInfo struct https://github.com/ruby/reline/commit/ac6f652a39 commit 0c09418fff2900d8e878f3ad92469a060d159667 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 01:13:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:26:28 +0900 [ruby/reline] Fix dialog rendering at the bottom edge https://github.com/ruby/reline/commit/860be91bd7 commit 203f46ceef555b6c9f0dd53bbf53e0d08e8b9766 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-31 05:25:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:25:18 +0900 * 2021-08-31 [ci skip] commit c63d98b40135a6e4605d35a0fb014c2f3143e38f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 04:25:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:24:55 +0900 [ruby/irb] Use DialogRenderInfo https://github.com/ruby/irb/commit/5bc3a72ca3 commit b30be9f22231883b3cb32dac915d967c0fc9220f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 04:27:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:24:45 +0900 [ruby/irb] Take dialog to get scroll_top https://github.com/ruby/irb/commit/7209082a11 commit 16cf2ef6f2ad61fbbf613f87c9038f3a6af4fc15 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-31 04:26:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-31 05:24:36 +0900 [ruby/irb] Don't show doc when pointer is negative https://github.com/ruby/irb/commit/48af34bfc2 commit 83a744dd8c0d6e769258b734b9f6861a22eeb554 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-30 13:53:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-30 17:15:57 +0900 Unify configure steps commit 51070ee5c4e83a4faa0feb72f08d1d9fef18b016 Author: schneems <richard.schneeman+foo@gmail.com> AuthorDate: 2020-10-23 23:34:18 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-30 15:18:11 +0900 Faster Pathname FileUtils methods Currently when calling any of the "FileUtils" methods on pathname `require` is called every time even though that library might already be loaded. This is slow: We can speed it up by either checking first if the constant is already defined, or by using autoload. Using defined speeds up the action by about 300x and using autoload is about twice as fast as that (600x faster than current require method). I'm proposing we use autoload: ```ruby require 'benchmark/ips' Benchmark.ips do |x| autoload(:FileUtils, "fileutils") x.report("require") { require 'fileutils' } x.report("defined") { require 'fileutils' unless defined?(FileUtils) } x.report("autoload") { FileUtils } x.compare! end # Warming up -------------------------------------- # require 3.624k i/100ms # defined 1.465M i/100ms # autoload 2.320M i/100ms # Calculating ------------------------------------- # require 36.282k (± 2.4%) i/s - 184.824k in 5.097153s # defined 14.539M (± 2.0%) i/s - 73.260M in 5.041161s # autoload 23.100M (± 1.9%) i/s - 115.993M in 5.023271s # Comparison: # autoload: 23099779.2 i/s # defined: 14538544.9 i/s - 1.59x (± 0.00) slower # require: 36282.3 i/s - 636.67x (± 0.00) slower ``` Because this autoload is scoped to Pathname it will not change the behavior of existing programs that are not expecting FileUtils to be loaded yet: ``` ruby -rpathname -e "class Pathname; autoload(:FileUtils, 'fileutils'); end; puts FileUtils.exist?" Traceback (most recent call last): -e:1:in `<main>': uninitialized constant FileUtils (NameError) ``` Notes: Merged: https://github.com/ruby/ruby/pull/3693 commit 465bd972ec2149be000dad9125bb8f4ab6762699 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-30 13:20:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-30 13:33:52 +0900 [DOC] Move rdoc of Integer#abs to numeric.rb [ci skip] commit 66a4768f65423189e61d39a473a031a5eb0253ea Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-30 13:11:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 13:16:46 +0900 [ruby/irb] Relax backtrace nest levels https://github.com/ruby/irb/commit/fb637bc68f commit b17dc550176385e34404672f4188af471e62c676 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-31 19:10:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 12:39:37 +0900 [ruby/irb] Added the extra stdout message with test-unit https://github.com/ruby/irb/commit/b153d587a1 commit f3ae14cbdeb06bcaf4745bb5d5253b8c62ddb102 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-31 14:57:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 12:39:31 +0900 [ruby/irb] Use capture_output instead of capture_io https://github.com/ruby/irb/commit/077e4ae7de commit 598f4f42196a51d922f539fa885173c39312b427 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-31 14:56:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 12:39:23 +0900 [ruby/irb] Use pend instead of skip https://github.com/ruby/irb/commit/f441ce35bf commit be9cc6c75865b24652d001f0f34f2e63180418c6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-30 12:03:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-30 12:03:44 +0900 Fix rubyspec_capiext dependency and flags - The file needed to link may be the import library. - Remove duplicate flags. commit 7379a493bdf9b0f67b5db3471075473dfcf2ce2c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 12:00:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 12:00:35 +0900 [ruby/irb] Version 1.3.8.pre.3 https://github.com/ruby/irb/commit/a1fc68abaa commit aeec02d7f321916ca80ccc8361ccb82fdc779515 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 11:52:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 11:58:56 +0900 [ruby/irb] [].name to display the doc for Array.name https://github.com/ruby/irb/commit/7c2abc14d8 commit 1e2f10e8aa88d77ef9882aafd1c4dc7b28c8df36 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 11:51:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 11:58:51 +0900 [ruby/irb] Rescue unknown error to quash crashing https://github.com/ruby/irb/commit/92cce941cb commit 26e74c6b1f1e53aea7d1c431b91cab4d87185f78 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-30 09:06:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-30 09:06:36 +0900 Suppress redefinition warnings of GET_SELF() commit 2d93b523e11131375758f9a5454e12e4eb6926c7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 03:00:02 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-30 03:00:02 +0900 Add irb section to tool/sync_default_gems.rb commit ece4ed0da715218168e264aa7067113d48d38a3d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 02:08:16 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-30 02:45:13 +0900 Add --autocomplete / --noautocomplete options commit b6b2b767ed50cb29d7abb96ab9dcee552cc0470a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 02:26:06 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-30 02:37:23 +0900 [ruby/reline] Version 0.2.8.pre.3 https://github.com/ruby/reline/commit/6e0ea3362a commit 8750e1ada879fdb25fbea63fe5fd5f575b1a5ae7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 02:24:42 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-30 02:37:23 +0900 [ruby/reline] Fix Reline.autocompletion=() interface https://github.com/ruby/reline/commit/71c2eb143d commit e1ee7f9cedede6bacecf6ec517c4705f00c1c025 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 02:15:47 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-30 02:37:23 +0900 [ruby/reline] Version 0.2.8.pre.2 https://github.com/ruby/reline/commit/5e3ea74891 commit 62555d7ae602878fc0bf25a0847936df4620a144 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 01:49:41 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-30 02:37:23 +0900 [ruby/reline] Set autocompletion is false by default For compatibility with ext/readline. https://github.com/ruby/reline/commit/13d9b936bc commit 24a26db795e39bde48904088982cfc5e793b3b10 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 01:40:19 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-30 02:37:23 +0900 [ruby/reline] Disable autocompletion in tests https://github.com/ruby/reline/commit/9b1913567a commit 3a2e2a684824c8c60badd78bc30f1205ead2938c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 01:40:06 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-30 02:37:23 +0900 [ruby/reline] Add Reline.autocompletion=() interface https://github.com/ruby/reline/commit/a2e69f6277 commit 935bb4c6173c7868e176e7ba73ea45a0688b124d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 01:23:57 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-30 02:37:23 +0900 [ruby/reline] Add autocompletion on emacs mode by Tab / S-Tab https://github.com/ruby/reline/commit/22d0b4e5d8 commit 11b825076b145fec5a27ce1ed0e8e412bd4d857a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 01:23:20 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-30 02:37:23 +0900 [ruby/reline] Add config.autocompletion https://github.com/ruby/reline/commit/3d918e4ccb commit 60eb328d42b76b09e7e963306d627f8e77890e9f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 02:34:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 02:34:18 +0900 [ruby/irb] Version 1.3.8.pre.2 https://github.com/ruby/irb/commit/ff111173fd commit b35eff27dde1d247ecfccf842c1e7062953e154e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 02:29:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 02:33:34 +0900 [ruby/irb] Update dependency, reline >= 0.2.8.pre.3 https://github.com/ruby/irb/commit/2f1d989d7c commit 3bbe860e50ad3813791aa6c14952d00118b5d492 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 02:29:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 02:33:29 +0900 [ruby/irb] Remove path settings for debugging https://github.com/ruby/irb/commit/48029944a5 commit 4750dfa6db03db4e082279c20e0f7d9afcc79669 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-30 02:18:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 02:33:21 +0900 [ruby/irb] Update dependency to "reline >= 0.2.7.pre.2" for Reline.autocomplete=() https://github.com/ruby/irb/commit/66178f34b9 commit a40f9c4a51ae342efaa6aafba607c44ef1ebfac4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-30 01:25:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-30 01:30:13 +0900 Fix empty values to booleans commit 9f9ea283754ddc9b4deb2ba1863c40d28d5acfa9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-30 00:51:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-30 00:52:16 +0900 Fix dllimport attribute commit 806786ff201fe1d6502bfb7b27e1f5f4b6cd78f2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-30 00:18:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-30 00:18:56 +0900 * 2021-08-30 [ci skip] commit 9227989343dc021904fdc224d5fef70e078a2927 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-30 00:18:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-30 00:18:16 +0900 Use proper suffix commit 2d98593bf54a37397c6e4886ccc7e3654c2eaf85 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-08-24 07:22:14 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-08-29 23:23:39 +0900 Support tracing of attr_reader and attr_writer In vm_call_method_each_type, check for c_call and c_return events before dispatching to vm_call_ivar and vm_call_attrset. With this approach, the call cache will still dispatch directly to those functions, so this change will only decrease performance for the first (uncached) call, and even then, the performance decrease is very minimal. This approach requires that we clear the call caches when tracing is enabled or disabled. The approach currently switches all vm_call_ivar and vm_call_attrset call caches to vm_call_general any time tracing is enabled or disabled. So it could theoretically result in a slowdown for code that constantly enables or disables tracing. This approach does not handle targeted tracepoints, but from my testing, c_call and c_return events are not supported for targeted tracepoints, so that shouldn't matter. This includes a benchmark showing the performance decrease is minimal if detectable at all. Fixes [Bug #16383] Fixes [Bug #10470] Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4767 commit 5f7c2291d6b3ba890d62c7e3a686202dffb14759 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-29 20:32:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-29 20:33:21 +0900 [ruby/irb] Version 1.3.8.pre.1 https://github.com/ruby/irb/commit/9f82ae66fc commit 8876710f2a7b06fb872284ae84857c8a3f45de54 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-29 20:13:08 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Version 0.2.8.pre.1 https://github.com/ruby/reline/commit/2668715509 commit 7857a1ab661f44d7f51a0c636abf0ff953d2e8e8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-29 20:01:33 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Make autocomplete dialog is registered first https://github.com/ruby/reline/commit/d027dbe118 commit 535a1cc71c1616483e4c0747d99287bdfc5ede96 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-29 19:53:46 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Delete show doc dialog to move it to IRB https://github.com/ruby/reline/commit/640102fe27 commit 74ba5328833b2033128425995b03cce4cd7a3505 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-29 19:49:21 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Remove an unnecessary variable https://github.com/ruby/reline/commit/3b8cc5ce0a commit 3248c42592426e638efa842980846e5342d6c78c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-29 19:48:57 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Remove dialog_proc_list accessor of Reline https://github.com/ruby/reline/commit/ac8fa84f4d commit 32124de17ef724da1e73daac4a802f2577c6010e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-29 19:30:17 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Move constants of dialogs to under Reline https://github.com/ruby/reline/commit/9100ea2934 commit 29586ec9f3836afbfd9a48c30782fd178045e0c3 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-29 19:27:04 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Use default dialog context to communicate others https://github.com/ruby/reline/commit/5e67e6ffe0 commit b023ef85947530e256f12c8a7809d79a5639414d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-28 02:37:30 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Clear dialog by C-c https://github.com/ruby/reline/commit/f66a079c85 commit d41d41da382bd76fc99f62ed12ddd2c8e688b0e0 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-28 02:29:35 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Clear completion journey data when finished https://github.com/ruby/reline/commit/03716a411e commit 6273b9bb6207901fcd5fc6c0cb5ec97dbf0bc139 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-28 02:25:57 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Use colored doc output with ANSI escape sequence https://github.com/ruby/reline/commit/7d1c75b43f commit 3d757ba1b6acc624c56704d90747cb2814c22119 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-28 02:15:27 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Suppress crashes on nil https://github.com/ruby/reline/commit/b5f62c366b commit acd15a39d23e59b7f6434de462010d137a442a36 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-28 02:10:51 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Support custom bg color https://github.com/ruby/reline/commit/cd0cbf53d5 commit 7ea46c1ef25ef04f7714c59a0ee5a8eb27d1728a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-28 02:03:52 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Fix tests so that the completion journey starts on first C-n/C-p https://github.com/ruby/reline/commit/52a40f2cd3 commit 78f46e65767563f0ec0dc6564901dcd7e99dc044 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-28 01:53:43 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Show method or class doc correctly https://github.com/ruby/reline/commit/a505294f12 commit 7e8a6270525f4ea944e8b3b3c3014a48bdb5a734 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-27 21:35:42 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Implement doc display dialog in conjunction with autocomplete https://github.com/ruby/reline/commit/e97bbc4ccf commit 4cd344c958a0886fc02238f7f397188dbfca27bd Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-27 21:33:22 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Add the ability to handle context between dialogs https://github.com/ruby/reline/commit/063d9c70d9 commit 8d4370b066fd9ff7e6f6c9ee0c5035ad5c81050e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-27 14:58:05 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Support for multiple dialog rendering https://github.com/ruby/reline/commit/f589fab718 commit acffb0b0683decd2e99ab7414f9c73fb3e135d2c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-27 03:45:27 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Cut out the autocomplete callback https://github.com/ruby/reline/commit/46aa2694da commit 164e48622509cb6947c453360417b1486685f3d1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-27 02:52:48 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Remove @dialog_updown and @dialog_contents_width https://github.com/ruby/reline/commit/458cb8a9cc commit 4b2b10707af564c1d600957a69d89165fa7d11f1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-27 01:51:44 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Implement dynamic selection of candidates https://github.com/ruby/reline/commit/e46437df00 commit 8e463e3e73e37ff57a5fde142436280846718ecf Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-27 01:50:49 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Remove unnecessary condition https://github.com/ruby/reline/commit/07e911ec8e commit fdc005e54e58bbf005381bcfc7ac59d56fb05aac Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-27 01:47:33 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Completion journey starts with one of candidates First one is just original string. https://github.com/ruby/reline/commit/ccb70cc240 commit 18c0814fe02dcfdc9cf20504278a1e0039b75b74 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-26 12:52:10 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Fix typo https://github.com/ruby/reline/commit/6370353c71 commit 475038a622689a7c1ac2e7a4d057e81cdbd079bb Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-25 17:22:54 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Move cursor correctly when current line is auto wrapped https://github.com/ruby/reline/commit/14c8fade54 commit ff43b0f2ddce0b30071be83383e5d178141b2247 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-25 17:22:23 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Update dialog backup before clearing https://github.com/ruby/reline/commit/a39e2c8813 commit ca1a2d1f68b299f07e9953f8d739a4b7c12bc7a0 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-25 17:21:05 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Show autocomplete correctly when starts from prev line https://github.com/ruby/reline/commit/f31a76ff31 commit 06bd48aba8b24e73b1dac8dfdc1dc0f36a733c11 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-25 16:27:24 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Remove unnecessary metadata between lines https://github.com/ruby/reline/commit/83928249e3 commit 081e5de34d6801bc8793f28d1823551a4279dcbf Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-24 21:33:13 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Combine vertical processing into @dialog_vertical_offset https://github.com/ruby/reline/commit/600b93620c commit f863ed5210084e33545e3b1c620c2b83e2d7a1f8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-24 21:31:04 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Drop too much contents before processing https://github.com/ruby/reline/commit/94f7027edc commit fb9fe4c43fe37fb9c78090114d373b1eaf195fc9 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-24 16:15:04 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Display autocomplete below original line if end point was wrapped https://github.com/ruby/reline/commit/49f3392d59 commit 9b2afb2eed894aa45f7bf2a1ef7793290fe95e9e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-23 22:02:25 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Scroll properly to create margin https://github.com/ruby/reline/commit/064d54f8f1 commit 85dd0ad5e00332f03835640ac01056d54d011468 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-23 21:57:48 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Move dialog pos to left when goes beyond right edge https://github.com/ruby/reline/commit/f1efa2b062 commit d768eeeddbcc59166e7669471e6b3672eeed230c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-22 01:47:07 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:33 +0900 [ruby/reline] Support hide/show cursor on Windows https://github.com/ruby/reline/commit/0c870813bd commit 02a61fe33f422d7e041531cac1a5a45a14ca5752 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-22 01:31:21 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Hide cursor when rendering dialog https://github.com/ruby/reline/commit/a9050cf676 commit c0349765e9267130e06b9e1679fb372dd0423e08 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-22 00:58:58 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Remove debug code https://github.com/ruby/reline/commit/2389d175f7 commit 2ec3977ce2a9919417303851bbd14ca019495d8a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-22 00:58:38 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Clear after cursor https://github.com/ruby/reline/commit/4d7503cd1f commit b95e5f4a41a743bce2c15f0cc7cb408fecf49aa1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-22 00:13:45 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Move cursor to rerender right margin of dialog correctly https://github.com/ruby/reline/commit/554855013b commit 788c0476958fff3b73c3e771d14822512d6b386a Author: usa <usa@garbagecollect.jp> AuthorDate: 2021-08-20 23:40:42 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Create windows.rb see issue #317 https://github.com/ruby/reline/commit/aad164de93 commit d7f654ad5a688dfcd6c274346c437e36ce249c4f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-20 23:14:42 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Add "sleep 0.01" to Windows event loop https://github.com/ruby/reline/commit/dfc89eae53 commit 6f66927aefd50f9df9ce7d935688dcd0f45e9b4e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-19 03:49:38 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Add comments about where rerendering https://github.com/ruby/reline/commit/4406069b7e commit 55459bdd679207640d345cae0a6cd71356732ed5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-19 00:10:48 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Use background color instead of border frame https://github.com/ruby/reline/commit/8f1db0a076 commit 6fda45744861c102ed594fae97cef43364b1f20f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-18 19:46:01 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Suppress warning; unused variable https://github.com/ruby/reline/commit/74a6124e8d commit 1e527c8a55e9b3e599894e1aa0fabdc76f86aa8f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-18 19:22:27 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Remove an unnecessary variable https://github.com/ruby/reline/commit/5435c1aa3f commit fb0fc201963c5e70e62b72e0ac9e27dc39e0f5ec Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-17 19:21:27 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Implement dialog with autocomplete callback https://github.com/ruby/reline/commit/1401d6165e commit e66200780b5a07c070295231408873c8d3dd7c5e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-15 17:08:58 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-29 20:30:32 +0900 [ruby/reline] Separate calling completion proc with checking args https://github.com/ruby/reline/commit/3203cb97db commit eadd25d5afa8eef4c0876e897e0f55c5fcad9951 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-29 20:15:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-29 20:30:07 +0900 [ruby/irb] Update dependency to "reline >= 0.2.7.pre.1" for use dialog feature in tests https://github.com/ruby/irb/commit/df04a9a881 commit cde84a5baac7d854190d09a72bc8c4f40a6eb1ea Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-29 20:05:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-29 20:30:01 +0900 [ruby/irb] Rescue NotFoundError of RDoc::RI::Driver#expand_name https://github.com/ruby/irb/commit/c5f13b23d7 commit ae4e301d5d180251e8e8b70437e078b61aa0f42e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-29 20:04:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-29 20:29:54 +0900 [ruby/irb] Add show doc dialog for Reline https://github.com/ruby/irb/commit/026700499d commit a615885f1e87f4bfbc5398b060fd3a64d5de8c4a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-29 16:47:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-29 17:18:58 +0900 Free previously used tables [Bug #18134] Notes: Merged: https://github.com/ruby/ruby/pull/4788 commit 265a725830a487b846bc32f70346f6438c95a7e9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-29 16:32:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-29 16:32:55 +0900 Handle non-succeeding reports mingled with dots commit 6c40aa35a5e491dd77ff11c67929638e2360292a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-29 16:32:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-29 16:32:12 +0900 Memory::Status#_update should return `self` commit 7487371eeb599f1e5568f0a7cdc12bdb0fa550a0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-29 14:08:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-29 14:08:53 +0900 Make ruby.pc from make Expand variables undefined in configure.ac, RUBY_RELEASE_DATE and so on. commit 623736ae7f327015e23fbdb8f847a8424a3dd73a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-29 13:04:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-29 13:04:42 +0900 Move DEFFILE to EXTDLDFLAGS So that it is no longer needed in ruby.pc.in. commit 323c0c392a0b9665cacea271330b52769c9e06e2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-29 12:39:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-29 12:50:24 +0900 Reorder ruby.pc variables Moved variables obviously independent from others first. commit 5d62fd8e1706ca589e6bdd4802956d181588bef5 Author: Kazuki Tsujimoto <kazuki@callcc.net> AuthorDate: 2021-08-29 11:38:45 +0900 Commit: Kazuki Tsujimoto <kazuki@callcc.net> CommitDate: 2021-08-29 11:38:45 +0900 Update power_assert to 2.0.1 commit 523bf31564f160f899f8cf9f73540d6a6f687f17 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-29 10:32:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-29 10:35:00 +0900 Add negative position tests [Bug #18138] commit 5dc36ddcd00fc556c04c15ce9770c5a84d7d43dc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-29 10:29:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-29 10:33:22 +0900 Add out of range tests for Array#slice! commit 7731be94eb78c34540e04e95334b3b824a3b6e3f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-29 09:41:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-29 09:41:46 +0900 * 2021-08-29 [ci skip] commit d43279edacd09edf3a43e02d62f5be475e7c3bcb Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-08-28 23:29:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-29 09:41:22 +0900 Fix length calculation for Array#slice! Commit 4f24255 introduced a bug which allows a length to be passed to rb_ary_new4 which is too large, resulting in invalid memory access. For example: (1..1000).to_a.slice!(-2, 1000) Notes: Merged: https://github.com/ruby/ruby/pull/4787 commit 7e36b91526fdcd83f8a54f4f1f574c89ed0bedee Author: Lars Kanis <lars@greiz-reinsdorf.de> AuthorDate: 2021-08-26 20:38:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-28 18:26:19 +0900 Add Windows as a supported OS for Process.clock_gettime [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4782 commit f4b73f77efedf2cea86c77d35892e4377aafaa24 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-28 18:22:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-28 18:22:29 +0900 * 2021-08-28 [ci skip] commit 394498b878370aeba34013082e0c71456da8b927 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-28 18:20:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-28 18:21:47 +0900 [Windows CI] Stop VS-2022 We have previewed it, and know it doesn't work well now. commit 47a2ea4df5ee690f5057db224d8f30436617db37 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-28 09:25:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-28 18:21:44 +0900 [Windows CI] Stop on error in VS-2022 commit 76e8cfd1588e5a787f579063d66cba001e54380a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-26 01:01:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-28 18:21:39 +0900 [Windows CI] Setup env commit ed31bdfeee3396bd703ba432630bc31933a08feb Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-08-27 22:37:51 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-08-27 23:13:32 +0900 Fix memory leak in Variable Width Allocation Force recycled objects could create a freelist for the page. At the start of sweeping we should append to the freelist to avoid permanently losing the slots on the freelist. Notes: Merged: https://github.com/ruby/ruby/pull/4786 commit 3562c7ba332009ff9b0bd559ff8a65fe1bef2781 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-27 12:42:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-27 12:43:45 +0900 Update the list of replacing objects under missing commit 80c1faf0769abfb459c5c749206ed02311d8274b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-27 12:42:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-27 12:42:23 +0900 Use C99-defined signbit macro Notes: Merged: https://github.com/ruby/ruby/pull/4783 commit 04be8e84db1cf4f8b2a7bc7679eda4336da75d43 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-27 10:52:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-27 12:41:30 +0900 Use C99-defined macros to classify a floating-point number Notes: Merged: https://github.com/ruby/ruby/pull/4783 commit 37114673623c4d2b1d9f2c2ddfffba070b2d96e6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-26 02:49:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-27 09:34:53 +0900 [Windows CI] Set PATCH path commit a2831cf247801ab1f757bef9d547feb8c0b1256b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-26 23:09:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-27 09:34:53 +0900 [Windows CI] Make test-all parallel and verbose commit 8a754bc5c98ce4eea7fb449e1b54845900284107 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-26 02:09:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-27 09:34:53 +0900 [Windows CI] Group nmake step commit fbdd1c6a79150ae0ea576c9eb4c74f55329f73f6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-26 02:09:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-27 09:34:52 +0900 [Windows CI] Moved parameters to include commit db4bfdfb4c094092fb99d363405cb6a099e512aa Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-27 09:16:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-27 09:16:40 +0900 * 2021-08-27 [ci skip] commit 19ab24a064fe69fce84c0339eed2d59d0e874869 Author: Henrik Nyh <henrik@nyh.se> AuthorDate: 2021-08-26 20:44:34 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-08-27 09:16:25 +0900 [DOC] Fix a typo in Dir.fnmatch Notes: Merged: https://github.com/ruby/ruby/pull/4781 commit ef10e8a1eb6e05443ea85137e83a3745bddb7a7f Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-08-26 15:11:48 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-08-26 19:47:48 +0900 Use patch installed by msys2/setup-msys2 Notes: Merged: https://github.com/ruby/ruby/pull/4775 commit 79a3e89dae060df9086668118359627f9df373d7 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-08-26 14:05:34 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-08-26 19:47:48 +0900 Use bundled libffi on windows-2022 Notes: Merged: https://github.com/ruby/ruby/pull/4775 commit 5550c2719a965a939e508d14354b06713d2f6289 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-08-26 11:06:55 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-08-26 19:47:48 +0900 Install patch Because patch does not installed on windows-2022. https://github.com/actions/virtual-environments/issues/3949 > Only pure MSYS2 is installed. No additional packages Notes: Merged: https://github.com/ruby/ruby/pull/4775 commit 69615251f9c6a153fc5210f7a4e43e4c9c7301af Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-08-25 17:34:35 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-08-26 19:47:48 +0900 Ignore errors on windows-2022 https://github.com/ruby/ruby/pull/4775/checks?check_run_id=3419490832#step:13:38 commit d96ba8c5c36bf701dfdec79983102daa7cda6fea Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-08-25 15:57:02 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-08-26 19:47:48 +0900 Use newer libffi on windows-2022 Notes: Merged: https://github.com/ruby/ruby/pull/4775 commit b1f58d3e91060730e259b293b47e04e889ecf36e Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-08-25 11:51:45 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-08-26 19:47:48 +0900 Set VCVARS Notes: Merged: https://github.com/ruby/ruby/pull/4775 commit 5e65f31b5ad7b2143f3905863649e43f2c238281 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-08-25 11:11:03 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-08-26 19:47:48 +0900 Add Windows Server 2022 with Visual Studio 2022 https://github.blog/changelog/2021-08-23-github-actions-windows-server-2022-with-visual-studio-2022-is-now-available-on-github-hosted-runners-public-beta/ Notes: Merged: https://github.com/ruby/ruby/pull/4775 commit 9c0582704f63f85aab112c8a9cff344fc3df62ca Author: Lars Kanis <lars@greiz-reinsdorf.de> AuthorDate: 2021-08-25 19:03:35 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-08-26 18:49:12 +0900 Fix example fiber scheduler reg. writable events There were two issues: 1. When an IO object is waiting for writablility only (as in test_tcp_accept) the selected hash is empty. Therefore selected[fiber] returns nil but needs to default to 0 in order to be or'ed with IO::WRITABLE. 2. When an IO object is waiting for read- or writability (as in test_tcp_connect), but only one of these two events arrive, the Fiber and IO object need to be removed from the other `@readable` or `@writable` list. Notes: Merged: https://github.com/ruby/ruby/pull/4777 commit a2ad0cb7b44a0cb87bd552b312a70bc46016a95f Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-08-24 11:22:00 +0900 Commit: Sutou Kouhei <kou@cozmixng.org> CommitDate: 2021-08-26 13:29:58 +0900 Make Hash#each family usable in Ractor We don't need to increment/decrement iteration level for frozen Hash because frozen Hash can't be modified. We can assume that nobody changes the target Hash while calling #each family. How to reproduce: a = {} 100.times do |i| a[i] = true end Ractor.make_shareable(a) 4.times.collect do Ractor.new(a) do |b| 100.times do b.each_value do end end end end.each(&:take) Example output: internal:ractor>:267: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues. #<Thread:0x00007fcfb087bb30 run> terminated with exception (report_on_exception is true): #<Thread:0x00007fcfb087b8d8 run> terminated with exception (report_on_exception is true): #<Thread:0x00007fcfb088d678 run> terminated with exception (report_on_exception is true): #<Thread:0x00007fcfb087bd88 run> terminated with exception (report_on_exception is true): /tmp/h.rb:10:in `each_value'/tmp/h.rb:10:in `each_value': : /tmp/h.rb:10:in `each_value'no implicit conversion from nil to integer/tmp/h.rb:10:in `each_value'no implicit conversion from nil to integer (: : (TypeErrorTypeError)no implicit conversion from nil to integer)no implicit conversion from nil to integer ( (TypeErrorTypeError from /tmp/h.rb:10:in `block (3 levels) in <main>' from /tmp/h.rb:10:in `block (3 levels) in <main>' )) from /tmp/h.rb:9:in `times' from /tmp/h.rb:9:in `times' from /tmp/h.rb:9:in `block (2 levels) in <main>' from /tmp/h.rb:10:in `block (3 levels) in <main>' from /tmp/h.rb:10:in `block (3 levels) in <main>' from /tmp/h.rb:9:in `block (2 levels) in <main>' from /tmp/h.rb:9:in `times' from /tmp/h.rb:9:in `times' from /tmp/h.rb:9:in `block (2 levels) in <main>' from /tmp/h.rb:9:in `block (2 levels) in <main>' <internal:ractor>:694:in `take': thrown by remote Ractor. (Ractor::RemoteError) from /tmp/h.rb:14:in `each' from /tmp/h.rb:14:in `<main>' /tmp/h.rb:10:in `each_value': no implicit conversion from nil to integer (TypeError) from /tmp/h.rb:10:in `block (3 levels) in <main>' from /tmp/h.rb:9:in `times' from /tmp/h.rb:9:in `block (2 levels) in <main>' Notes: Merged: https://github.com/ruby/ruby/pull/4768 commit 27410eaeb2482b6a2e3e60e566dc0d892d3b2e16 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-26 10:24:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-26 10:24:21 +0900 * 2021-08-26 [ci skip] commit f4b88959d51e02d6253f0132833dc47cf915ffa2 Author: Kevin Newton <kddnewton@gmail.com> AuthorDate: 2021-08-25 22:32:10 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-08-26 10:23:56 +0900 Clean up lambda output from exyacc.rb The `lambda_body` grammar rule has a `"}"`, which is throwing off the `exyacc.rb` regular expressions. This changes the regular expression to account for `"}"` as well, which makes the output of `ruby sample/exyacc.rb < parse.y` change by the following diff: ```diff 632,634d631 < ", &@3); < $$ = $2; < } ``` Which makes it closer to a valid EBNF. Notes: Merged: https://github.com/ruby/ruby/pull/4778 commit 62bc4a9420fa5786d49391a713bd38b09b8db0ff Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-08-25 02:14:23 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-08-25 22:28:21 +0900 [Feature #18045] Implement size classes for GC This commits implements size classes in the GC for the Variable Width Allocation feature. Unless `USE_RVARGC` compile flag is set, only a single size class is created, maintaining current behaviour. See the redmine ticket for more details. Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4773 commit c08d4067be83d03a6fcd173ffd2d206a01d09c90 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-08-25 02:14:14 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-08-25 22:28:21 +0900 [Feature #18045] Remove T_PAYLOAD This commit removes T_PAYLOAD since the new VWA implementation no longer requires T_PAYLOAD types. Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4773 commit 01be881f35e6dafbd8498f2ca9a02eedb1f40319 Author: Yuta Saito <kateinoigakukun@gmail.com> AuthorDate: 2021-08-25 17:50:49 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-08-25 18:47:44 +0900 Use `empty` instead of NOOP in mk file to make it safer This would avoid unintentional use of the `NOOP` environment variable Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4776 commit d1f0d1ca2ea4d7418b096ce71f68ce2bb3afd2c4 Author: Yuta Saito <kateinoigakukun@gmail.com> AuthorDate: 2021-08-25 16:24:25 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-08-25 18:47:44 +0900 Fix build failure on macOS with --enable-shared ./spec/ruby/optional/capi/ext/array_spec.c can match with spec/%/ if using GNU Make under version 3.81. make command installed on macOS is 3.81, so ruby can't be built with default make on macOS with --enable-shared option since https://github.com/ruby/ruby/commit/bda56a03a625793cb3fd110458c3f7323d73705e Notes: Merged: https://github.com/ruby/ruby/pull/4776 commit c4c0b60d92d134e093f1df86bb37b67e524a26cb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-25 18:28:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-25 18:28:27 +0900 Add missing empty macro [ci skip] commit 384c0f57aadb8d715dfc56c32ad8d769b9cda89e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-08-25 15:02:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-25 15:02:29 +0900 Added bundle install before bundle exec on rdoc sync commit b44741f5dcb2903496832bffce09100e28356864 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-08-25 02:49:49 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-08-25 11:13:17 +0900 tool/test-bundled-gems.rb: Use the bundled RBS code to test TypeProf Formerly, TypeProf was tested with the latest RBS code during `make test-bundled-gems`. However, when a new version of rbs is released, and if it is incompatible with TypeProf, `make test-bundled-gems` starts failing, which was annoying. By this change, TypeProf is tested with the bundled version of RBS. Notes: Merged: https://github.com/ruby/ruby/pull/4774 commit 716624660bad5550b19ec7a2b46fd760ebd9a272 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-25 00:36:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-25 00:36:23 +0900 * 2021-08-25 [ci skip] commit 14a9c364f75a9729d5a49e1fbea08fec2f813bdd Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-08-25 00:34:48 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-08-25 00:34:48 +0900 Fix warnings in test_optimization.rb These were introduced in the test for tracing optimized methods added in 48c8df9e0eb295af06d593ce37ce1933c0ee1d90. commit bbedd29b6e98ef6e3fc2ce2b358d2b509b7cd1bb Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-08-17 22:38:40 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-08-24 22:47:42 +0900 [Bug #18117] Fix Ractor race condition with GC rb_objspace_reachable_objects_from requires that the GC not be active. Since the Ractor barrier is not executed for incremental sweeping, Ractor may call rb_objspace_reachable_objects_from after sweeping has started to share objects. This causes a crash that looks like the following: ``` <internal:ractor>:627: [BUG] rb_objspace_reachable_objects_from() is not supported while during_gc == true ``` Co-authored-by: Vinicius Stock <vinicius.stock@shopify.com> Notes: Merged: https://github.com/ruby/ruby/pull/4755 commit b62ed309f05d248c746279f35f2609f01ea1e4a5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-24 19:24:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-24 19:29:54 +0900 [ruby/securerandom] [DOC] fix a code mark up [ci skip] https://github.com/ruby/securerandom/commit/de47532707 commit 4a6b5f4622b5f33936fb1af7a8277335b7e15bbe Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-08-24 18:07:50 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-08-24 18:08:16 +0900 Revert "tool/test-bundled-gems.rb: Use the bundled RBS code to test TypeProf" This reverts commit 22deda43cb98aa3cee48d0bebbff7c4db1d7652a. It was incomplete. Sorry! commit 80597f25447cbf6788322fffb64ca5f6995f2c9a Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-06 18:41:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-24 18:02:44 +0900 [ruby/un] gemspec: Explicitly list 0 executables This gem exposes no executables, so this makes that clear to the reader. https://github.com/ruby/un/commit/012c298e12 commit b126a27d8c946f1f121dc40c40e97c7fbf94aae7 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-03 16:31:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-24 18:02:44 +0900 [ruby/un] LICENSE https://github.com/ruby/un/commit/762c38c176 commit 2eed62fb65a93721bad32ecf79413b67320b61de Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-04-07 10:35:37 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-24 18:02:44 +0900 [ruby/un] Use STDIN if no arguments https://github.com/ruby/un/commit/8e0d6f62cb commit 66abeb0370feca203d1f179be39be158ba60aa6c Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-04-06 18:37:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-24 18:02:44 +0900 [ruby/un] Add colorize command https://github.com/ruby/un/commit/4d080eeec0 commit d140b03053dad873483b763ebb51c775bff1edb7 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-08-24 13:41:30 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-24 18:02:44 +0900 Added ruby/un entry commit 2be84afea5167343e66be85b4cd7945533e4a7b5 Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-08-24 04:16:31 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-08-24 17:55:24 +0900 .github/workflows/compilers.yml: Specify a container running user as root. Explicitly specify the root as a user to run tests in the containers. Coming new ruby/ruby-ci-image images are required to run the container as a regular user by default, while the root user is required to run the compilers.yml. Add `id` command to print the user info. Co-authored-by: fedor <fedor@cirruslabs.org> Notes: Merged: https://github.com/ruby/ruby/pull/4766 commit 22deda43cb98aa3cee48d0bebbff7c4db1d7652a Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-08-24 17:25:45 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-08-24 17:43:11 +0900 tool/test-bundled-gems.rb: Use the bundled RBS code to test TypeProf Formerly, TypeProf was tested with the latest RBS code during `make test-bundled-gems`. However, when a new version of rbs is released, and if it is incompatible with TypeProf, `make test-bundled-gems` starts failing, which was annoying. By this change, TypeProf is tested with the bundled version of RBS. commit bcc5a2b67eb10836aa54279d88230b3cb349a2e3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-24 13:12:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-24 16:18:24 +0900 [ruby/fiddle] Simplify libc and libm path logics (https://github.com/ruby/fiddle/pull/91) * Simplify libc_so and libm_so If nil, no need to set to nil. * Get rid of repeating inversions https://github.com/ruby/fiddle/commit/4323e689d8 commit 0f1e8f38c9cd008eb24e6c957388a183eac910ca Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-08-20 08:43:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-24 16:18:22 +0900 [ruby/fiddle] Improve "offsetof" calculations (https://github.com/ruby/fiddle/pull/90) I need to get the offset of members inside sub structures. This patch adds sub-structure offset support for structs. https://github.com/ruby/fiddle/commit/cf78eddbb6 commit 8d2af51a783fa3490c158b110629110ab3257f56 Author: David Carlier <devnexen@gmail.com> AuthorDate: 2021-08-23 21:01:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-24 10:52:04 +0900 netbsd coroutine uses assembly instead and little build fix. Notes: Merged: https://github.com/ruby/ruby/pull/4762 commit d9f084ed142f8f3f76041237f3a507171b4d8c3c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-28 19:37:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-24 10:37:41 +0900 Moved rb_deprecate_constant declaration [Feature #18051] Notes: Merged: https://github.com/ruby/ruby/pull/4763 commit 5d99800d01936a521f129b4aafc533468675df48 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-28 19:09:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-24 10:37:41 +0900 Moved rb_int_positive_pow declaration [Feature #18051] Notes: Merged: https://github.com/ruby/ruby/pull/4763 commit c38c2d8ee26c70300e2e0a4eec867273a8520579 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-28 16:40:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-24 10:37:41 +0900 Moved exported symbols in internal/util.h to ruby/util.h [Feature #18051] Notes: Merged: https://github.com/ruby/ruby/pull/4763 commit 4794a8a7cf4c9da00728e691b81dadb103383108 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-08-23 21:24:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-24 09:23:07 +0900 Add stat_time function Notes: Merged: https://github.com/ruby/ruby/pull/4761 commit 70abda1ad4e9910d87266ed350f262d6ef894d65 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-24 03:58:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-24 03:58:11 +0900 * 2021-08-24 [ci skip] commit 6648b411f7350711417936865331cf5066ef35aa Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-08-24 03:02:42 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-08-24 03:57:52 +0900 Replace intptr_t with uintptr_t in gc.c Pointers may be large to the point where intptr_t would be negative. This is problematic when doing comparisons of pointers. Notes: Merged: https://github.com/ruby/ruby/pull/4765 commit eddd369e7378ec762cf81a226aec1a2b8719bf7a Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-08-23 23:49:14 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-08-23 23:54:53 +0900 Revert "[Feature #18045] Implement size classes for GC" This reverts commits 48ff7a9f3e47bffb3e4d067a12ba9b936261caa0 and b2e2cf2dedd104acad8610721db5e4d341f135ef because it is causing crashes in SPARC solaris and i386 debian. Notes: Merged: https://github.com/ruby/ruby/pull/4764 commit b2e2cf2dedd104acad8610721db5e4d341f135ef Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-07-20 04:40:00 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-08-23 22:15:42 +0900 [Feature #18045] Implement size classes for GC This commits implements size classes in the GC for the Variable Width Allocation feature. Unless `USE_RVARGC` compile flag is set, only a single size class is created, maintaining current behaviour. See the redmine ticket for more details. Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4680 commit 48ff7a9f3e47bffb3e4d067a12ba9b936261caa0 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-07-20 02:52:14 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-08-23 22:15:42 +0900 [Feature #18045] Remove T_PAYLOAD This commit removes T_PAYLOAD since the new VWA implementation no longer requires T_PAYLOAD types. Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4680 commit 83244b8c893ea2e140095888d88146c27959bfc0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-23 14:12:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-23 14:12:21 +0900 [DOC] Match each `Time.now` for comparison [ci skip] commit 116e52f3b4b2059349c5add9e746c2ab00a8e743 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-23 09:59:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-23 09:59:31 +0900 * 2021-08-23 [ci skip] commit 689962eaeafc837d01b875633aa9bac6b4561b06 Author: Kentaro Goto <gotoken@notwork.org> AuthorDate: 2021-08-21 11:17:49 +0900 Commit: Kentaro Goto <gotoken+github@gmail.com> CommitDate: 2021-08-23 09:59:09 +0900 improves message. thanks to eregon Notes: Merged: https://github.com/ruby/ruby/pull/4415 commit f18e1752dcc55d62d4153926b5659a83469eb5ff Author: Kentaro Goto <gotoken@notwork.org> AuthorDate: 2021-04-27 14:49:37 +0900 Commit: Kentaro Goto <gotoken+github@gmail.com> CommitDate: 2021-08-23 09:59:09 +0900 Display httpd URLs supporting HTTPS Notes: Merged: https://github.com/ruby/ruby/pull/4415 commit 8361675e3a117b2cccee6bcc92440667fe35be7b Author: Kentaro Goto <gotoken@notwork.org> AuthorDate: 2021-04-26 09:58:31 +0900 Commit: Kentaro Goto <gotoken+github@gmail.com> CommitDate: 2021-08-23 09:59:09 +0900 Display httpd URLs Notes: Merged: https://github.com/ruby/ruby/pull/4415 commit d7da5ca5e1a6b0b17c31ba821b6217bbabcc1fca Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-08-22 22:27:29 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-08-22 22:27:29 +0900 Fix links [ci skip] commit 0b9a3371ea6287b5962906216815fe5e8aa8bec0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-22 17:49:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-22 20:28:52 +0900 [ruby/date] Add zontab.list dependency https://github.com/ruby/date/commit/7e1ffbf568 commit 877bfd1b44e7b95ea02f6d8805a35093903cd073 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-22 20:16:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-22 20:16:44 +0900 Suppress unused-label warnings commit d574b84182f4e6a17c63113abf8fe51c3b001bcc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-22 12:03:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-22 12:11:45 +0900 Fix failures on non-UTF-8 environment [Bug #18077] Call `IOSpecs.io_fixture` with the default encoding explicitly. `IOSpecs.closed_io` calls the method without optional `mode` which is set to UTF-8 by default, while the default external encoding depends on the locale environment variables. commit 18031f4102d7c8efc3a40b3fa65b36f94fc8a418 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-08-21 15:28:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-22 10:39:14 +0900 Add rb_encoding_check function Notes: Merged: https://github.com/ruby/ruby/pull/4759 commit 6594623f623a0982da62cc105094da0701d499da Author: Lars Kanis <kanis@comcard.de> AuthorDate: 2021-08-16 20:11:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-22 10:33:22 +0900 Fix Marshal.dump(closed_io) to raise TypeError and allow encoding on closed IO Mashalling a closed IO object raised "closed stream (IOError)" before instead of TypeError. This changes IO#(in|ex)ternal_encoding to still return the encoding even if the underlying FD is closed. Fixes bug #18077 Notes: Merged: https://github.com/ruby/ruby/pull/4758 commit c527d278a3dd94b9f5b82769fb69ee7b92b6d6a9 Author: Soutaro Matsumoto <matsumoto@soutaro.com> AuthorDate: 2021-08-22 02:47:54 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-08-22 02:47:54 +0900 Bundle RBS 1.5.1 (#4760) Notes: Merged-By: soutaro <matsumoto@soutaro.com> commit ad99edc7db8a993435d44bf866732e6147e32c58 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-22 02:15:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-22 02:15:17 +0900 * 2021-08-22 [ci skip] commit 48c8df9e0eb295af06d593ce37ce1933c0ee1d90 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-08-22 02:15:01 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-08-22 02:15:01 +0900 Allow tracing of optimized methods This updates the trace instructions to directly dispatch to opt_send_without_block. So this should cause no slowdown in non-trace mode. To enable the tracing of the optimized methods, RUBY_EVENT_C_CALL and RUBY_EVENT_C_RETURN are added as events to the specialized instructions. Fixes [Bug #14870] Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4739 Merged-By: jeremyevans <code@jeremyevans.net> commit f51a6ace06cecd193bf00747a63809849e254050 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-21 16:50:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-21 16:50:51 +0900 [DOC] prefer RUBY_DEFAULT_FREE to a magic number [ci skip] commit 8f755ad6c88f5a2318c0f810f872b9e54daa517c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-21 16:42:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-21 16:48:13 +0900 [DOC] mention rb_define_alloc_func [ci skip] commit e2b2b577b664a39011ea9137d643b2eac7785c7d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-21 11:22:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-21 11:22:11 +0900 * 2021-08-21 [ci skip] commit 5e7cc0eebe7519486a04c840cb9c3494cb7ca3e6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-21 11:21:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-21 11:21:37 +0900 [DOC] update extension.ja.rdoc [ci skip] `rb_cData` has been deprecated for years. commit 5e9598baea97c53757f12713bacc7f19f315c846 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-08-20 16:23:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-20 16:27:07 +0900 [ruby/error_highlight] Fixed the argument for DidYouMean.formatter= Looks like this bug was hidden by did_you_mean's rescuing any exceptions. https://github.com/ruby/error_highlight/commit/7a8f0b4796 commit cad83fa3c4491153df0561b06bb261e25a831d0f Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-08-20 16:18:36 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-08-20 16:18:36 +0900 ast.c: Rename "save_script_lines" to "keep_script_lines" ... as per ko1's preference. He is preparing to extend this feature to ISeq for his new debugger. He prefers "keep" to "save" for this wording. This API is internal and not included in any released version, so I change it in advance. commit 4c93c124c29465e49343b47c935be99ad67a7d83 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-20 13:46:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-20 15:18:13 +0900 Turned the reminder comment to a compile-time message commit 371bb4eaddf5d6d8aaab56173649da22378bbbae Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-20 09:37:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-20 15:18:12 +0900 Add RBIMPL_TODO Make `RUBY_VERSION_SINCE` and `RUBY_VERSION_BEFORE` to take major and minor numbers so usable also in preprocessor directives. Old macros are renamed with "STRING". commit b32987a3d783d6c7a5dec9a9a9c3550ca7c549d0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-20 14:03:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-20 14:04:07 +0900 Simplify repeated member access macros commit 754adbee91c2d4a4e84e9271724ca33f630d1916 Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-08-20 10:42:01 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-08-20 10:42:01 +0900 Module#ancestors should not return superclasses of refinements [ruby-core:86949] [Bug #14744] Reported by Eregon (Benoit Daloze). Thanks! commit 70510d1545da64604de148898e16459fad2041fe Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-20 08:30:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-20 08:30:24 +0900 * 2021-08-20 [ci skip] commit c0f4e4ca6d0f76985bca79314b232b787c8f008e Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-05-28 15:50:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-20 08:30:06 +0900 undefine alloc functions for C extensions per guidance in doc/extension.rdoc, these classes now undefine their alloc functions: - ObjectSpace::InternalObjectWrapper - Socket::Ifaddr Notes: Merged: https://github.com/ruby/ruby/pull/4604 commit e8e3b7a0e2fc2cc6384eb10332cc46e385373cbb Author: Mike Dalessio <mike.dalessio@gmail.com> AuthorDate: 2021-05-26 14:38:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-20 08:30:06 +0900 Undefine the alloc function for T_DATA classes which have not undefined or redefined it. When a `T_DATA` object is created whose class has not undefined or redefined the alloc function, the alloc function now gets undefined by Data_Wrap_Struct et al. Optionally, a future release may also warn that this being done. This should help developers of C extensions to meet the requirements explained in "doc/extension.rdoc". Without a check like this, there is no easy way for an author of a C extension to see where they have made a mistake. Notes: Merged: https://github.com/ruby/ruby/pull/4604 commit 6963f8f743b42f9004a0879cd66c550f18987352 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-19 17:37:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-19 17:44:48 +0900 Remove old warning aged nearly 8 years commit f96c1994498ea0debabb3e9ab60738b79fc6c6ba Author: Kazuki Tsujimoto <kazuki@callcc.net> AuthorDate: 2021-08-19 17:28:30 +0900 Commit: Kazuki Tsujimoto <kazuki@callcc.net> CommitDate: 2021-08-19 17:28:30 +0900 Fix test failure on spec/ruby/language/pattern_matching_spec.rb https://github.com/ruby/ruby/runs/3369486308 commit ecb6d6a4ef058b5598a7633c3921eeab08ce11c6 Author: Kazuki Tsujimoto <kazuki@callcc.net> AuthorDate: 2021-08-19 17:03:17 +0900 Commit: Kazuki Tsujimoto <kazuki@callcc.net> CommitDate: 2021-08-19 17:07:58 +0900 Allow omission of parentheses in one line pattern matching [Feature #16182] commit 00d66f7ec215406b5977fb490b06dae71a4fede6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-19 16:10:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-19 16:10:35 +0900 Hard-link executable files to make runnable As `$ORIGIN` on Linux is referred from the real path of the executable file, symbolic linked executable file cannot work. commit e20e97b4c006a14a6d5bbb559201bb665e38c775 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-19 11:33:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-19 11:33:29 +0900 * 2021-08-19 [ci skip] commit 1985a3a77fac64cda177c74113a9348e36233630 Author: Soutaro Matsumoto <matsumoto@soutaro.com> AuthorDate: 2021-08-19 11:33:09 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-08-19 11:33:09 +0900 Bundle RBS 1.4.0 & typeprof 0.15.2 (#4753) * Bundle RBS 1.4.0 * Bundle typeprof 0.15.2 Notes: Merged-By: soutaro <matsumoto@soutaro.com> commit 0b7969b6a36891f09bf0ebbca06de7949d1883f9 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-08-08 22:15:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-18 21:37:31 +0900 Silence LoadError only if it is for `rubygems` itself Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net> Co-authored-by: Hiroshi SHIBATA <hsbt@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4719 commit d668cd188ca91cf08ea7678bad1dd0bc8a997a81 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-08-17 04:51:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-18 18:24:37 +0900 rb_fix2uint should use FIXNUM_NEGATIVE_P rb_num_negative_int_p is equivalent to calling the "<" method on Integer (and checking whether it is overridden), where in this case we are interested in whether the "actual" value can fit inside an unsigned int. This also was slow because rb_num_negative_int_p calls rb_method_basic_definition_p, doing a method lookup to check for < being overridden. This replaces the check in both rb_fix2uint and rb_fix2ushort with FIXNUM_NEGATIVE_P which simply checks whether the VALUE is signed. Notes: Merged: https://github.com/ruby/ruby/pull/4747 commit 95e7aed82bb2b6ce5268a78d38d51cb6db7f044d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-18 14:11:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-18 17:23:27 +0900 SIGILL can raise at stack overflow on Linux too [Bug #18084] Notes: Merged: https://github.com/ruby/ruby/pull/4751 commit 574f3af36ea008896419d2e2407f8fce83bdcd2e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-18 14:09:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-18 17:23:19 +0900 Rewind execution tags more at stack overflow [Bug #18084] Notes: Merged: https://github.com/ruby/ruby/pull/4751 commit 58bd9434360d5a46974eaa03139893c0145615dc Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-08-18 02:25:19 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-08-18 02:25:19 +0900 Replace f_boolcast with RBOOL macro Notes: Merged: https://github.com/ruby/ruby/pull/4748 Merged-By: nobu <nobu@ruby-lang.org> commit 6a9bfa4d9387b9d8f07f43f4546437be57f9e27c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-18 00:00:54 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-18 00:00:54 +0900 * 2021-08-18 [ci skip] commit 36ae44ce2c7c2193fa8c2d0c4280d97726dc58d0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-11 10:17:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-17 22:57:59 +0900 [ruby/date] Update zonetab.h at 2021-08-11 https://github.com/ruby/date/commit/de7dca353f commit 48145282969230ba4a7c8cc7a6aedfd1263900c4 Author: Akinori MUSHA <knu@idaemons.org> AuthorDate: 2021-08-17 21:44:41 +0900 Commit: Akinori MUSHA <knu@idaemons.org> CommitDate: 2021-08-17 21:44:41 +0900 [DOC] Fix the rdoc for File::Stat#size? [ci skip] commit edf01d4e82d8e44ee30ec41fbcb7f802bc8b8c5d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-17 18:45:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-17 18:45:36 +0900 Treat NULL fake string as an empty string And the NULL string must be of size 0. commit 21fd83a823145042767cc5f237b41cc6bb51f2e9 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-08-17 17:07:01 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-08-17 17:08:59 +0900 Mention update to Unicode Version 13.0.0 and Emoji Version 13.1 Mention the update to Unicode Version 13.0.0 and Unicode Emoji Version 13.1 in NEWS.md. This completes issue #17750. [ci skip] commit de764ae8e099eac9267e75b29f2a343a43bab69a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-17 16:30:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-17 16:30:28 +0900 * 2021-08-17 [ci skip] commit fd7f61cf2133748075f738e5fb171b62190221bc Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-08-17 16:03:52 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-08-17 16:03:52 +0900 Take into account data in emoji-variation-sequences.txt in tests. The emoji data in emoji-variation-sequences.txt was not used for in test/ruby/enc/test_emoji_breaks.rb, for unknown reasons. It turned out that the format of each of the emoji data/test files is slightly different, and that we didn't take into account that empty fields after a semicolon, as present in emoji-variation-sequences.txt, led to less fields than expected when using split. This addresses issue #18027. commit a8714b83c40c8736b4ddafef08fa5f0091c9b101 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-16 17:00:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-16 17:00:19 +0900 `popen()` is not available on emscripten Notes: Merged: https://github.com/ruby/ruby/pull/4745 commit 07b12a1f4829ca3c7d60d56bb5c89069f0758d4c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-16 16:02:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-16 16:02:49 +0900 Suppress unused-variable warnings Notes: Merged: https://github.com/ruby/ruby/pull/4745 commit ee7bd7d7325d670c5bb204a63dc845465ca3f96a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-16 14:02:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-16 15:36:37 +0900 `SIZE_MAX` is not `size_t` on emscripten Notes: Merged: https://github.com/ruby/ruby/pull/4745 commit 54199a3f5f77f7aacfea37d2378e82f41c6a5510 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-16 13:52:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-16 15:36:37 +0900 Use `VALUE` instead of `intptr_t` On emscripten `intptr_t`, `uintptr_t`, `ptrdiff_t` and so on are defined as `long`, but `PRIdPTR` and so on defined as `int`. Notes: Merged: https://github.com/ruby/ruby/pull/4745 commit 5087a6a9244066f966b1d213142258f01a4bbd13 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-16 13:45:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-16 13:45:30 +0900 Fix COROUTINE_SRC on emscripten Select the C source if exists, otherwise the assembler source, instead of selecting by the coroutine type. Notes: Merged: https://github.com/ruby/ruby/pull/4745 commit 4cc44bd8194791c624f3452dbf3374661501d97e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-16 09:07:09 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-16 09:07:09 +0900 * 2021-08-16 [ci skip] commit f8f6d9895d9593ed3d8f552da3ae2d261ff28135 Author: DC <devnexen@gmail.com> AuthorDate: 2021-08-15 21:31:54 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-08-16 09:06:46 +0900 coroutine use asm version for handful of architectures for freebsd. Notes: Merged: https://github.com/ruby/ruby/pull/4744 commit 164f50dea918e7019847f578c3cffb079993d626 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-08-15 11:59:05 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-08-15 23:31:35 +0900 Update TypeProf to 0.15.1 Notes: Merged: https://github.com/ruby/ruby/pull/4743 commit 2aa6826e81ec880f5e98fa995e44fae0819be95d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-15 01:33:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-15 11:40:06 +0900 Extract the wrapped value when yydebug [Bug #18075] Notes: Merged: https://github.com/ruby/ruby/pull/4742 commit 4568ba071107a139b9f02fc17aa12f998181abf1 Author: Kazuki Tsujimoto <kazuki@callcc.net> AuthorDate: 2021-08-15 09:38:24 +0900 Commit: Kazuki Tsujimoto <kazuki@callcc.net> CommitDate: 2021-08-15 09:38:24 +0900 Show verbose error messages when single pattern match fails [0] => [0, *, a] #=> [0] length mismatch (given 1, expected 2+) (NoMatchingPatternError) Ignore test failures of typeprof caused by this change for now. commit 147bdcc436c888a56f81e190d192cd9312015836 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-15 01:01:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-15 01:01:24 +0900 [Win32] put a space before configure options [Bug #17588] Not to be concatenated with the preceding `--with-`* option. commit 717f0c56fc8e9432d89c1ec0a893a58b82862df8 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-15 00:27:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-15 00:27:10 +0900 * 2021-08-15 [ci skip] commit 244fc65d1c58364b8b9817e07983ae651272b033 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-15 00:20:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-15 00:20:38 +0900 Disable checks for LTO [ci skip] commit 72317b333b85eed483ad00bcd4f40944019a7c13 Author: xtkoba+ruby@gmail.com <xtkoba+ruby@gmail.com> AuthorDate: 2021-08-13 22:45:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-14 23:57:52 +0900 Ignore `DW_FORM_ref_addr` [Bug #17052] Ignore `DW_FORM_ref_addr` form and other forms that are not supposed to be used currently. commit 29dd70492eb3e3f0018c01fb3fa4ce77029a208f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-14 23:10:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-14 23:23:55 +0900 Add checks for gcc/clang with LTO commit 2e49e4330d329c58e256ce9c2b865428f3f02307 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-12 12:33:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-14 23:22:04 +0900 Disable debug flag for executable files when LTO [ci skip] Get rid of tons of linker warnings that it could not find object file symbol for every symbols, when targeting darwin. commit 97efd48fb1187995ab66a8ad386fb6d0c16e02a3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-14 14:07:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-14 23:12:31 +0900 Get rid of unintented recursion when RUBY_DEBUG commit 1bd021a78995dd1327c1e91779358ebdebc12200 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-14 10:17:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-14 23:11:58 +0900 Mark internal class names Notes: Merged: https://github.com/ruby/ruby/pull/4741 commit 58d82eacefe8060bc3f689491a423de5f2581d1d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-14 10:16:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-14 23:11:58 +0900 Add some "cold" marks Notes: Merged: https://github.com/ruby/ruby/pull/4741 commit edd27e120eca13be1754d4111dfc3cf2ab2f99f8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-14 10:14:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-14 23:11:58 +0900 A comment for typed data in `rb_check_type` [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4741 commit d58620e0a1d03518a5cb49b954008d70ac7898d2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-14 10:13:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-14 23:11:58 +0900 Rename labels in `Check_Type` more descriptive Notes: Merged: https://github.com/ruby/ruby/pull/4741 commit 9f88135f7885be93eb790b985b93e0646dae81ac Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-14 22:13:00 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-14 22:13:56 +0900 [ruby/readline-ext] Give up Editline https://github.com/ruby/readline-ext/commit/d924cfc1e6 commit 2c056816c4e16117cc62b67fba74dfbd15d15ae9 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-13 13:44:40 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-14 22:13:31 +0900 [ruby/reline] Add workspace member for the latest IRB's implementation https://github.com/ruby/reline/commit/8b55fc8fee commit a2f649374d7bd4a95040aabb08e1cb0144e227ce Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-13 13:44:08 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-14 22:13:31 +0900 [ruby/reline] Remove private visibility https://github.com/ruby/reline/commit/fa54e521da commit acce754eb8fb3a4a7d2546043da5538ccb7d90b5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-13 12:57:15 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-14 22:13:31 +0900 [ruby/reline] Remove interrupt avoidance There used to be a process that did not want to be interrupted by SIGINT, so it was trapped, but that process is no longer there. https://github.com/ruby/reline/commit/ba7252a5db commit 1868b9fa852e94d5d44736297dfce5c670ab42f6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-14 14:48:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-14 22:09:50 +0900 [Win32] Skip over source update just after clone on AppVeyor commit a9977ba2f9863e3fb1b2346589ebbca67d80536c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-14 10:08:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-14 11:34:31 +0900 Constified addr2line.c Notes: Merged: https://github.com/ruby/ruby/pull/4740 commit 963f2e01e7b213ad0195c14b20bfd7e1df4683d0 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-08-14 02:26:11 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-08-14 02:26:12 +0900 Reduce the amount of false positive notifications commit e57a1cc20c147493a174e2830ded13c88258b9dc Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-08-14 01:13:47 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-08-14 01:15:02 +0900 ruby/spec no longer needs webrick to run commit ee362302c0de8772b9f8be1b6c01c2f3aa40af04 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-08-14 01:13:09 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-08-14 01:13:09 +0900 Revert "Pause an MJIT worker when JIT is cancelled" This reverts commit b64f81c81729bbc248d19af01cafde88eb60fdc7. It seems to cause a problem in --jit / --jit-wait CIs. Reverting for now. commit 15c9c7845d6848edcc2c092d31217ca1e8460b39 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-14 01:10:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-14 01:10:00 +0900 * 2021-08-14 [ci skip] commit 73085c8d8ee5456b6c157042b78d812f3d1ab054 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-08-14 01:09:14 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-08-14 01:09:14 +0900 Update to ruby/spec@330c641 commit ac4d53bd461ff386cd45fdd484ffb6b628a251ad Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-08-13 15:19:15 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-08-13 15:26:44 +0900 Don't cancel JIT-ed code on TracePoint :class events get enabled commit 365da4c6ace385f08b97bd657ff5a118055e8ad1 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-08-13 15:19:59 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-08-13 15:19:59 +0900 Don't run mjit_cancel_all when MJIT is disabled commit b64f81c81729bbc248d19af01cafde88eb60fdc7 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-08-13 15:15:34 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-08-13 15:15:34 +0900 Pause an MJIT worker when JIT is cancelled commit b3f8c491efefc0461ab225d062f6c64286498609 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-08-13 14:54:40 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-08-13 15:11:38 +0900 Print JIT cancel when all JIT-ed code is cancelled commit 1a16940291301ace49cba0f37154a67033ab27c0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-13 14:51:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-13 14:51:56 +0900 * 2021-08-13 [ci skip] commit 611da9faef76777e57718cf5b0286b965879479c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-12 10:42:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-13 13:29:15 +0900 Mark `rb_unexpected_type` as "cold" [Bug #18062] So that it will not interfere the fast path in `Check_Type`. commit 573eef7c897ff938539270e605445da13093d664 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-12 10:30:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-13 13:29:15 +0900 Indicate the slow path of `Check_Type` never return [Bug #18062] Though this call to `rb_check_type` is just to raise an exception and never return actually, it can return at least formally. That means a caller function looks like it will access `flags` even in the special-const cases, and some optimizers may unify the access with the same access just following the call, and re-order it before the guard. commit 5534698b84c1ef1567ebb1e2d79fbe1a2a573a77 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-12 19:50:53 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-12 19:55:17 +0900 [ruby/reline] Version 0.2.7 https://github.com/ruby/reline/commit/040d29b4c0 commit f9abcfb6fc34e4aae73b51e5e35517633b872b67 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-12 19:53:03 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-12 19:53:10 +0900 [ruby/irb] Version 1.3.7 https://github.com/ruby/irb/commit/98610236ec commit 53743a42c4a73b29ddfc3b4c6d7b3178a6c31e6f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-12 19:52:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-12 19:53:04 +0900 [ruby/irb] Update dependency, reline >= 0.2.7 https://github.com/ruby/irb/commit/5a0c8dc9e6 commit 5196b171d9e26f9e688152e11a07a7b19440c443 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-12 19:47:41 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-12 19:47:41 +0900 Revert "Try to run test_interrupt_in_other_thread with Editline" This reverts commit c66b27efbb27c6b6b410457282ac841ead1dd132. commit c66b27efbb27c6b6b410457282ac841ead1dd132 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-12 15:34:54 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-12 15:35:05 +0900 Try to run test_interrupt_in_other_thread with Editline commit 7ac440910cb5825eb7ee57544318ffd479dac82b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-12 13:14:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-12 13:46:31 +0900 Separate jobs conditions commit 1cdc75104de1caa048d6eace3422b36dd69e6d70 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-08-12 09:40:38 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-08-12 11:29:08 +0900 RBIMPL_ATTR_DEPRECATED: enable for GCC 10.3+ They fixed the bug. Notes: Merged: https://github.com/ruby/ruby/pull/4735 commit e1fe209dd8d15eb05c8253f144eaa39e1aa6cfa3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-12 08:47:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-12 08:47:53 +0900 * 2021-08-12 [ci skip] commit e5f6cd70456377f8a63b4efb2ab16928e5d1121a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-12 07:52:23 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-12 07:52:39 +0900 Outer block is required to rescue Timeout::Error commit 79cc566ab4cdf75f125ecf413a27d353a9756c08 Author: Peter Zhu <peter.zhu@shopify.com> AuthorDate: 2021-08-11 08:54:10 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-08-11 22:26:19 +0900 Make during_compacting flag in GC one bit Commit c32218de1ba094223420a4ea017707f48d0009c5 turned during_compacting flag to 2 bits to support the case when there is no write barrier. But commit 32b7dcfb56a417c1d1c354102351fc1825d653bf changed compaction to always enable the write barrier. This commit cleans up some of the leftover code. Notes: Merged: https://github.com/ruby/ruby/pull/4730 commit c06b39d1d1f050ad6e202e9847c3a21894505766 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-11 17:45:31 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-11 17:45:31 +0900 Add TODO comment to #test_interrupt_in_other_thread commit c59da370a5d10ccecf3410a80b3d3af631e31df7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-11 14:08:39 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-11 14:08:45 +0900 Add comments about testing steps commit 4f324514aa5b3dd598f31cf41602dd414e0fbaca Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-11 14:07:28 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-11 14:08:45 +0900 Put the result of the process into a variable once To make the meaning of assertion easier to understand, commit 01e49af81d5f17248c9338cb82b7278f41f9b972 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-11 14:05:17 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-11 14:08:45 +0900 Stop exiting to show "SUCCESS" commit 2217b82af10a2120e68ec4d1d52587a741f3c750 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-11 14:03:55 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-11 14:08:45 +0900 Add logging about Errno::EPIPE commit 7d842515004e2a714f60a064fab90ac326418d1b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-11 14:02:28 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-11 14:08:45 +0900 Write log to stdout immediately commit 67e06102a3c8d0b8e8ff7a6f0528016f2560fd4b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-10 06:54:32 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-11 14:08:45 +0900 Stop checking char from "read" Because it's sometimes nil due to race condition. commit 7b10f55354331e2807eb86cd99321558e727ff0d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-10 06:54:08 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-11 14:08:45 +0900 Break immediately if assertions finished commit 7319b1fa2cb18758a65f57ebf1bd9097ebd1220e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-10 06:51:32 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-11 14:08:45 +0900 Add "START" log commit 84bf4d2ce55e16a4fb51b407a8c9c79e583596b3 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-08-11 06:19:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-11 13:40:49 +0900 Term fill in String#{,l,r}strip! even when SHARABLE_MIDDLE_SUBSTRING Each of these methods calls str_modify_keep_cr before term filling, which should ensure the backing string uses private memory, and therefore term filling should not affect other strings. Skipping the term filling was added in a707ab4bc8a29241440f56696098efa2f7f3ff45. Fixes [Bug #12540] Notes: Merged: https://github.com/ruby/ruby/pull/4731 commit a0a8f2abf533702b2cd96e79f700ce5b9cd94f50 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-05 20:09:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-11 12:07:44 +0900 Get rid of type-punning pointer casts [Bug #18062] Notes: Merged: https://github.com/ruby/ruby/pull/4716 commit 7560bf6f47001b7cf79c8ead41b3c48753d5640b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-11 10:54:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-11 10:54:56 +0900 * 2021-08-11 [ci skip] commit c3964a313eaf8ba8ebaef36bf3c3a5df599fca34 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-10 22:06:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-10 23:40:45 +0900 Assert for duplicated ARGF [Bug #18074] commit 7de7e9fdb7ef78c3fbd62d1b34ae1e4ee89cf7a9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-10 22:06:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-10 23:40:45 +0900 Assert that each contents are read [Bug #18074] commit 28d03ee776af4d630556fcaad7305340cbcf9cde Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-09 13:21:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-10 19:08:38 +0900 Remove root_jmpbuf in rb_thread_struct It has not been used since 1b82c877dfa72e8505ded149fd0e3ba956529d3f. Notes: Merged: https://github.com/ruby/ruby/pull/4725 commit 42b6dc84d3e0abb19432a1cf24f327b37b176fa8 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-08-10 15:32:20 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-08-10 15:47:52 +0900 add some lines to delete unused TracePoint `TracePoint.stat` returns the "to be deleted" TP numbers, and http://rubyci.s3.amazonaws.com/graviton2/ruby-master/log/20210810T030003Z.fail.html.gz shows there is a "to be deleted" TP. This patch uses only :line event and add some lines to allow MRI deletes "to be deleted" TPs. commit e3dcb6204d66c62aedaf94cac336d93d0275ce2c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-10 12:38:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-10 14:22:44 +0900 Run only directories or *_spec.rb files only by mspec [Bug #18072] Not to match *.c files under spec/ruby/optional/capi/ext, in the case of in-place build. commit 8df1ace64a7695c855bf0a774e3fd70edfab0bf3 Author: Csaba Henk <csaba@redhat.com> AuthorDate: 2021-08-10 08:07:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-10 11:32:45 +0900 Fix ARGF.read(length) short read [Bug #18074] Notes: Merged: https://github.com/ruby/ruby/pull/4727 commit 510c3655c9789f93e799499cd7923461e2743ec0 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-08-08 16:59:07 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-08-10 09:24:48 +0900 .github/workflows/compilers.yml: clang-14 It seems LLVM-14 begun. See also https://github.com/llvm/llvm-project/commit/08c766a7318ab37bf1d77e0c683cd3b00e700877 Notes: Merged: https://github.com/ruby/ruby/pull/4718 commit 6771316d51beaeecff54fdfb71e3275079346c0a Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-08-10 04:28:43 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-08-10 05:32:12 +0900 .travis.yml: Check failures for Travis arm64 again. It seems the concurrent jobs are stable recently on arm64 pipeline. Keep allowing to fail on arm32 due to a failure. Notes: Merged: https://github.com/ruby/ruby/pull/4726 commit cc1d88daba740217e54a4e7759b2e0f0a4bc4b3b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-10 02:52:38 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-10 02:52:56 +0900 Add comment about I/O that is not tty commit 71c20c5609822456a04e1d8e3bfa2baf776feccb Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-10 02:38:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-10 02:38:59 +0900 * 2021-08-10 [ci skip] commit b8f771fba2dde1e43173ceba21007d2612eddd44 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-10 02:35:50 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-10 02:36:00 +0900 Update parser files of RDoc generated by the latest Racc commit 44635ebe9a39fbe1fdaf0b65d00f9c89bee43489 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-10 02:35:33 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-10 02:36:00 +0900 Update parser files of RDoc generated by the latest KPeg commit 6b439e9c4e361c2b0763af950beeb7d908ddbab8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-09 21:04:39 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-10 02:36:00 +0900 [ruby/rdoc] Use HEAD of kpeg I compared the results between the latest release of kpeg gem (1.1.0) and HEAD of kpeg gem with `time` command, and the execution time is reduced from 38.35s sec to 35.06 sec. ref. https://github.com/evanphx/kpeg/pull/43 https://github.com/ruby/rdoc/commit/682bcb48ce commit d082510429c9b9f39656e5faf811f06677de1dd3 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-09 21:03:27 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-10 02:36:00 +0900 [ruby/rdoc] Add "rake clean" task to erase generated parser files https://github.com/ruby/rdoc/commit/4e3e635afa commit b277a6d26d3667cdfb0b75594c9d378e3a2c5068 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-10 02:30:59 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-10 02:36:00 +0900 Import copied Rakefile from original RDoc repository commit d8eeee97ce162aff42a05f36a459074b9f61e11c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-09 20:37:49 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-10 02:36:00 +0900 [ruby/rdoc] Move dev dependency of gettext to Gemfile https://github.com/ruby/rdoc/commit/a177377b6f commit 638c72e162f1a478578c61bbbdf643e66058f62f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-09 20:35:41 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-10 02:36:00 +0900 [ruby/rdoc] Use single quote in Gemfile https://github.com/ruby/rdoc/commit/e4b68d414c commit b685c60bef44cbe9700efcc883b2e20322953148 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-10 02:24:10 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-10 02:36:00 +0900 Import copied Gemfile from original RDoc repository commit ef6dd407c84e860515fc6636eb4f6ad67703d463 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-10 02:27:55 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-10 02:36:00 +0900 Import Gemfile and Rakefile of rdoc by tool/sync_default_gems.rb commit 9ed196e4876dd15991feee27e7dce1b67783060f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-09 18:16:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-09 19:25:18 +0900 VC warns the same attribute used more than once commit b8f7e8ac6bd177bf25bc9fa057bcb784682e0227 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-09 17:53:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-09 19:25:18 +0900 Include ruby.h before internal headers to suppress -Wundef warnings commit 5e633fb99e477eb204a94e272c5759f07b6e4732 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-09 18:17:07 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-09 18:17:07 +0900 Omit on Readline 7.0 because it's wrong behaviour for not TTY env commit 93ddff48022b75f99f540a8c1cc094a9976ca0e4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-09 17:36:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-09 17:36:21 +0900 Rename rb_iterate to get rid of name clash on Sun C commit 6f6a84f2f3e82f9554618f080f9b66ded52884cc Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-08-09 11:49:52 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-08-09 14:03:33 +0900 Extended logging for debugging readline failures. Notes: Merged: https://github.com/ruby/ruby/pull/4722 commit 6736323194e6cfd417468375669211c03d43d13e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-08 21:20:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-09 11:21:56 +0900 Suppress a clobbered warning Notes: Merged: https://github.com/ruby/ruby/pull/4720 commit 4fb8a12adc993d85af90e8563aff77f100cfdbd5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-08 18:24:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-09 11:21:56 +0900 Deprecate rb_iterate in C++ Notes: Merged: https://github.com/ruby/ruby/pull/4720 commit 733ffa74cd32a5c11ff744a5490782daa00ff1ae Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-08 17:27:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-09 11:21:56 +0900 Suppress deprecated rb_iterate declaration warnings in C++ Notes: Merged: https://github.com/ruby/ruby/pull/4720 commit a14671a6b6ad69bab443df75a3472575e2cc0dbc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-08 17:23:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-09 11:21:56 +0900 Suppress warnings in C++2a * bitwise operation between different enumeration types ('ruby_value_type' and 'ruby_fl_type') is deprecated [-Wdeprecated-enum-enum-conversion] * volatile-qualified parameter type 'volatile int' is deprecated [-Wdeprecated-volatile] Notes: Merged: https://github.com/ruby/ruby/pull/4720 commit f584dc5a11d389a24a504b6066b74d1388f6164b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-08 17:18:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-09 11:21:56 +0900 Suppress unused-function warning when OPT_THREADED_CODE != 1 Notes: Merged: https://github.com/ruby/ruby/pull/4720 commit 836b7047a60bc214c90438a763ef759f1963caff Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-08 17:16:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-09 11:21:56 +0900 Suppress unused-variable warnings when DEBUG_INTEGER_PACK Notes: Merged: https://github.com/ruby/ruby/pull/4720 commit dc2eb6f7b2d324bda37a363882eae0fbdd0d5b7a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-09 08:41:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-09 08:41:15 +0900 * 2021-08-09 [ci skip] commit 48c43f7783bdb9aa92af61970ed85cf91342b942 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-08-09 06:40:13 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-08-09 08:40:56 +0900 Rework the readline test to be more robust. - Capture that the child is started by initial log line. - More robust handling of child status reaping. - Direct exit without success message if `#readline` receives input. Notes: Merged: https://github.com/ruby/ruby/pull/4721 commit 3a8cadcf8f3e1c58b2c32fcd2d5a0b48cf6dfb1f Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-08-08 15:56:16 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-08-08 19:12:14 +0900 Reduce chance to receive EBADF when closing an IO from another thread. Notes: Merged: https://github.com/ruby/ruby/pull/4717 commit 587f501c7cc63730f6e03af50ec99bb6624d93dd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-08 15:24:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-08 17:13:33 +0900 Make bit flags `reason` unsigned commit ca2dd6d35a09dca1c23908193420c9148b254e8a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-08 15:42:48 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-08 15:43:03 +0900 Use #full_message instead of #backtrace_locations commit f81964568f954495ad9a517066bd241f5db22059 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-08 15:12:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-08 15:13:49 +0900 Suppress warnings when GC_ENABLE_INCREMENTAL_MARK == 0 commit c6398d3d7cf1f4dacd0b30d4bae2886a1e5472c2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-08 09:25:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-08 09:25:01 +0900 * 2021-08-08 [ci skip] commit 40ccb87a498ec45acc2d2f3e05460b128e9a411c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-08 09:25:12 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-08 09:25:12 +0900 Show backtrace locations when I/O timed out commit 1fe73128cd3d3fb49f042c6613dc86c409927423 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-07 22:58:26 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-07 22:58:59 +0900 Use TERM=xterm for tests on Solaris commit f092a9606e0838ec3ffbf946ce4612524c51e870 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-07 21:16:49 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-07 21:16:49 +0900 Set TERM env for some CI environments commit 6e60fc29453603270ebdf79f4b37ec6544a602cc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-07 18:32:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-07 18:32:24 +0900 Group commands on GitHub Actions commit ac7986f46a1fc5686b006625a16a9ff62579efe7 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-08-06 12:46:01 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-08-07 14:18:20 +0900 Remove unneeded rb_fiber_transfer_kw declaration Notes: Merged: https://github.com/ruby/ruby/pull/4713 commit 9b3fcfbbb9031036a9f7ba8ae1934f0805ea4d85 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-08-07 12:50:55 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-08-07 12:50:55 +0900 Suppress unused-result warnings * Hide read function warning in string_spec_RSTRING_PTR_read function * The type of `read` may be `ssize_t` Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4703 Merged-By: nobu <nobu@ruby-lang.org> commit e5dd40b1f3a11f48d566413ab347ce0cfdd94960 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-07 12:08:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-07 12:34:45 +0900 Stop force-recycling evacuated array [Bug #18065] commit d16b68cb2204eeb5af8bd39149202b630374c67f Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-27 03:20:27 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-08-07 07:03:51 +0900 Use Rational for Float#round with ndigits > 14 ndigits higher than 14 can result in values that are slightly too large due to floating point limitations. Converting to rational for the calculation and then back to float fixes these issues. Fixes [Bug #14635] Fixes [Bug #17183] Co-authored by: Yusuke Endoh <mame@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4682 commit 0d3520b063b304708699d3b7ea82b0a5b0279555 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-07 02:15:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-07 02:15:19 +0900 * 2021-08-07 [ci skip] commit 1a05dc03f953830564c272665c47a61e53550f3e Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-22 08:44:56 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-08-07 02:15:01 +0900 Make backtrace generation work outward from current frame This fixes multiple bugs found in the partial backtrace optimization added in 3b24b7914c16930bfadc89d6aff6326a51c54295. These bugs occurs when passing a start argument to caller where the start argument lands on a iseq frame without a pc. Before this commit, the following code results in the same line being printed twice, both for the #each method. ```ruby def a; [1].group_by { b } end def b; puts(caller(2, 1).first, caller(3, 1).first) end a ``` After this commit and in Ruby 2.7, the lines are different, with the first line being for each and the second for group_by. Before this commit, the following code can either segfault or result in an infinite loop: ```ruby def foo caller_locations(2, 1).inspect # segfault caller_locations(2, 1)[0].path # infinite loop end 1.times.map { 1.times.map { foo } } ``` After this commit, this code works correctly. This commit completely refactors the backtrace handling. Instead of processing the backtrace from the outermost frame working in, process it from the innermost frame working out. This is much faster for partial backtraces, since you only access the control frames you need to in order to construct the backtrace. To handle cfunc frames in the new design, they start out with no location information. We increment a counter for each cfunc frame added. When an iseq frame with pc is accessed, after adding the iseq backtrace location, we use the location for the iseq backtrace location for all of the directly preceding cfunc backtrace locations. If the last backtrace line is a cfunc frame, we continue scanning for iseq frames until the end control frame, and use the location information from the first one for the trailing cfunc frames in the backtrace. As only rb_ec_partial_backtrace_object uses the new backtrace implementation, remove all of the function pointers and inline the functions. This makes the process easier to understand. Restore the Ruby 2.7 implementation of backtrace_each and use it for all the other functions that called backtrace_each other than rb_ec_partial_backtrace_object. All other cases requested the entire backtrace, so there is no advantage of using the new algorithm for those. Additionally, there are implicit assumptions in the other code that the backtrace processing works inward instead of outward. Remove the cfunc/iseq union in rb_backtrace_location_t, and remove the prev_loc member for cfunc. Both cfunc and iseq types can now have iseq and pc entries, so the location information can be accessed the same way for each. This avoids the need for a extra backtrace location entry to store an iseq backtrace location if the final entry in the backtrace is a cfunc. This is also what fixes the segfault and infinite loop issues in the above bugs. Here's Ruby pseudocode for the new algorithm, where start and length are the arguments to caller or caller_locations: ```ruby end_cf = VM.end_control_frame.next cf = VM.start_control_frame size = VM.num_control_frames - 2 bt = [] cfunc_counter = 0 if length.nil? || length > size length = size end while cf != end_cf && bt.size != length if cf.iseq? if cf.instruction_pointer? if start > 0 start -= 1 else bt << cf.iseq_backtrace_entry cf_counter.times do |i| bt[-1 - i].loc = cf.loc end cfunc_counter = 0 end end elsif cf.cfunc? if start > 0 start -= 1 else bt << cf.cfunc_backtrace_entry cfunc_counter += 1 end end cf = cf.prev end if cfunc_counter > 0 while cf != end_cf if (cf.iseq? && cf.instruction_pointer?) cf_counter.times do |i| bt[-i].loc = cf.loc end end cf = cf.prev end end ``` With the following benchmark, which uses a call depth of around 100 (common in many Ruby applications): ```ruby class T def test(depth, &block) if depth == 0 yield self else test(depth - 1, &block) end end def array Array.new end def first caller_locations(1, 1) end def full caller_locations end end t = T.new t.test((ARGV.first || 100).to_i) do Benchmark.ips do |x| x.report ('caller_loc(1, 1)') {t.first} x.report ('caller_loc') {t.full} x.report ('Array.new') {t.array} x.compare! end end ``` Results before commit: ``` Calculating ------------------------------------- caller_loc(1, 1) 281.159k (_ 0.7%) i/s - 1.426M in 5.073055s caller_loc 15.836k (_ 2.1%) i/s - 79.450k in 5.019426s Array.new 1.852M (_ 2.5%) i/s - 9.296M in 5.022511s Comparison: Array.new: 1852297.5 i/s caller_loc(1, 1): 281159.1 i/s - 6.59x (_ 0.00) slower caller_loc: 15835.9 i/s - 116.97x (_ 0.00) slower ``` Results after commit: ``` Calculating ------------------------------------- caller_loc(1, 1) 562.286k (_ 0.8%) i/s - 2.858M in 5.083249s caller_loc 16.402k (_ 1.0%) i/s - 83.200k in 5.072963s Array.new 1.853M (_ 0.1%) i/s - 9.278M in 5.007523s Comparison: Array.new: 1852776.5 i/s caller_loc(1, 1): 562285.6 i/s - 3.30x (_ 0.00) slower caller_loc: 16402.3 i/s - 112.96x (_ 0.00) slower ``` This shows that the speed of caller_locations(1, 1) has roughly doubled, and the speed of caller_locations with no arguments has improved slightly. So this new algorithm is significant faster, much simpler, and fixes bugs in the previous algorithm. Fixes [Bug #18053] Notes: Merged: https://github.com/ruby/ruby/pull/4671 commit d868c8f08f53715a1b01a4d02e3966c572d1e8b2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-06 20:58:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-06 20:58:13 +0900 Make jobserver available commit 3e7fb4b91d263f291c21200f3d11998053cdcf79 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-06 13:34:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-06 13:34:25 +0900 Check the result of tigetstr commit 9bfb8ea6715571b4318b018b703d40750acf2ccb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-06 13:33:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-06 13:33:47 +0900 Fix caching of curses_dl commit 7af21a78fab75c953646c0c26779e634aa771345 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-08-06 10:39:25 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-08-06 10:39:25 +0900 test/reline/test_terminfo.rb: skip when setupterm fails http://rubyci.s3.amazonaws.com/solaris11-gcc/ruby-master/log/20210806T000008Z.fail.html.gz ``` 1) Error: Reline::Terminfo::Test#test_tigetstr: Reline::Terminfo::TerminfoError: The terminfo database could not be found. /export/home/chkbuild/chkbuild-gcc/tmp/build/20210806T000008Z/ruby/lib/reline/terminfo.rb:84:in `setupterm' /export/home/chkbuild/chkbuild-gcc/tmp/build/20210806T000008Z/ruby/test/reline/test_terminfo.rb:6:in `setup' ``` commit e687b6f4da2daf37dc7a0cc8b48a97426a82ce72 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-06 03:55:58 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-06 03:55:58 +0900 Show Readline::VERSION for debugging commit 983630b5fdaed76a2996be668d01b9c4356e2ae4 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-06 03:50:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-06 03:50:33 +0900 * 2021-08-06 [ci skip] commit 9b56668bf88ff4897db7390081c060038e0aff37 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-06 03:50:02 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-06 03:50:02 +0900 Omit test_interrupt_in_other_thread with Editline commit 6414334d3c8af69d7a1356fbe56a72b1d117f511 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-06 03:17:51 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-06 03:17:51 +0900 Fix reversal of assertion result commit cd57b39f79e4304f5b9b4585592a3bd765392a8f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-06 03:15:58 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-06 03:15:58 +0900 Fix control structure to preperly catch Timeout::Error commit 7bcbee37b5feda172b1651b34a5c3d058db04611 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-06 02:51:10 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-06 02:51:10 +0900 Fix the result of checking the existence of constants being reversed commit bda56a03a625793cb3fd110458c3f7323d73705e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-05 22:30:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-05 22:30:48 +0900 Build rubyspec CAPI extensions commit 1cb5a669d39fe741388be7ac45fc88c336b097cf Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-05 19:39:22 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-05 19:39:22 +0900 Show log when timed out commit 042d4c8133278e53955879a1bb5ff3c8dcbf1197 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-04 23:35:08 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-04 23:35:08 +0900 Remove an unused variable commit a97837de1abe4c24757ba2dfbb7d4531e8faa460 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-08-05 17:25:17 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-08-05 17:25:17 +0900 Fix a link [ci skip] commit ae275f67cea586933d9983c066c2771f83c76943 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-05 14:16:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-05 17:14:38 +0900 Show WorkingSetSize as RSS on Windows Notes: Merged: https://github.com/ruby/ruby/pull/4709 commit 228b3e43be5e01e204751be2035fee3576a7ab74 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-08-05 16:21:15 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-08-05 17:11:50 +0900 check GC.enable'd status Check GC.enable'd status before and after test execution. Write this checker in gc_checker.rb, it was renamed from gc_compact_checker.rb. Notes: Merged: https://github.com/ruby/ruby/pull/4710 commit 405644f38c64dca3524e3fa32fd9722bcd2a1e0b Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-08-05 14:47:39 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-08-05 14:48:24 +0900 Revert "Removed extinit.o from main programs" This reverts commit ac86fcbfd0bab8667d277aa575bc5b81e5135d3c. This change broke "--disable-shared --with-static-linked-ext". commit 3bb6410914329a23162fc5dcc1b16fecb50f9837 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-05 14:15:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-05 14:15:30 +0900 Use equivalent `__FILE__` commit 594c3df9a96c57b140fac18a155bf8f93183f452 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-05 10:43:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-05 13:58:07 +0900 Tests for Windows can run only on Windows Should not directly require "reline/windows.rb" which should be loaded by "reline.rb". commit bc8bc072f4cb8293f8e7a2c5b517af68b5f2ac9b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-05 05:11:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-05 05:11:29 +0900 * 2021-08-05 [ci skip] commit 1fd0a2e4a62b70287dfce5bb1a66656b647d3899 Author: Peter Zhu <peter.zhu@shopify.com> AuthorDate: 2021-08-05 04:33:47 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-08-05 05:11:08 +0900 Reenable GC at the end of test The test disables GC but never reenables it. Before this patch, running all tests would have a peak RSS in the main process of >4GB. After this patch, peak RSS in the main process is <500MB. Notes: Merged: https://github.com/ruby/ruby/pull/4707 commit 5f2987d6c2ae9ace3178ac3e1bbb4ac7079101eb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-04 17:38:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-04 20:39:12 +0900 Fix relative paths from core_assertions.rb commit 6e55facdb38c070754ef4dc5921e9ad63d1a97e1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-03 02:19:55 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-04 18:29:42 +0900 Run interrupt test except on Windows Notes: Merged: https://github.com/ruby/ruby/pull/4704 commit aba10ea61e0f837bdca0e98f8e1e6fe7666a89b1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-03 01:40:26 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-04 18:29:42 +0900 Add a load path to require 'helper' Notes: Merged: https://github.com/ruby/ruby/pull/4704 commit 335c12826aecc7dfc3280c2dd26bdd0f17adcaa7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-03 01:20:27 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-04 18:29:42 +0900 Show the log of test_interrupt_in_other_thread when failed Notes: Merged: https://github.com/ruby/ruby/pull/4704 commit 17ef7a98ef0fd7d65cbcb00e0fff8c5767cd85c9 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-03 01:19:29 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-04 18:29:42 +0900 Check the existence of the test classes Notes: Merged: https://github.com/ruby/ruby/pull/4704 commit 5ca0a51ffd218131f5d396f0250781cdf972779f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-02 23:43:05 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-04 18:29:42 +0900 Add a test for handling SIGINT in other thread Notes: Merged: https://github.com/ruby/ruby/pull/4704 commit de93b8b0697ab9554557f21d7a52a3172c5af5c3 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-08-01 17:41:55 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-04 18:29:42 +0900 Handle SIGINT in other thread correctly Co-authored-by: Koichi Sasada <ko1@atdot.net> Notes: Merged: https://github.com/ruby/ruby/pull/4704 commit 5bb7b571299a06f051b065dec9dd5194e82bd796 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-31 21:39:04 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-08-04 18:29:42 +0900 Use Symbol of signal for trap Notes: Merged: https://github.com/ruby/ruby/pull/4704 commit 1f2b3f2529e39d8a69709a9f4ce6cf7153877fbe Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-04 16:59:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-04 16:59:18 +0900 Remove an extraneous escape Since a3fb97465df3, this string is not inside the here-document. commit 6e8bbabc2b49330c7fcdf9c933fef33edaa33f5d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-04 05:39:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-04 05:39:21 +0900 * 2021-08-04 [ci skip] commit c463a5e00830380fe29ffeb543aaeb59b0af02b1 Author: Peter Zhu <peter.zhu@shopify.com> AuthorDate: 2021-08-04 05:33:34 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-08-04 05:39:02 +0900 Fix indentation in string.c 7 spaces were used for 2 levels of indentation. This commit changes it to use 8 spaces. Notes: Merged: https://github.com/ruby/ruby/pull/4706 commit 2d4f29e77e883c29e35417799f8001b8046cde03 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-07-28 16:55:55 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-08-03 19:23:48 +0900 Fix potential hang when joining threads. If the thread termination invokes user code after `th->status` becomes `THREAD_KILLED`, and the user unblock function causes that `th->status` to become something else (e.g. `THREAD_RUNNING`), threads waiting in `thread_join_sleep` will hang forever. We move the unblock function call to before the thread status is updated, and allow threads to join as soon as `th->value` becomes defined. This reverts commit 6505c77501f1924571b2fe620c5c7b31ede0cd22. Notes: Merged: https://github.com/ruby/ruby/pull/4689 commit 785c70e764c3222f9accac2555246d3921a7263d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-03 18:16:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-03 18:16:32 +0900 [DOC] mention how the command is passed to the shell [ci skip] commit b5e94916bfb6aca65211047dcc4c55481c5b30a2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-03 12:10:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-03 12:10:56 +0900 * 2021-08-03 [ci skip] commit 4c3140d60f6f94504842a4d0c0d79752a87aec8d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-15 21:25:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-03 10:56:50 +0900 Add keyrest to ruby2_keywords parameters [Bug #18011] Notes: Merged: https://github.com/ruby/ruby/pull/4705 commit 731315bf5520a9ca7c94338c13d10c15b00c78c7 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-08-02 16:09:26 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-02 17:23:18 +0900 Use codeql-config.yml for codeql-action/init Notes: Merged: https://github.com/ruby/ruby/pull/4702 commit 0292ec9b8a75a88abf860a2c050efe46bb5844cb Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-08-02 16:08:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-02 17:23:18 +0900 Removed paths-ignore because it's not affect with cpp Notes: Merged: https://github.com/ruby/ruby/pull/4702 commit 954852f7a6a55c9ecd3d683234652cc7128b2a1f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-08-02 16:04:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-02 17:23:18 +0900 Removed unnecessary configuration for the latest version of actions/checkout Notes: Merged: https://github.com/ruby/ruby/pull/4702 commit 8b466ea5fc00dcd400a57cc03db4537f0cb8fc81 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-08-02 11:39:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-08-02 12:39:50 +0900 Use `${{}}` for if statement Notes: Merged: https://github.com/ruby/ruby/pull/4700 commit 7f4e86804d426d79807cc038fe4444f7c65f5c4a Author: Troy Chance <10200447+sftroychance@users.noreply.github.com> AuthorDate: 2021-08-02 12:09:07 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-08-02 12:09:07 +0900 Fix documentation of #<=> and #casecmp [ci skip] Descriptions for return values of -1 and 1 were reversed. Notes: Merged: https://github.com/ruby/ruby/pull/4698 Merged-By: nobu <nobu@ruby-lang.org> commit 378e8cdad69e6ba995a024da2957719789f0679e Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-08-02 12:06:44 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-08-02 12:06:44 +0900 Using RBOOL macro Notes: Merged: https://github.com/ruby/ruby/pull/4695 Merged-By: nobu <nobu@ruby-lang.org> commit 3688b476710def7290e32656b200fefc538366d0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-02 10:18:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-02 10:18:46 +0900 * 2021-08-02 [ci skip] commit 4453280bb4aee7975d8e93e3d6bc8bfe8d75775f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-02 08:38:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-02 10:18:22 +0900 Stop infinite object allocation to get rid of OOM killer Notes: Merged: https://github.com/ruby/ruby/pull/4697 commit 605421f4ebe37699e63eb5551c3dbc7887093e4f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-01 09:54:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-08-01 09:54:36 +0900 gcc 10.3.0 says "__VA_OPT__ is not available until C++2a" commit d99b10acb755b51664a01dabe6c4ac8af8071b0f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-08-01 06:49:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-08-01 06:49:23 +0900 * 2021-08-01 [ci skip] commit 3b52230452980f3afc6a7380276ea62f7c65e517 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-08-01 06:49:07 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-08-01 06:49:07 +0900 Define functions using rb_wait_for_single_fd [Bug #18046] Notes: Merged: https://github.com/ruby/ruby/pull/4696 Merged-By: nobu <nobu@ruby-lang.org> commit 242f024bcbff6c46edd84a03365fa99ebd8eb524 Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-07-08 20:13:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-31 22:15:16 +0900 [ruby/error_highlight] Keep it work if paren exists after receiver https://github.com/ruby/error_highlight/commit/b79d679bbd commit 4ab5281601c7c652db749d79b4833d755d563b09 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-31 11:40:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-31 11:40:45 +0900 * 2021-07-31 [ci skip] commit e294beb731eec7f0597c4275c42daf8b09fe643d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-31 11:38:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-31 11:38:27 +0900 [DOC] Fix Process::exec documentation [ci skip] Shell reserved words and special built-in commands can be placed at only the beginning of the command (except for leading white spaces). commit 01d9e7f26cc58dd280f0a08f0d12b7e7b7424147 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-30 19:20:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-30 19:36:17 +0900 [DOC] Fix Process::exec documentation [ci skip] The environment variable `RUBYSHELL` is used only on Windows, as well as `COMSPEC`. Notes: Merged: https://github.com/ruby/ruby/pull/4694 commit ff6c17602841bff57d3a489b8119c9643dbc7ebe Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-07-30 18:36:20 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-07-30 18:36:20 +0900 Tweak rb_str_modify_expand() + read() spec to try to find out why it fails on some platforms * Use a longer string as <= 23 characters it's embedded on CRuby and the value of rb_str_capacity() is implementation-specific. commit fd96503f7bf0ef8262691eac190fe53344ce55fc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-30 12:21:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-30 12:21:38 +0900 Fix bundled gems locations Changed since 55bf0ef1aa7c936b564b883196de1ace4be4cc7e. commit 2aecb95acb25ee076d160e2df6b61c3ea5b6d012 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-30 10:54:20 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-30 10:54:20 +0900 Skip test_ensure_after_nomemoryerror This test appears to cause failures in some environments. commit 9931e2f5091e95dd947de3b3a00167ae2fd5194a Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-18 03:27:53 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-30 07:19:12 +0900 Improve performance of Integer#digits This speeds up performance by multiple orders of magnitude for large integers. Fixes [Bug #14391] Co-authored-by: tompng (tomoya ishida) <tomoyapenguin@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4584 commit 64ac984129a7a4645efe5ac57c168ef880b479b2 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-22 03:01:06 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-30 05:51:03 +0900 Make RubyVM::AbstractSyntaxTree.of raise for method/proc created in eval This changes Thread::Location::Backtrace#absolute_path to return nil for methods/procs defined in eval. If the realpath of an iseq is nil, that indicates it was defined in eval, in which case you cannot use RubyVM::AbstractSyntaxTree.of. Fixes [Bug #16983] Co-authored-by: Koichi Sasada <ko1@atdot.net> Notes: Merged: https://github.com/ruby/ruby/pull/4519 commit 6998d758248d778fa95b008c78d05473e48b8428 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-07-30 05:11:21 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-07-30 05:11:21 +0900 Update to ruby/spec@b65d01f commit 15d05f8120745a121b93fab9fd2addf5f094e8d2 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-07-30 05:11:19 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-07-30 05:11:19 +0900 Update to ruby/mspec@9542a88 commit 41e2ab88c3722a7de7c5bbe189754d32a83bc52e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-30 02:56:29 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:56:29 +0900 Use test-unit assertions Notes: Merged: https://github.com/ruby/ruby/pull/4693 commit 1c9cb9da8fa601c747cb90baba5fe6834b28914f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-06 23:03:09 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Support Terminfo on Cygwin and macOS https://github.com/ruby/reline/commit/b0b75fcd27 commit f1b5cb7e5d9498405f7ed611abda37cb0d9f2ea4 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-05 15:54:12 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Don't check the existence of Terminfo on Windows https://github.com/ruby/reline/commit/320f09055c commit b158b4666d88eda3d9b9786fd427405749aff48f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-28 23:26:41 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Check TYPE_VARIADIC https://github.com/ruby/reline/commit/8e62e46e33 commit 0f496b9b29a38cfe39710c96111549d387f73321 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-24 18:04:02 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Define StringWithTiparm instead of singleton method https://github.com/ruby/reline/commit/de234dc875 commit 5b9f3ed326ee24ecdd8986f71cbecea892f386b6 Author: SilverPhoenix99 <silver.phoenix99@gmail.com> AuthorDate: 2021-07-26 22:11:16 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Fixed Ctrl+Enter key in Windows. https://github.com/ruby/reline/commit/0c38e39023 commit 46c6da9c378a64deb2d65d8fcf5afd4d7c9c3f45 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-24 15:01:22 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Check empty .inputrc https://github.com/ruby/reline/commit/b60b3b76cd commit 51ee24e7f7223b5c759eebcd9fe12d7f16ea6707 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-24 14:46:54 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Add original C function declarations comment for each function https://github.com/ruby/reline/commit/9a25ee9f12 commit 44a9337a46ec1a965803999211c4c2b964b9c2f9 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-24 05:43:28 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Fix reline on OpenBSD OpenBSD doesn't support tiparm, only tparm. I'm not sure if the two are compatible, but this at least this allows me to run irb on OpenBSD. https://github.com/ruby/reline/commit/0ce2b34e2b commit 1bf768d2e1f56457d5e2b35d90719553bf1f9601 Author: SilverPhoenix99 <silver.phoenix99@gmail.com> AuthorDate: 2021-07-22 03:11:09 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Added support for Numpad divide key on Windows. https://github.com/ruby/reline/commit/84577da0c4 commit 750359ce81d2c390d667999f7c900c9b395b93b8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-18 22:10:48 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Support Enter key of numpad on Windows The yamatanooroti gem can't emulate numpad key pressing... https://github.com/ruby/reline/commit/8e9da1aeaf commit 03f8c271796ffb976487495f1675ec7583b6762d Author: Lars Kanis <lars@greiz-reinsdorf.de> AuthorDate: 2021-07-08 17:09:38 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Windows cmd: Don't type anything when pressing ALT keys alone Fixes https://github.com/ruby/reline/pull/298 https://github.com/ruby/reline/commit/72acfcd27a commit 5313d234e01b5f34f969be265ec2cea7e921f9ae Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-07 20:23:39 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Use "omit" instead of "return" https://github.com/ruby/reline/commit/940cdaa301 commit b0633ee4b313300028901c50a1bda2aca28f69d4 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-25 20:01:02 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Add TODO comment to implement tigetflag() and tigetnum() https://github.com/ruby/reline/commit/a0d946a398 commit 8fc98295cb22cf179ba6805872e545921d080745 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-25 18:04:27 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Add Terminfo tests https://github.com/ruby/reline/commit/17721e477e commit 2a7e86844bca0413b82a905933b198884dd6ab28 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-27 21:01:36 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-07-30 02:27:02 +0900 [ruby/reline] Add require 'reline/terminfo' to use Reline::Terminfo.enabled? https://github.com/ruby/reline/commit/7ef9805b35 commit 87b327efe6c1f456c43b3f105c7a92a5a7effe93 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-04-08 03:32:30 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-30 01:44:11 +0900 Do not check pending interrupts when running finalizers This fixes cases where exceptions raised using Thread#raise are swallowed by finalizers and not delivered to the running thread. This could cause issues with finalizers that rely on pending interrupts, but that case is expected to be rarer. Fixes [Bug #13876] Fixes [Bug #15507] Co-authored-by: Koichi Sasada <ko1@atdot.net> Notes: Merged: https://github.com/ruby/ruby/pull/4366 commit cbecf9c7ba71ef0e844c72c97f85ce4fffb46aa6 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-07-30 01:04:36 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-07-30 01:04:36 +0900 Fix use-after-free on -DUSE_EMBED_CI=0 On -DUSE_EMBED_CI=0, there are more GC allocations and the old code didn't keep old_operands[0] reachable while allocating. On a Debian based system, I get a crash requiring erb under GC stress mode. On macOS, tool/transcode-tblgen.rb runs incorrectly if I put GC.stress=true as the first line. Notes: Merged: https://github.com/ruby/ruby/pull/4662 Merged-By: XrXr commit 12d4da7478136f12f463cc8029d73cd22ec0a021 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-30 00:14:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-30 00:14:57 +0900 * 2021-07-30 [ci skip] commit 693ce6af0a3c73ae6927ea67e990cd7f778eaac7 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-30 00:10:20 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-30 00:10:20 +0900 Update documentation for ruby2_keywords Point out that the method should be used for backwards compatibility with code prior to Ruby 3.0 instead of Ruby 2.7. It's still needed in Ruby 2.7. It isn't needed in Ruby 3.0, as the methods using it could switch to delegating both positional and keyword arguments. Add a link to the www.ruby-lang.org web page that goes into detail describing when and how ruby2_keywords should be used. commit 7564e066ffba6113604628bf01819e3e0af7037e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-29 16:23:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-29 21:15:04 +0900 Renamed thraed_fd_close as thread_fd commit f8ad51dd9a8c9fe493f0eb280ac9709ed5607acf Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-29 20:11:54 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 20:54:54 +0900 Fix test failure of 60b02db5161625dd5f7d22d31989dd966837333c with Windows Notes: Merged: https://github.com/ruby/ruby/pull/4691 commit a4df7cb33804add1d894ead66480365ea7f45fa1 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-29 16:26:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 16:26:15 +0900 Partly picking https://github.com/ruby/error_highlight/commit/25ef7dbeda4f2cfcad1675f70319401ef4916f40#diff-1ce41a048bf2c08aa7bf25b741e9d3a4e08ea03f0d80bc6b8ee6d1c3c259704dR1022 commit 672796575e4b5493174bc17007d0784f0c031eaf Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-29 16:20:10 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 16:20:10 +0900 Update the latest version of readline.gemspec commit a889ab486e83b9d87b8ad6c5b96e57fff1f21f93 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-29 15:57:58 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 15:57:58 +0900 Update the latest version of json.gemspec from flori/json commit e99d2d066fc2ce05e79616e7ab43410955d769ea Author: Rhys Powell <rhys@rpowell.me> AuthorDate: 2021-07-24 11:58:27 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 15:54:41 +0900 [ruby/psych] fix: use git repository link for LibYAML in docs LibYAML has moved from their previous Mercurial based hosting on BitBucket to a git repository on GitHub. This commit updates the `Psych` module's documentation to point to this new repository, instead of the old one which is now a 404. https://github.com/ruby/psych/commit/947a84d0dd commit b11638eed299a3f2c9df084fd26b001a46b2fbd2 Author: Pavel Rosický <pavel.rosicky@easy.cz> AuthorDate: 2021-06-08 06:19:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 15:54:34 +0900 [ruby/psych] require 'delegate' explicitly https://github.com/ruby/psych/commit/51a9ce13db commit 60b02db5161625dd5f7d22d31989dd966837333c Author: Miguel Teixeira <miguel.teixeira@onfido.com> AuthorDate: 2021-06-12 00:49:22 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 15:53:54 +0900 [ruby/net-http] Enforce write timeout when body_stream is used The existing implementation of `Net::HTTP#write_timeout` relies on `Net::BefferedIO` to trigger the `Net::WriteTimeout` error. This commit changes `send_request_with_body_stream` to remove the optimization that was making `Net::HTTP#write_timeout` not work when `body_stream` is used. Open issue: https://bugs.ruby-lang.org/issues/17933 https://github.com/ruby/net-http/commit/a0fab1ab52 commit b3413914d949677fb975824b23d3e66dc0fa2fbe Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-29 15:52:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 15:52:32 +0900 Partly picked from https://github.com/ruby/ostruct/commit/20d0b8c065392a22ba6d74194cf116755f38337f commit 1e04571da07ed742efa3cb33b4b3aa1089314d51 Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-06-22 04:38:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 14:18:52 +0900 [ruby/set] Improve What's Here links https://github.com/ruby/set/commit/76b056c3b9 commit 2bd68e32e7c51ccce046264686a367126c6baf01 Author: BurdetteLamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-06-22 04:33:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 14:18:42 +0900 [ruby/set] Improve What's Here links https://github.com/ruby/set/commit/dd787a3988 commit 899194f3a6e29626460084a8594d5c52a0b1f006 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-06-19 17:45:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 14:18:33 +0900 [ruby/set] gemspec: This gem exposes 0 executables This change removes unused configuration. https://github.com/ruby/set/commit/6c2338d699 commit 52e602edda0aa61a83f558bcf9bfdd97a4fd107f Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-19 00:24:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 14:18:25 +0900 [ruby/set] Update documentation for intersect?/disjoint? https://github.com/ruby/set/commit/35b69e9d69 commit cafa7d897554320b5194f5d71d6a3936f954b484 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-16 07:14:54 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 14:18:18 +0900 [ruby/set] Allow the use of any enumerable in intersect?/disjoint? https://github.com/ruby/set/commit/1a73ab9047 commit 571dafdc7f57af067706fbc318a64778f4fc218a Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-16 03:08:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-29 14:18:10 +0900 [ruby/set] Allow Set#intersect? and #disjoint? to accept array argument Implements [Feature #17838] https://github.com/ruby/set/commit/d9b389bafa commit 27fb9d272daaae89089dfb61849ebe8e7aa6c833 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-29 13:49:35 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-07-29 13:51:43 +0900 test/socket/test_socket.rb: skip on Solaris The test fails on Solaris 10. Maybe due to the IPv6 configuration on the server, but I have no idea at all. I've asked @ngoto to investigate the issue, so will tentatively skip the tests on Solaris http://rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20210729T040002Z.fail.html.gz commit 64adeeadaa8d7fe210d0605eb6c9b0b1dcf49746 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-07-29 12:51:10 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-07-29 12:51:10 +0900 Add RBOOL macro and use it Notes: Merged: https://github.com/ruby/ruby/pull/4677 Merged-By: nobu <nobu@ruby-lang.org> commit 656b49ec475c454c6cfb81a2d2fee9e7314f69fa Author: Soutaro Matsumoto <matsumoto@soutaro.com> AuthorDate: 2021-07-29 10:49:09 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-07-29 10:49:09 +0900 Bundle RBS 1.3.3 (#4688) Notes: Merged-By: soutaro <matsumoto@soutaro.com> commit f06f1981e2cca07227c8af13292c754c0417a74f Author: Peter Zhu <peter.zhu@shopify.com> AuthorDate: 2021-07-29 02:11:27 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-07-29 02:51:22 +0900 Don't export rb_gc_ractor_newobj_cache_clear Notes: Merged: https://github.com/ruby/ruby/pull/4690 commit fa0279d947c3962c3f8c32852278d3ebb964cb19 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-07-28 13:40:30 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-07-29 00:56:48 +0900 should not share same `def` for specialized method Because the key of redefine table is `def`, `def` should be unique for each optimized method (`alias` is not allowed). Notes: Merged: https://github.com/ruby/ruby/pull/4493 commit fb4cf204a662a8cd9dafef6f31f2bd0db9129abe Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-05-13 03:10:18 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-07-29 00:56:48 +0900 use me->def instead of me for opt_table `vm_opt_method_table` is me=>bop table to manage the optimized methods (by specialized instruction). However, `me` can be invalidated to invalidate the method cache entry. [Bug #17725] To solve the issue, use `me-def` instead of `me` which simply copied at invalidation timing. A test by @jeremyevans https://github.com/ruby/ruby/pull/4376 Notes: Merged: https://github.com/ruby/ruby/pull/4493 commit 7af750af8e718acf962578af988883ead55135b3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-29 00:51:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-29 00:51:10 +0900 * 2021-07-29 [ci skip] commit 3b9fe3e15a352c8e3b81fd640e076fe4b6c375a0 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-29 00:45:26 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-29 00:48:01 +0900 Handle Timeout::Error instead of NoMemoryError in test Solaris 11 CI times out instead of raising NoMemoryError for large allocations, so it cannot test ensure after NoMemoryError. commit d04ba0906c35013a8432535168eec270d6e9a913 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-07-28 22:54:24 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-07-28 22:54:24 +0900 Update bundled_gems commit 0dcae3bd4aa69a78d095125e4d6f73c63968fa53 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-28 20:13:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:39 +0900 Support document sync for optparse commit 23ef32665689e43c200fb6ad9f14934a752d47b5 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-28 15:24:19 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:39 +0900 Manually picking https://github.com/ruby/optparse/pull/14 commit 3026ee56b15ad983ebbff625273256dddf5ac48d Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-23 20:04:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:39 +0900 [ruby/optparse] Remove an errant { character (https://github.com/ruby/optparse/pull/26) https://github.com/ruby/optparse/commit/47417f1b4c commit c4556a2022fbb63fe2821027ea6915faf21e87be Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-23 04:22:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:39 +0900 [ruby/optparse] Fix link in included file https://github.com/ruby/optparse/commit/bf03038d95 commit 1333620afd1a7ffcca7cb593798d8186629c76bb Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-22 22:48:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:39 +0900 [ruby/optparse] More on tutorial (https://github.com/ruby/optparse/pull/24) - Adds section "Parsing" to tutorial.rdoc. - Removes section "Terminators" from option_params.rdoc. (Terminator '--' is not an option parameter.) https://github.com/ruby/optparse/commit/40d51ccbad commit 27679b349e453b5ab1ce31472389bcb7ce550e4e Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-22 21:27:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:39 +0900 [ruby/optparse] More on tutorial (https://github.com/ruby/optparse/pull/23) - Removed a largish block of repeated text. - Added sections "Top List and Base List" and "Methods for Defining Options" (on, define, etc.). - Linked from class OptionParser doc to the tutorial. https://github.com/ruby/optparse/commit/7f3195b9db commit a10db32003320a81c32a3733d9d97ba6e3614efa Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-16 12:57:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:39 +0900 [ruby/optparse] Removed a duplicate section https://github.com/ruby/optparse/commit/7ef3d89e78 commit 98ccb49ac3bea0e2233d2b3f642a3e0579801988 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-15 23:32:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:39 +0900 [ruby/optparse] More on tutorial (https://github.com/ruby/optparse/pull/22) Adds argument abbreviation in option_params.rdoc. Adds entire Argument Values section to tutorial.rdoc. https://github.com/ruby/optparse/commit/9c5b3f244b commit 43af561e0878ca856513edd3db56ce7dff8e7fe3 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-13 10:33:19 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:39 +0900 [ruby/optparse] Rdoc for help (https://github.com/ruby/optparse/pull/21) https://github.com/ruby/optparse/commit/d07cb96a96 commit a15f0b9fe24c3488ca69171c147a8648b55c8fbc Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-12 13:43:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:39 +0900 [ruby/optparse] Tutorial: explain custom argument converters (https://github.com/ruby/optparse/pull/19) https://github.com/ruby/optparse/commit/385dd4322d commit bf175e7ec20a1ea3e81b906074a6829b9cc34335 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-12 02:02:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:38 +0900 [ruby/optparse] nodoc private methods https://github.com/ruby/optparse/commit/f23d750d14 commit 311eb328c8e95706276019cc38dd0616997629cf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-12 00:38:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:38 +0900 [ruby/optparse] Fixed mismatched <tt> tag https://github.com/ruby/optparse/commit/7e65ef3cfa commit a4631a427367766517c8920d323dcd96a835b06c Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-07 23:01:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:38 +0900 [ruby/optparse] Enhanced doc for option parameters (https://github.com/ruby/optparse/pull/11) https://github.com/ruby/optparse/commit/5618eeb49e commit 05e9efa323eb99727b099590c1d40d23f38443ef Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-07 03:55:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:38 +0900 [ruby/optparse] More on tutorial (https://github.com/ruby/optparse/pull/9) * More on tutorial * More on tutorial * More on tutorial * More on tutorial: clearer example output https://github.com/ruby/optparse/commit/84dfd92d2a commit 8844eba4882e2a1627d26ea54a481b582640f739 Author: BurdetteLamar <burdettelamar@yahoo.com> AuthorDate: 2021-03-30 04:03:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 20:13:38 +0900 [ruby/optparse] Beginnings of tutorial https://github.com/ruby/optparse/commit/f209276f79 commit 59a65f2d2402e0d34d9232236f152d62e74f9483 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-07-28 19:26:31 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-07-28 19:26:31 +0900 Update to latest uri * https://github.com/ruby/uri/commit/bc47bf71df2b2e9cea09d0b2684ceac7355e42a0 * To include the fix from https://github.com/ruby/uri/pull/27 commit 71945ad827efe0bf62bbf87b5528206aabbd4022 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-28 19:08:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-28 19:08:05 +0900 Fix a comment [ci skip] commit 342dbd4f4e1ebfb31284a087f10232ea684b66a0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-28 16:58:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-28 16:58:25 +0900 Remove duplicate declarations Also defined in include/ruby/internal/core/rarray.h which always will be included. commit b3d62a77d928eff01268ca7fa1c1c0966702926d Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-16 07:27:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 13:40:03 +0900 [ruby/zlib] Synchronize access to zstream to prevent segfault in multithreaded use I'm not sure whether this handles all multithreaded use cases, but this handles the example that crashes almost immediately and does 10,000,000 total deflates using 100 separate threads. To prevent the tests from taking forever, the committed test for this uses only 10,000 deflates across 10 separate threads, which still causes a segfault in the previous implementation almost immediately. Fixes [Bug #17803] https://github.com/ruby/zlib/commit/4b1023b3f2 commit 218c3b25480d7de904a24d4508e7135c160eb871 Author: Marcus Stollsteimer <sto.mar@web.de> AuthorDate: 2020-01-10 04:42:48 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 13:35:36 +0900 [ruby/readline] Improve the gem's description Improve the language in the gem's summary and description; also remove U+00A0 (no-break space) characters from post-install box. https://github.com/ruby/readline/commit/5037cf7ffc commit 5b574b40a98c02b5cc29a71d03eb1018a118b47f Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-06-03 19:35:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 13:32:33 +0900 [ruby/resolv-replace] gemspec: Drop executables directive This gem exposes no executables. https://github.com/ruby/resolv-replace/commit/fa405185f7 commit 51321985fb22117149634c8960650540e3966b06 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-01 11:37:03 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 13:32:33 +0900 [ruby/resolv] Bump version to 0.2.1 https://github.com/ruby/resolv/commit/095f1c003f commit 0663134ad115e6ba67913555c558392edfc57205 Author: Olle Jonsson <olle.jonsson@auctionet.com> AuthorDate: 2021-06-03 22:10:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 13:32:33 +0900 [ruby/getoptlong] RDoc: escape to avoid links to the word Set We would like to avoid linking to the Set class for these words. https://github.com/ruby/getoptlong/commit/33b56d6141 commit eb3a7eda5e2722a7f59a610de544039aedc38f3b Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-06-03 19:48:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 13:32:32 +0900 [ruby/getoptlong] gemspec: Drop executables directives This gem exposes 0 executables. https://github.com/ruby/getoptlong/commit/4522163cbd commit 345db8f2aa373a31c619c8f85bd372f0a20829c1 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-28 05:55:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-28 12:29:45 +0900 Avoid pointless attempts to open .so file if already required When attempting to require a file without an extension that has already been required or provided with an .so extension, only look for files with an .rb extension. There is no point in trying to find files with an .so extension, since we already know one has been loaded. Previously, attempting to require such a file scanned the load path twice, once for .rb and once for .so. Now it only scans once for .rb. The scan once for .rb cannot be avoided, since the .rb file would take precedence and should be loaded if it exists. Fixes [Bug #10902] Notes: Merged: https://github.com/ruby/ruby/pull/4687 commit 30d0e5d1ae4ee4a3c145ca4bdacaad5b09c49bb7 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-01 21:15:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 11:48:36 +0900 [ruby/digest] Also drop to support Ruby 2.4 https://github.com/ruby/digest/commit/360a7de366 commit 260546ba26affaa6f8443060275cc436ad582908 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-01 21:08:26 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 11:48:36 +0900 [ruby/digest] Use Gemfile instead of Gem::Specification#add_development_dependency https://github.com/ruby/digest/commit/460a6f807e commit 5b96f4dd8c8cf3d79be07a3cd3faa8520307a591 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-01 21:07:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 11:48:36 +0900 [ruby/digest] Drop to support Ruby 2.3 https://github.com/ruby/digest/commit/23dc9c7425 commit be4b0eee1980612f74314e5066d264b661aad040 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-01 20:55:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 11:48:36 +0900 [ruby/digest] Use pend instead of skip https://github.com/ruby/digest/commit/82fb618157 commit 26e859b5c7e9481b070dbd38dbf82d53e59d08c3 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-01 23:10:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 11:48:36 +0900 [ruby/digest] gemspec: Avoid distributing extraneous files https://github.com/ruby/digest/commit/0a451e0c94 commit add48acea31560997796c0e7f2541cfbec93b44f Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-01 23:13:58 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 11:48:36 +0900 [ruby/digest] gemspec: Explicitly have 0 executables https://github.com/ruby/digest/commit/086d54ba94 commit 478f0ddb5f37085588485d3d00024a146af7bc44 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-06 19:39:24 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 11:48:36 +0900 [ruby/digest] Experiment: Use a .pre version in gemspec This makes it slightly more explicit that this is not a definite new version. https://github.com/ruby/digest/commit/2bb5bb78a3 commit 73c5d4d54e817e2a8366c8e32a5250b29c3c25f9 Author: Olle Jonsson <olle.jonsson@auctionet.com> AuthorDate: 2021-04-02 00:33:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-28 11:48:36 +0900 [ruby/digest] Experiment: bump patch version This is a test, to see if the build failures are about the shipped Ruby master version of this gem. https://github.com/ruby/digest/commit/d2606b2cce commit 42ea359a0ccea15dda3559efdd2f60ec36289868 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-28 11:43:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-28 11:43:54 +0900 Suppress "possibly useless use of * in void context" warning commit 6505c77501f1924571b2fe620c5c7b31ede0cd22 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-28 11:05:36 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-07-28 11:05:36 +0900 Revert "Fix potential hang when joining threads." This reverts commit 13f8521c630a15c87398dee0763e95f59c032a94. http://rubyci.s3.amazonaws.com/solaris11-gcc/ruby-master/log/20210727T230009Z.fail.html.gz http://rubyci.s3.amazonaws.com/solaris11-sunc/ruby-master/log/20210728T000009Z.fail.html.gz This revert is to confirm whether the commit is the cause. If the failures consistently occur after this revert, I'll reintroduce the commit. commit 4fc9ddd7b6af54abf88d702c2e11e97ca7750ce3 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-28 04:30:43 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-28 04:30:43 +0900 Update Capturing and Anchors sections of regexp documention Document that only first 9 numbered capture groups can use the \n backreference syntax. Document \0 backreference. Document \K anchor. Fixes [Bug #14500] commit 35e467080ca35a9a129e95f802f102c3bc0a81b3 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-27 02:45:56 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-28 03:00:45 +0900 Make Float#floor with ndigits argument handle error The previous implementation could result in a returned float that is 1/(10**ndigits) too low. First try adding one before dividing, and if that results in a value that is greater than the initial number, then try the original calculation. Spec added for ciel, but the issue doesn't appear to affect ciel, at least not for the same number. If the issue does effect ciel, a similar fix could probably work for it. Fixes [Bug #18018] Notes: Merged: https://github.com/ruby/ruby/pull/4681 commit 338b604b3216b633d0fc897a915168104f20a514 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-28 02:48:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-28 02:48:15 +0900 * 2021-07-28 [ci skip] commit a6dc48f86a8ee7b1f713105b5c7136824d6b5720 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-17 02:23:11 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-28 02:47:53 +0900 Fix infinite loop in ensure after NoMemoryError VM patch from wanabe. Test based on example from buzztaiki (Taiki Sugawara). Test fails when compiles with -DRUBY_DEBUG, as that can can use rb_bug instead of NoMemoryError, which doesn't allow testing this case. Test also fails on MingW, as RangeError is used instead of NoMemoryError. Skip the test in either case. Fixes [Bug #15779] Notes: Merged: https://github.com/ruby/ruby/pull/4577 commit 230111802c2b9dcb8f391b489ff52a9dc0b41b87 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-18 01:09:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 21:20:31 +0900 [ruby/find] Add Errno::EINVAL to list of ignored errors This error can occur on Windows for certain filenames on certain code pages. Fixes [Bug #14591] https://github.com/ruby/find/commit/0a474d1027 commit acfec23becaa15936a00305f5742e74012b33e82 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-27 18:49:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-27 18:49:28 +0900 Remove probably unintented symlinks commit 26b1e6fca8f2c9e02e7b5d26fb35a16f3e7a66a3 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-27 18:12:24 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-27 18:14:20 +0900 Deal with Unicode ranges in the file emoji-sequences.txt Detect Unicode ranges and loop over them. This fixes issue #18028. commit c3d31377b36b905779683ef22e4c27d25ddaa037 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-27 18:00:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 18:00:32 +0900 Bump unicode version for Ruby 3.1 commit 6656309fe22b799016f3bc20a5f466da543a44c0 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-27 17:34:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 17:34:13 +0900 Fix test failure for parallel testing commit b875a85c5367b9dff96e1ca1e78a2e35580a2f80 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-27 17:20:54 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 17:33:18 +0900 Added missing require for URI::WS class commit 3010b4047727a17fe5b09df15ee3ea1b7efc2cc1 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-27 17:05:06 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-27 17:10:49 +0900 Adjust test/ruby/enc/test_emoji_breaks.rb to handle Emoji Version 13.1 Deal with the issue that the emoji files in emoji/13.1 have Unicode Emoji version 13.1, but at the same time the files in 13.0.0/ucd/emoji are still at Emoji version 13.0. Specifically: - Add a version attribute to TestEmojiBreaks::BreakFile - Take the version for emoji-variant-sequences.txt from the Unicode version, removing the last two characters. - Improve information in exceptions for file name and version mismatches. commit 01e98d87853bd612e6ac03a517cb60b077f5339c Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-27 15:01:34 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-27 17:10:49 +0900 Change Unicode Emoji Version from 13.0 to 13.1 commit d3d68aa842b2071a10d70460ad99b79d145b74d8 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-25 14:54:12 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 16:57:03 +0900 [ruby/uri] User assert_ractor for test case of Ractor https://github.com/ruby/uri/commit/bbf8b44dba commit 1cf111774f03c6d1ddba735cb8cc79483f16f699 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-06-25 20:38:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 16:54:27 +0900 [ruby/uri] Add proper Ractor support to URI * Using a module to map scheme name to scheme class, which also works with Ractor. * No constant redefinition, no ObjectSpace, still fast lookup for initial schemes. https://github.com/ruby/uri/commit/883567fd81 commit 090d799c2496f4c0e1f25c9970f4015fc693ff0e Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-06-25 20:24:56 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 16:54:26 +0900 [ruby/uri] Revert "Fix to support Ruby 3.0 Ractor" * This reverts commit 1faa4fdc161d7aeebdb5de0c407b923beaecf898. * It has too many problems, see https://github.com/ruby/uri/pull/22 for discussion. https://github.com/ruby/uri/commit/b959da2dc9 commit a288c21a5d46418e75c0f03eb12ff0782e51568d Author: kvokka <kvokka@yahoo.com> AuthorDate: 2021-05-29 19:29:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 16:54:26 +0900 [ruby/uri] Fix to support Ruby 3.0 Ractor https://github.com/ruby/uri/commit/1faa4fdc16 commit 82191da2a28c8da0f1049ca6d814c9da992c39a1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-27 09:28:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-27 15:40:27 +0900 Predefine recursive key ID Notes: Merged: https://github.com/ruby/ruby/pull/4684 commit 03e7fc895e9dbe420cad192f1ba679df558640dd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-27 09:27:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-27 15:40:27 +0900 Extracted repeatedly defined IDs Notes: Merged: https://github.com/ruby/ruby/pull/4684 commit 537e8245613e8f4ccf62f856dd1dff4a012ed395 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-27 09:23:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-27 15:40:27 +0900 Don't redefine #rb_intern over and over again Notes: Merged: https://github.com/ruby/ruby/pull/4684 commit 6329da588b5a27834e3a73c1e08bf54356033757 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-27 09:20:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-27 15:40:27 +0900 Use predefined IDs Notes: Merged: https://github.com/ruby/ruby/pull/4684 commit 0754cc4888bf96c77504c385d7aab0068202aa8f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-27 09:11:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-27 15:40:27 +0900 Added intern_ids.rb Notes: Merged: https://github.com/ruby/ruby/pull/4684 commit 13f8521c630a15c87398dee0763e95f59c032a94 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-07-19 16:21:46 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-07-27 15:23:30 +0900 Fix potential hang when joining threads. If the thread termination invokes user code after `th->status` becomes `THREAD_KILLED`, and the user unblock function causes that `th->status` to become something else (e.g. `THREAD_RUNNING`), threads waiting in `thread_join_sleep` will hang forever. We move the unblock function call to before the thread status is updated, and allow threads to join as soon as `th->value` becomes defined. Notes: Merged: https://github.com/ruby/ruby/pull/4660 commit cd49940cff39601ff573add7cbcc8e80a54ad5f2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-27 14:55:20 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-07-27 14:55:20 +0900 Run in a separated process to run finalizers certainly Notes: Merged: https://github.com/ruby/ruby/pull/4685 Merged-By: nobu <nobu@ruby-lang.org> commit 2de7c29b378598fd300e55c3f6b9a7121e7dcf5e Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-27 13:41:10 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-07-27 13:41:58 +0900 test/ruby/test_parse.rb: Prevent an "unused variable" warning commit 2d0a1e5f610be3230e0f5e4ab9650fef610fd342 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-27 12:30:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-27 12:30:06 +0900 Try GC more during suppressing the warning commit ed51e8b8fa9f7e811e69de30f7695dc2242e8e69 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-27 11:47:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-27 11:47:11 +0900 Make GCed during suppressing the warning Consume the VM stack more, to make the target object get GCed with more probability during suppressing the warning. commit 5b27c1a15be378bf9a4509618c4a35f337e886f2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-27 09:57:09 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-27 09:57:09 +0900 * 2021-07-27 [ci skip] commit bd8daa8523ef13e49cf91110fad14a2aff36cb57 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-07-25 13:16:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:57 +0900 [rubygems/rubygems] Remove the warning for not defining a gem server source Bundler has deprecated gemfiles without a global source and this feature is now obsolete. `Bundler::Definition#has_rubygems_remotes?` is removed because it's not used anymore. https://github.com/rubygems/rubygems/commit/d29dd2cb7b commit 49176e8c8cc9a0f68810736663dc9c9a3cb3b774 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-07-24 23:42:24 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:57 +0900 [rubygems/rubygems] Refactor Bundler::Dsl#check_rubygems_source_safety to improve readability `check_rubygems_source_safety` is responsible for: 1. if there are multiple global sources - for bundle 3.x raise an error - for bundle 2.x print a warning 2. print a warning if there is no explicit global source The second responsibility was added recently and now the logic could be extracted to improve readability. Conditions are still live in the `check_rubygems_source_safety` method since we don't want to call both functions always and that would help us achieve that. https://github.com/rubygems/rubygems/commit/f3d7e946ee commit 1ef360230ec0bf078124a3001ef2e1ae7886e236 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-07-24 16:25:48 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:57 +0900 [rubygems/rubygems] Deprecate Gemfile without an explicit global source Raise a warning when parsing a Gemfile and it doesn't have a global source. Gemfiles like this, specially now that rubygems sources are are no longer merged into a single source for security, are very confusing because they generate a different lockfile depending on the gems you have locally installed. This is because bundler always use an implicit global source that defaults to locally installed gems. https://github.com/rubygems/rubygems/commit/b7523ad21c commit 2f9e0cf1819b8679abe79494f622e1a42d7e021d Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-07-25 00:27:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:57 +0900 [rubygems/rubygems] Explicitly define a global source for tests This is in preparation for deprecating source-less gemfiles. https://github.com/rubygems/rubygems/commit/d6493fa3e2 commit b500e8fab445d5a4ad91fd71e622aff88d0c7dd6 Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-07-24 16:25:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:57 +0900 [rubygems/rubygems] Implement Bundler::SourceList#implicit_global_source? This method is created to tell whether any global source exist in the object or not and it will be used by `Bundler:Dsl` to print a warning if no global source has been defined in the Gemfile. https://github.com/rubygems/rubygems/commit/422fec4438 commit 91a3f06e98682078493a9501bdbd1302673ad96b Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-07-24 16:21:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:56 +0900 [rubygems/rubygems] Implement Bundler::Source::Rubygems#no_remotes? This method is created to tell whether any remote exist in the object or not and it will be used by `Bundler:SourceList` to tell if a global source has been defined implicitly or not. https://github.com/rubygems/rubygems/commit/47e3ff0e47 commit 095b5bbcc168f324588d42d4ef233b446ed9f860 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-25 23:10:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:56 +0900 [rubygems/rubygems] Lazily load shellwords https://github.com/rubygems/rubygems/commit/ef6388656a commit 350f4a0b66db6f056af5d75fb0b98d31628a841d Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-25 23:12:03 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:56 +0900 [rubygems/rubygems] Rubygems doesn't need to load the `base64` library https://github.com/rubygems/rubygems/commit/fe723c0f7f commit 960023ff54c658b8ccdd58d9ce296e6d07b3254c Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-25 23:11:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:56 +0900 [rubygems/rubygems] Rubygems doesn't need to load the `resolv` library https://github.com/rubygems/rubygems/commit/8bf41f53cc commit 9cddc0ec94806b9f6850e0206f5cefd5ca5e5362 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-25 23:11:18 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:56 +0900 [rubygems/rubygems] Lazily load `shellwords` library https://github.com/rubygems/rubygems/commit/e5532ef886 commit 9ac89fe35e0ddbf28be436c275e1de5287e35c23 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-25 20:03:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:56 +0900 [rubygems/rubygems] The `--quiet` should still display warnings The is the previous intentional behaviour until https://github.com/rubygems/bundler/commit/ca0676cb1c638e0b9747ea8c18f28adf82cc01de. In my opinion, that previous behaviour was better and should be restored, because we want our users to always see warnings and fix them. And the original issue that motivated the change is fixable by other means, namely through `BUNDLE_SILENCE_ROOT_WARNING`, or through `BUNDLE_SILENCE_DEPRECATIONS` in general. Finally, the --quiet option is still documented as "only print errors and warnings". So this PR essentially reverts https://github.com/rubygems/bundler/commit/ca0676cb1c638e0b9747ea8c18f28adf82cc01de for the above reasons. https://github.com/rubygems/rubygems/commit/35f2254dfc commit 24aca87def4944ebb6bf9e7173dd41920dc10e7a Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-25 19:35:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:56 +0900 [rubygems/rubygems] Make `--quiet` spec independent on the specific warning We'll be removing the warning about no gem sources, so this spec will no longer test that warnings are hidden by `--quiet`. Test that in another way so that we don't lose the coverage when we drop the specific warning about no gem server sources. https://github.com/rubygems/rubygems/commit/cce4f86d28 commit 803c60858e42463d33a00950883b17b1c38a2347 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-04 10:38:43 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:56 +0900 [rubygems/rubygems] Check requirements classes Mitigate the security risk: https://devcraft.io/2021/01/07/universal-deserialisation-gadget-for-ruby-2-x-3-x.html https://github.com/rubygems/rubygems/commit/141c2f4388 commit 88e46cf6b83e2ca701cf122756fef9bc2550e845 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2019-12-06 03:03:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:56 +0900 [rubygems/rubygems] Remove all `syck` traces from `rubygems` After reading [this blog post](https://blog.rubygems.org/2011/08/31/shaving-the-yaml-yak.html), published almost 10 years ago already, my understanding is that this problem could come up in two ways: * Rubygems.org serving corrupted gemspecs". As far as I understand this was fixed in rubygems.org a lot time ago, since https://github.com/rubygems/rubygems.org/pull/331. * Clients having a ten years old gemspec cache with some of these bad gemspecs. In this case, there's no easy solution but I think ten years is enough and rebuilding the cache should do the trick. So, I think it's time we remove this. https://github.com/rubygems/rubygems/commit/afcb15d556 commit 6bcedabfdde74a21b8e1c93ec639afbb9698474b Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-23 22:53:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:55 +0900 [rubygems/rubygems] Remove `gem install` hint when installing a gem fails A fresh `gem install` might not reproduce the exact `bundle install` environment that originally caused the error. It also makes it harder for the user to troubleshoot the error since she needs to run a separate command. Instead, show the original error and backtrace directly. https://github.com/rubygems/rubygems/commit/49c2abfec6 commit 6eb6f740f2c87ed7400b7423d2e80999232e66ff Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-01-11 22:47:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:55 +0900 [rubygems/rubygems] Show a backtrace in case gem installation fails For example, due to extension compilation issues. https://github.com/rubygems/rubygems/commit/adbe55bb6a commit 4271f4aea5a49775cb904beffeda8d0c37ddbe64 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-22 18:35:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:55 +0900 [rubygems/rubygems] Fix bundler binstub version selection To mimic built-in rubygems behaviour, only thing that should be approximated is the lockfile version. Other alternatives like `BUNDLER_VERSION` should be respected exactly. https://github.com/rubygems/rubygems/commit/dbd667d4bc commit 90899c50c2890a70e7ce812a41f88b878ec50adc Author: Daniel Niknam <mhmd.niknam@gmail.com> AuthorDate: 2021-07-22 00:02:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:55 +0900 [rubygems/rubygems] Remove LoadError message in regards to requiring a relative file Ruby 1.9.2 removed "." from LOAD_PATH for robustness and security reasons. This code was introduced by https://github.com/rubygems/rubygems/commit/56fc830e19a573a5905eba7f4714ad1f21ed1927 commit to helping users understand the issue and had a guard condition to include the message for `RUBY_VERSION >= "1.9"`. However, the guard condition was removed as part of the "Ruby version leftover" cleanup by https://github.com/rubygems/rubygems/commit/8c9cf76e419fbd8ba83144d701b24ca388813b14 Ruby 1.9 development was ended a long time ago and this message is not useful anymore. https://github.com/rubygems/rubygems/commit/a23609b15a commit 705b1bdef2caf1bee052384b3c62c201f4fa5479 Author: Andrew Haines <andrew@haines.org.nz> AuthorDate: 2021-07-15 19:36:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-27 09:25:55 +0900 [rubygems/rubygems] Fix interrupt handling in Bundler workers The existing interrupt handling using `SharedHelpers.trap` fails when the previous handler for a signal is not callable (for example, when it is the string "DEFAULT"). Instead, we now handle interrupts by aborting the process when worker threads are running, and restore the previous handler after worker threads are finished. Fixes https://github.com/rubygems/rubygems/pull/4764. https://github.com/rubygems/rubygems/commit/b9f455d487 commit c8172d0b96aa91b421e77ca0bedc3f12ad8c5fdc Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-07-26 20:24:38 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-07-26 20:24:38 +0900 rb_iterate is no longer used in ruby/spec commit b8386f7f7f6d7a7d76481e02d389d0f5211f0f2c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-26 15:43:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-26 15:44:40 +0900 Prepend DebugSystem to VCS class only And revert 24e5f1c982966c379220b1bbb26b4e0320180fa1, pepending to Kernel did not affect the top level methods before 3.0. commit 24e5f1c982966c379220b1bbb26b4e0320180fa1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-26 14:17:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-26 14:17:30 +0900 Ignore 7z unless available `DebugSystem#system` is prepended in vcs.rb and defaulted to `exception: true`. commit 165a098ffce1b74d83d98d93acd3178b900de9bc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-26 05:09:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-26 05:09:20 +0900 * 2021-07-26 [ci skip] commit 070557afc4ca83876b951fe090806b59e3867ae5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-02-06 09:14:40 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-26 05:09:03 +0900 Distinguish signal and timeout [Bug #16608] Notes: Merged: https://github.com/ruby/ruby/pull/4256 commit 8897098b5ca3ce987307d1799f7765e6a279ff0d Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-07-25 20:58:58 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-07-25 20:58:58 +0900 Update bundled_gems commit 02facb86da27ccfd30d65e7bcc1c69ea9823ef05 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-25 20:07:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-25 20:07:55 +0900 * 2021-07-25 [ci skip] commit b360588cd3cbac5fb4f004aa53a8fdc715906719 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-13 01:03:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-24 23:59:07 +0900 Sort feature index arrays by the priority of file types [Bug #15856] When looking for libraries to load with a feature name without extension, `.rb` files are given priority. However, since the feature index arrays were not in that order of priority, but in the order in which they were loaded, a lower priority extension library might be returned. In that case, the `.rb` file had to be searched for again from the `$LOAD_PATH`, resulting in poor performance. Notes: Merged: https://github.com/ruby/ruby/pull/4679 commit 971d24cd97ecf0fea542071af5ef3b134eeb4a6b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-24 17:58:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-24 17:58:57 +0900 * 2021-07-24 [ci skip] commit eec45a93effe69a821960839760b9e39be1ebc63 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-24 14:24:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-24 14:31:41 +0900 Escape unprintable chars only, without surrounding quotes Notes: Merged: https://github.com/ruby/ruby/pull/4676 commit 8cc18703cfa7ff88b6ca51267e557fa2658a78fb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-23 12:41:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-23 12:43:51 +0900 [NEWS] added [Feature #17798] [ci skip] commit 53857313747d050ed8bca6b495255dc6b2a8f3cb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-23 12:41:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-23 12:41:01 +0900 [NEWS] adjusted formats [ci skip] commit 377995035a8ed42e4c0d5c84bb3c88c2d53dcf0a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-23 00:44:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-23 12:01:15 +0900 Suppress exception message in finalizer [Feature #17798] Notes: Merged: https://github.com/ruby/ruby/pull/4670 commit fc4dd45d0142221880d1b2c9b54dee0597be2b78 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-23 00:32:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-23 12:01:15 +0900 Show exception in finalizer [Feature #17798] Notes: Merged: https://github.com/ruby/ruby/pull/4670 commit 63e5f4df387ba24b561c304c56a2f4357de15fe3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-23 00:31:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-23 12:01:15 +0900 Access rb_execution_context_t::errinfo directly Notes: Merged: https://github.com/ruby/ruby/pull/4670 commit b726c4ee385dae6cd2d02712274890a4fe2c099a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-22 23:46:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-23 10:25:37 +0900 Use rb_equal It can be optimized and handles Qnil properly. Notes: Merged: https://github.com/ruby/ruby/pull/4669 commit 4da07ac2f3d79103cde83a7213d4f7d0a878fc62 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-22 23:21:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-23 10:25:37 +0900 Finalizers no longer store the safe level Notes: Merged: https://github.com/ruby/ruby/pull/4669 commit fc78a0890481e092ec9737c1ab3cbd4c32793eaa Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-23 03:13:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-23 03:13:31 +0900 * 2021-07-23 [ci skip] commit 86e0eecc843b937357edd8db33457e75e3494ab3 Author: manga_osyo <manga.osyo@gmail.com> AuthorDate: 2021-07-20 22:25:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-23 03:13:14 +0900 [ruby/irb] Fix https://github.com/ruby/irb/pull/256 Support int that follow on symbeg in IRB https://github.com/ruby/irb/commit/90cb27b1bd commit 62661dd9e4ce107eccb5aa6146f9295dd9b78179 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-07-22 22:28:05 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-07-22 23:10:23 +0900 Don't recompute the heap page We already page the page of the zombie calculated. Don't recalculate the page. Notes: Merged: https://github.com/ruby/ruby/pull/4668 commit 018f3961ae83ab48e40f8041cd4cfb543e9b1d1e Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-07-22 22:19:04 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-07-22 23:10:23 +0900 Don't set flags in finalize_list The call after it to `heap_page_add_freeobj` will set the flags. Notes: Merged: https://github.com/ruby/ruby/pull/4668 commit 75f60e5a460b96b3130fbc941ddcce86df0fc2da Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-22 11:25:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-22 15:41:42 +0900 Sort out quad_t related macros Notes: Merged: https://github.com/ruby/ruby/pull/4667 commit fc50b2eae5b1f73d7be790e7e864f810d2bebdc9 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-07-22 15:41:03 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-07-22 15:41:03 +0900 Remove unneeded function declarations Notes: Merged: https://github.com/ruby/ruby/pull/4665 Merged-By: nobu <nobu@ruby-lang.org> commit e4b68ab700b1e8fea162a63ea3c6e856442cc740 Author: Ulysses Zhan <2938747508@qq.com> AuthorDate: 2021-07-22 14:10:57 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-07-22 14:10:57 +0900 [DOC] Fixed the description of regexp alternations [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4661 Merged-By: nobu <nobu@ruby-lang.org> commit d6b8819b7939c2689a36f13ffae4e6d1442f5e3a Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-07-13 20:41:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-22 14:02:54 +0900 Refactor rb_proc_call_with_block function Notes: Merged: https://github.com/ruby/ruby/pull/4647 commit e882905d0d67acd4ab8996c8456e1a4285f34dee Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-07-11 13:56:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-22 14:02:23 +0900 Refactor sym_each_i function Notes: Merged: https://github.com/ruby/ruby/pull/4644 commit e3cda75436020d3f0b95576b3860908efc8630e2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-22 09:58:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-22 09:58:23 +0900 Remove useless casts commit a4e39112a8ef8871160defa0aa4a77d8b453ab0f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-20 23:21:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-22 09:52:29 +0900 Cast to size_t instead of int len and *retlen are size_t since r22957 (commit:4de12b6ae9a7fc1e28ada4b62291a78f28ae7528). commit 31144fe9876f5624e1fe7ed8f529e28fc4d65bdb Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-07-22 02:56:32 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-07-22 03:40:44 +0900 Change GC verification to walk all pages `gc_verify_internal_consistency_` does not walk pages in the tomb heap so numbers were off. This commit changes it to walk all allocated pages. Notes: Merged: https://github.com/ruby/ruby/pull/4666 commit f5f7010613ee404dfa670eda4fcde4ad24c39a39 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-22 02:06:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-22 02:06:59 +0900 * 2021-07-22 [ci skip] commit b940a453572b5c3ed5c0951647929e14f5843a7d Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-07-21 02:53:22 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-07-22 02:06:33 +0900 Fix interpolated heredoc This fixes https://bugs.ruby-lang.org/issues/18038. The provided reproduction showed that this happens in heredocs with double interpolation. In this case `DSTR` was getting returned but needs to be convered to a `EVSTR` which is what is returned by the function. There may be an additional bug here that we weren't able to produce. It seems odd that `STR` returns `DSTR` while everything else should return `EVSTR` since the function is `new_evstr`. [Bug #18038][ruby-core:104597] Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4664 commit fa308a683d507996ee68352753bbb1813dceff31 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-21 20:44:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-21 20:44:34 +0900 Update bundled_gems commit c25cf1eaaa886aaf510ebe92961daab716a6faef Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-21 20:44:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-21 20:44:13 +0900 Drop optional commit hash when updated commit 04b5e85bfda5ba281f2129d148c952eabc5e49a3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-20 19:54:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-21 19:32:18 +0900 Look up ruby_digit36_to_number_table Instead of scanning ruby_hexdigits. commit b2749e0026768f6a7968fc627ba50446632b8288 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-21 17:40:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-21 17:40:23 +0900 * 2021-07-21 [ci skip] commit 1c80e0e6b03d494b4f6e010aee5ee8a0db3c0766 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-21 16:28:04 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-21 16:28:04 +0900 Use typeprof supporting rbs 1.3 commit 42745ecae3ce95774f2fcc66467320471ca0460a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-20 19:33:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-20 21:45:11 +0900 Remove meaningless IO#close_on_exec= spec [Feature #17745] commit bc1323ce5c9388261a0cfe07137c8814428ea69f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-20 19:21:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-20 21:45:11 +0900 Use RB_INTEGER_TYPE_P commit 261dca2ee20b8f02d651642a79aef9869a69d587 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-17 19:49:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-20 20:36:19 +0900 [ruby/irb] Support non-English code page message https://github.com/ruby/irb/commit/e7d71fea46 commit 5e7675d442d968825fec100b915905a7706c981f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-20 14:47:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-20 14:47:50 +0900 * 2021-07-20 [ci skip] commit 2e6704304166d05014e89c1009d9c78c9e8d269a Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-07-20 14:46:46 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-07-20 14:46:46 +0900 Use UNREACHABLE instead of fall through commit 036f26a4e24d7e6e8de30aa7e3cedb19f7da88b0 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-07-19 17:21:45 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-07-19 17:21:45 +0900 Add `fall through` Pointed out by Coverity Scan ``` ** CID 1487522: Control flow issues (MISSING_BREAK) /error.c: 1273 in exc_full_message() ``` commit fa239e04792e4b83c551257bd24bcc3cad822bf8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-19 17:18:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-19 17:18:51 +0900 Remove unneeded quotes [ci skip] commit 95dd46138706121a1dee2cd1e7bf401bb315f771 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-19 11:32:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-19 11:59:42 +0900 [ruby/racc] Removed pre-setup from gemspec https://github.com/ruby/racc/commit/2f6f02e5c1 commit dbcfc8d49939593c6db541139bb8c62b54f4bb87 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-19 11:32:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-19 11:59:42 +0900 [ruby/racc] Removed needless files from gemspec https://github.com/ruby/racc/commit/d044ae883f commit b5b3cd27222a055500123fd59486dfedc7bbd824 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-19 11:28:10 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-19 11:59:41 +0900 [ruby/racc] Move document from library directory https://github.com/ruby/racc/commit/2e8d7d286d commit 7217f60bb344d2e97fb6bf3ae6cf29c7f5ca7dbf Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-19 11:22:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-19 11:54:35 +0900 [ruby/racc] Removed generate code from parser.rb. It's already migrated by rake task https://github.com/ruby/racc/commit/ec7d01980a commit ab2bd3ff35176031965613abfeb06a9c47e9eee1 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-19 10:57:56 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-07-19 10:57:56 +0900 test/openssl/test_x509cert.rb: Prevent "unused variable" warning commit 91ffce8f24336f2dabb4e8b9efc3fe11738deda4 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-30 13:39:45 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-07-19 10:34:38 +0900 [ruby/did_you_mean] Prevent "warning: ambiguity between regexp and two divisions" ``` test/did_you_mean/spell_checking/test_uncorrectable_name_check.rb:13: warning: ambiguity between regexp and two divisions: wrap regexp in parentheses or add a space after `/' operator ``` http://rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20210630T033005Z.log.html.gz#test-all https://github.com/ruby/did_you_mean/commit/842ede4186 commit bac5ec0f0610f203421b73a6197f91c9ff716156 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-19 07:43:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-19 07:43:56 +0900 * 2021-07-19 [ci skip] commit a541fe1a7593f95c5b7d36993cf3fba0ec525574 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-07-19 07:43:34 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-07-19 07:43:34 +0900 Doc guide for class/module (#4600) Co-authored-by: Marivaldo Cavalheiro <marivaldo@gmail.com> Notes: Merged-By: marcandre <github@marc-andre.ca> commit 8a6ef5ef8f4f14f1679bbab3a85fa05217e49a43 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-18 20:51:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-18 20:51:30 +0900 Make boolean expected messages more consitent commit 9b972310fafc0126ff8c27bdc514808dacea8fcc Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-07-07 01:23:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-18 20:38:34 +0900 [ruby/racc] Add missing check for rb_block_call() * It used to be hardcoded since 0affbf9d2c7c5c618b8d3fe191e74d9ae8ad22fc but got removed in 23abf3d3fb82afcc26d35769f0dec59dd46de4bb * This means that since that second commit, rb_iterate() was used unintentionally. https://github.com/ruby/racc/commit/8816ced525 commit 23c4b93e54d96717607c9b067fa167c31f928ec9 Author: Bruno Arueira <contato@brunoarueira.com> AuthorDate: 2021-06-18 07:42:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-18 20:38:28 +0900 [ruby/racc] Shrink gem size https://github.com/ruby/racc/commit/27e2a64e13 commit 56d983697fc7c40aa09526fd73cb4a2dd31637f0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-18 19:55:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-18 19:56:36 +0900 Constified a local table commit ab37e6ee7ef6d1da8a7b9b4722466d251ace4582 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-18 19:55:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-18 19:55:07 +0900 Adjust styles [ci skip] * --procnames-start-lines commit 803eb1ee83207cf66a6ffe010da85eea755e79fe Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-14 00:51:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-18 19:22:21 +0900 Get rid of type aliasing commit bd356c689918f53c282cd18eb48fb0ba028cc195 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-07-18 18:04:25 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 18:04:50 +0900 [ruby/openssl] Strip trailing spaces https://github.com/ruby/openssl/commit/68fa9c86f1 commit 3f1d8a18eac7d775e69b99f761e756f2abb60c12 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-19 10:47:16 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:48:49 +0900 [ruby/openssl] Deprecate and rework old (fd) centric functions [ky: fixed compatibility with older versions of Ruby] (cherry picked from commit ruby/ruby@45e65f302b663b2c6ab69df06d3b6f219c1797b2) https://github.com/ruby/openssl/commit/8d928e0fb9 commit 397584078006946ec3673d30b4810334c1a5f06d Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-07-07 02:25:22 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:48:49 +0900 [ruby/openssl] Use rb_block_call() instead of the deprecated rb_iterate() in OpenSSL * See https://bugs.ruby-lang.org/issues/18025 and https://github.com/ruby/ruby/pull/4629 https://github.com/ruby/openssl/commit/b8e4852dcc commit 11651ab703336744b47174568b168900dd4590e8 Author: Yusuke Nakamura <unasuke@users.noreply.github.com> AuthorDate: 2021-06-27 16:37:18 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:48:49 +0900 [ruby/openssl] Add example to OpenSSL::KDF.hkdf method (https://github.com/ruby/openssl/pull/447) The values from RFC 5869 https://datatracker.ietf.org/doc/html/rfc5869#appendix-A.1 https://github.com/ruby/openssl/commit/ec14a87f4f commit 70f0a802fee58b7795b81f0273cee1c9bf8b1bd3 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-06-25 20:27:14 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:48:42 +0900 [ruby/openssl] use Bundler for dependency management and Rake gem tasks Back in 2016, we chose not to use Bundler in Ruby/OpenSSL development because Bundler depended on openssl and could not be used for testing openssl itself - "bundle exec rake test" would end up with loading two different versions of openssl at the same time. This has been resolved long time ago. We can now safely use it for development dependency management and for Rake tasks. https://github.com/ruby/openssl/commit/47283d9161 commit 4f7c3f631a8afa3a7e990487ddd042a6124a6526 Author: Vinicius Stock <stock@hey.com> AuthorDate: 2021-02-26 08:18:44 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:45:03 +0900 [ruby/openssl] Include peer socket IP address in errors https://github.com/ruby/openssl/commit/8a1e3f5085 commit 3d37e5d11cdf02ed433493126e195e194d4000dc Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-02-16 18:21:51 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:45:02 +0900 [ruby/openssl] Add OpenSSL::BN#set_flags and #get_flags Also, OpenSSL::BN::CONSTTIME is added. OpenSSL itself had a feature that was vulnerable against a side-channel attack. The OpenSSL authors determined that it was not a security issue, and they have already fixed the issue by using BN_set_flags. https://github.com/openssl/openssl/pull/13888 If a Ruby OpenSSL user was faced with a similar issue, they couldn't prevent the issue because Ruby OpenSSL lacks a wrapper to BN_set_flags. For the case, this change introduces the wrapper. https://github.com/ruby/openssl/commit/1e565eba89 commit 5fc2912e60c2bc58ff486d3f23f654f742332d3f Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-07-10 13:51:18 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:45:01 +0900 [ruby/openssl] pkey/dsa: refactor DSA#sys{sign,verify} with PKey#{sign,verify}_raw With the newly added OpenSSL::PKey::PKey#{sign,verify}_raw, OpenSSL::PKey::DSA's low level signing operation methods can be implemented in Ruby. The definitions are now in lib/openssl/pkey.rb. https://github.com/ruby/openssl/commit/ce805adf0c commit 0c23e4a7aa5ff260281be07873eaeaebfa5d5155 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-07-10 13:43:20 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:45:00 +0900 [ruby/openssl] pkey/ec: refactor EC#dsa_{sign,verify}_asn1 with PKey#{sign,verify}_raw With the newly added OpenSSL::PKey::PKey#{sign,verify}_raw, OpenSSL::PKey::EC's low level signing operation methods can be implemented in Ruby. The definitions are now in lib/openssl/pkey.rb. https://github.com/ruby/openssl/commit/1f9da0cd9d commit 857a177b03dded0d56c395e979a35b9a27753e15 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-18 20:24:08 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:59 +0900 [ruby/openssl] pkey/rsa: port RSA#{private,public}_{encrypt,decrypt} to the EVP API Implement these methods using the new OpenSSL::PKey::PKey#{encrypt,sign} family. The definitions are now in lib/openssl/pkey.rb. Also, recommend using those generic methods in the documentation. https://github.com/ruby/openssl/commit/2dfc1779d3 commit 4ebff35971d499f4ddd13f48bff0444f77d63421 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-22 16:10:35 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:58 +0900 [ruby/openssl] pkey: implement PKey#sign_raw, #verify_raw, and #verify_recover Add a variant of PKey#sign and #verify that do not hash the data automatically. Sometimes the caller has the hashed data only, but not the plaintext to be signed. In that case, users would have to use the low-level API such as RSA#private_encrypt or #public_decrypt directly. OpenSSL 1.0.0 and later supports EVP_PKEY_sign() and EVP_PKEY_verify() which provide the same functionality as part of the EVP API. This patch adds wrappers for them. https://github.com/ruby/openssl/commit/16cca4e0c4 commit cbc560e38f9127c723f6b91734abbc0a1b0c14cc Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-05-25 18:43:29 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:58 +0900 [ruby/openssl] pkey: update version reference in #sign and #verify documentation The next release is decided to be 3.0 rather than 2.3. https://github.com/ruby/openssl/commit/b8a434e462 commit 87458ff2aecc3e054716271f3416d4a389d2352c Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-18 20:06:16 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:57 +0900 [ruby/openssl] pkey: implement PKey#encrypt and #decrypt Support public key encryption and decryption operations using the EVP API. https://github.com/ruby/openssl/commit/75326d4bbc commit eac7fd57f807cc9e0ec4307efcaa412b343971a5 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-05-25 17:31:08 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:56 +0900 [ruby/openssl] pkey: remove deprecated parameter setters Remove the following methods, which have been marked as deprecated and produced a warning since version 2.0, commit 7ea72f1f5084 ("adapt OpenSSL::PKey to OpenSSL 1.1.0 opaque structs", 2016-06-05). - OpenSSL::PKey::RSA#n=, #e=, #d=, #p=, #q=, #dmp1=, #dmq1=, #iqmp= - OpenSSL::PKey::DSA#p=, #q=, #g=, #priv_key=, #pub_key= - OpenSSL::PKey::DH#p=, #g=, #priv_key=, #pub_key= These methods could only work with OpenSSL 1.0.2 or older, which is now EOL. https://github.com/ruby/openssl/commit/2334862cc0 commit 1146a94aeea7d2ea1ead3bfcbddd0f4de696abe6 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-05-22 05:47:20 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:55 +0900 [ruby/openssl] Implement `Certificate.load` to load certificate chain. (https://github.com/ruby/openssl/pull/441) * Add feature for loading the chained certificate into Certificate array. https://github.com/ruby/openssl/commit/05e1c015d6 Co-authored-by: Sao I Kuan <saoikuan@gmail.com> commit a01daab656a3d32b52bd236503e3d9aebaf39483 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-05-19 17:58:18 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:54 +0900 [ruby/openssl] x509, ssl, pkcs7: try to parse as DER-encoding first Methods that take both PEM-encoding and DER-encoding have not been consistent in the order in which encoding to attempt to parse. A DER-encoding may contain a valid PEM block ("\n-----BEGIN ..-----" to "-----END ...-----") embedded within it. Also, the PEM-encoding parser allows arbitrary data around the PEM block and silently skips it. As a result, attempting to parse data in DER-encoding as PEM-encoding first can incorrectly finds the embedded PEM block instead. This commit ensures that DER encoding will always be attempted before PEM encoding. OpenSSL::X509::Certificate is one of the updated classes. With this, the following will always be true: # obj is an OpenSSL::X509::Certificate obj == OpenSSL::X509::Certificate.new(obj.to_der) obj == OpenSSL::X509::Certificate.new(obj.to_pem) https://github.com/ruby/openssl/commit/b280eb1fd0 commit 29ad4ab3d0407b99bbdad654b2138527859694cf Author: Ryuta Kamizono <kamipo@gmail.com> AuthorDate: 2021-04-26 00:31:08 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:54 +0900 [ruby/openssl] Fix some typos [ci skip] https://github.com/ruby/openssl/commit/51b3030b2b commit 593164c2bea634e33682a0095825ef17021a7433 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-04-16 08:53:47 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:53 +0900 [ruby/openssl] Add SSLSocket#getbyte Normal sockets respond to `getbyte`, so we should make SSLSocket respond to `getbyte` as well. This way we can substitute SSLSockets for regular sockets. https://github.com/ruby/openssl/commit/ac1490b7c9 commit 6d71918d94a6b34249015499e5e822d3b20fd10f Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-07-10 14:34:51 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:52 +0900 [ruby/openssl] pkey/dh, pkey/ec: use EVP_PKEY_check() family Use EVP_PKEY_param_check() instead of DH_check() if available. Also, use EVP_PKEY_public_check() instead of EC_KEY_check_key(). EVP_PKEY_*check() is part of the EVP API and is meant to replace those low-level functions. They were added by OpenSSL 1.1.1. It is currently not provided by LibreSSL. https://github.com/ruby/openssl/commit/797e9f8e08 commit 3fe8387950f83874372172a79233ffc0d5d335b0 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-15 19:11:32 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:51 +0900 [ruby/openssl] pkey: implement {DH,DSA,RSA}#public_key in Ruby The low-level API that is used to implement #public_key is deprecated in OpenSSL 3.0. It is actually very simple to implement in another way, using existing methods only, in much shorter code. Let's do it. While we are at it, the documentation is updated to recommend against using #public_key. Now that OpenSSL::PKey::PKey implements public_to_der method, there is no real use case for #public_key in newly written Ruby programs. https://github.com/ruby/openssl/commit/48a6c391ef commit 5d1693aac56bcae37e1f81af1f25966269c4619a Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-17 18:25:38 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:50 +0900 [ruby/openssl] pkey: implement #to_text using EVP API Use EVP_PKEY_print_private() instead of the low-level API *_print() functions, such as RSA_print(). EVP_PKEY_print_*() family was added in OpenSSL 1.0.0. Note that it falls back to EVP_PKEY_print_public() and EVP_PKEY_print_params() as necessary. This is required for EVP_PKEY_DH type for which _private() fails if the private component is not set in the pkey object. Since the new API works in the same way for all key types, we now implement #to_text in the base class OpenSSL::PKey::PKey rather than in each subclass. https://github.com/ruby/openssl/commit/e0b4c56956 commit 436aecb520e63f318ed515d0ca6c0b2cc6cc8115 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-05 00:39:04 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:50 +0900 [ruby/openssl] pkey: remove unused ossl_generate_cb_2() helper function The previous series of commits re-implemented key generation with the low level API with the EVP API. The BN_GENCB-based callback function is no longer used. https://github.com/ruby/openssl/commit/81027b7463 commit 38436d1f5cb03520a2a4acca81f013de1c20daa5 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-17 22:14:03 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:49 +0900 [ruby/openssl] pkey/dsa: use high level EVP interface to generate parameters and keys Implement PKey::DSA.new(size) and PKey::DSA.generate using OpenSSL::PKey.generate_parameters and .generate_key instead of the low level DSA functions. https://github.com/ruby/openssl/commit/1800a8d5eb commit b8dcf9c8fd7c093bfac003d6293315e2c9b1e46f Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-17 20:48:23 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:48 +0900 [ruby/openssl] pkey/rsa: use high level EVP interface to generate parameters and keys Implement PKey::RSA.new(size, exponent) and PKey::RSA.generate using OpenSSL::PKey.generate_key instead of the low level RSA functions. https://github.com/ruby/openssl/commit/363fd10713 commit 098985a5e66e4dd6b01d246909b66d3d7e4024c0 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-17 20:48:23 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:47 +0900 [ruby/openssl] pkey/dh: use high level EVP interface to generate parameters and keys Implement PKey::DH.new(size, gen), PKey::DH.generate(size, gen), and PKey::DH#generate_key! using PKey.generate_parameters and .generate_key instead of the low level DH functions. Note that the EVP interface can enforce additional restrictions - for example, DH key shorter than 2048 bits is no longer accepted by default in OpenSSL 3.0. The test code is updated accordingly. https://github.com/ruby/openssl/commit/c2e9b16f0b commit 595644e4f65f35e35f4c81e3aa228ac7d7f091d4 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-05 00:30:01 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:46 +0900 [ruby/openssl] pkey: fix interrupt handling in OpenSSL::PKey.generate_key rb_thread_call_without_gvl() can be interrupted, but it may be able to resume the operation. Call rb_thread_check_ints() to see if it raises an exception or not. https://github.com/ruby/openssl/commit/88b90fb856 commit 8cfe92b8a249465457ebef1d49b9e14a9fdaaddd Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-07-18 20:40:39 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:46 +0900 [ruby/openssl] pkey: allow setting algorithm-specific options in #sign and #verify Similarly to OpenSSL::PKey.generate_key and .generate_parameters, let OpenSSL::PKey::PKey#sign and #verify take an optional parameter for specifying control strings for EVP_PKEY_CTX_ctrl_str(). https://github.com/ruby/openssl/commit/faf85d7c1d commit e2014d03542b7d1a9d4a624f82fb94c9a8119fdb Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-02 23:58:48 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:45 +0900 [ruby/openssl] pkey: prepare pkey_ctx_apply_options() for usage by other operations The routine to apply Hash to EVP_PKEY_CTX_ctrl_str() is currently used by key generation, but it is useful for other operations too. Let's change it to a slightly more generic name. https://github.com/ruby/openssl/commit/b2b77527fd commit 1706302be51454c4c81ab06b771e8cad8879078e Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-06-12 14:12:59 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:44 +0900 [ruby/openssl] pkey: fix potential memory leak in PKey#sign Fix potential leak of EVP_MD_CTX object in an error path. This path is normally unreachable, since the size of a signature generated by any supported algorithms would not be larger than LONG_MAX. https://github.com/ruby/openssl/commit/99e8630518 commit b7a908af3420d12a6471c5f2d9cbae7faa4451b8 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-21 17:33:25 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:43 +0900 [ruby/openssl] ossl.c: do not set locking callbacks on LibreSSL Similarly to OpenSSL >= 1.1.0, LibreSSL 2.9.0 ensures thread safety without requiring applications to set locking callbacks and made related functions no-op. https://github.com/ruby/openssl/commit/7276233e1a commit 88d64418ddb77118b17c20a1455aa0c6341e077a Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-06 15:35:30 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:43 +0900 [ruby/openssl] ssl: use TLS_method() instead of SSLv23_method() for LibreSSL LibreSSL 2.2.2 introduced TLS_method(), but with different semantics from OpenSSL: TLS_method() enabled TLS >= 1.0 while SSLv23_method() enabled all available versions, which included SSL 3.0 in addition. However, LibreSSL 2.3.0 removed SSL 3.0 support completely and now TLS_method() and SSLv23_method() are equivalent. https://github.com/ruby/openssl/commit/3b7d7045b8 commit 50332c40710ab421318c97be0c6ca94b71d4fe58 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-06 15:24:42 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:42 +0900 [ruby/openssl] ssl: call SSL_CTX_set_ecdh_auto() on OpenSSL 1.0.2 only SSL_CTX_set_ecdh_auto() exists in OpenSSL 1.1.0 and LibreSSL 2.6.1, but it is made no-op and the automatic curve selection cannot be disabled. Wrap it with ifdef to make it clear that it is safe to remove it completely when we drop support for OpenSSL 1.0.2. https://github.com/ruby/openssl/commit/2ae8f21234 commit cd002305f0db447b47b54b93e1ecb3c666d37c06 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-04 23:14:44 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:41 +0900 [ruby/openssl] require OpenSSL >= 1.0.2 and LibreSSL >= 3.1 Clean up old version guards in preparation for the upcoming OpenSSL 3.0 support. OpenSSL 1.0.1 reached its EOL on 2016-12-31. At that time, we decided to keep 1.0.1 support because many major Linux distributions were still shipped with 1.0.1. Now, nearly 4 years later, most Linux distributions are reaching their EOL and it should be safe to assume nobody uses them anymore. Major ones that were using 1.0.1: - Ubuntu 14.04 is EOL since 2019-04-30 - RHEL 6 will reach EOL on 2020-11-30 LibreSSL 3.0 and older versions are no longer supported by the LibreSSL team as of October 2020. Note that OpenSSL 1.0.2 also reached EOL on 2019-12-31 and 1.1.0 also did on 2018-08-31. https://github.com/ruby/openssl/commit/c055938f4b commit decce40da7ee5180a4093f794eacc1dc5fe8e814 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-02 22:08:13 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:40 +0900 [ruby/openssl] bn: update documentation of OpenSSL::BN#initialize and #to_s Clarify that BN.new(str, 2) and bn.to_s(2) handles binary string in big-endian, and the sign of the bignum is ignored. Reference: https://github.com/ruby/openssl/issues/431 https://github.com/ruby/openssl/commit/6fae2bd612 commit 01fcb8f45b28d9b33e04c9b9873e47276faf5581 Author: Rick Mark <rick.mark@coinbase.com> AuthorDate: 2021-04-02 04:29:21 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-18 17:44:39 +0900 [ruby/openssl] BN.abs and BN uplus Adds standard math abs fuction and revises uplus to return a duplicated object due to BN mutability https://github.com/ruby/openssl/commit/0321b1e945 commit ed1e5663a4019291e2e8cb38f1630f007697bb6b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-18 12:40:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-18 12:40:58 +0900 * 2021-07-18 [ci skip] commit e0e12202c7688881b8fcdad96669ca0cd7be8622 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-18 11:40:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-18 11:40:21 +0900 Use rb_block_call() instead of the deprecated rb_iterate() commit 4885c44bca25346716969a3a0732c1bfea60f508 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-07-17 13:37:28 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-07-17 13:37:41 +0900 cont.c: fix formatting of RDoc for Fiber class commit f11f9fc9212c088087b1af1dd7de66eb25135377 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-07-17 13:24:23 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-07-17 13:24:23 +0900 Disable spec of `pattern matching is experimental` since 3.1 commit 2a5b5ff49a0fb62a98451323a608f5f1ba0c9116 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-07-17 13:24:08 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-07-17 13:24:08 +0900 Fix a spec failure ``` 1) Warning.[]= :experimental emits and suppresses warnings for :experimental FAILED Expected "" =~ /is experimental/ to be truthy but was nil ``` commit 503fa1620c1da74a15831bf864320cae4b17dc56 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-07-17 13:16:48 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-07-17 13:16:48 +0900 Fix a spec failure ``` 1) The -W command line option with :no-experimental suppresses experimental warnings FAILED Expected "" =~ /is experimental/ to be truthy but was nil ``` commit f36a5a7624f7b5ac453d3bb2eef5d32c7ee4fea3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-17 11:16:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-17 11:16:40 +0900 * 2021-07-17 [ci skip] commit eed5e8f796ab18e2e0a436dab83e35504ae3ded0 Author: Kazuki Tsujimoto <kazuki@callcc.net> AuthorDate: 2021-07-17 11:13:52 +0900 Commit: Kazuki Tsujimoto <kazuki@callcc.net> CommitDate: 2021-07-17 11:13:52 +0900 One-line pattern matching is no longer experimental https://github.com/ruby/dev-meeting-log/blob/master/DevelopersMeeting20210715Japan.md#feature-17724-make-the-pin-operator-support-instanceclassglobal-variables-jeremyevans0 commit fd0df9c4fb36597e5e3f500670b29dbd77a14eca Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-07-07 01:52:29 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-07-16 19:11:24 +0900 Emit deprecatation warnings for rb_iterate() * It is obsolete since 1.9, see https://github.com/ruby/ruby/blob/master/doc/extension.rdoc#label-Control+Structure and [Misc #18025] Notes: Merged: https://github.com/ruby/ruby/pull/4629 commit 301d194ee3b49e6b078eccb999dd538e9bfa8c7c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2018-10-07 13:02:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-16 17:49:53 +0900 Add Integer.try_convert [Feature #15211] Notes: Merged: https://github.com/ruby/ruby/pull/4654 commit eee709595cecdbc35d7bca9e779c36523c4659c5 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-17 11:34:20 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-07-16 16:10:54 +0900 io.c: Clarify the behavior of `IO.read` when called as `File.read` Ditto to `IO.binread`, `IO.write`, `IO.binwrite`, `IO.foreach`, and `IO.readlines`. Notes: Merged: https://github.com/ruby/ruby/pull/4579 commit 650a65c6fc7955d1ccfca16d3876c3f6a07a015c Author: Masafumi Koba <473530+ybiquitous@users.noreply.github.com> AuthorDate: 2021-07-15 20:25:12 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-16 15:40:08 +0900 [rubygems/rubygems] Add missing `require 'fileutils'` in `Gem::ConfigFile` https://github.com/rubygems/rubygems/commit/c4004fadd9 commit 71d3c9bbfaa1cf251205e1fb7f9611c9dee54e57 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-13 20:00:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-16 15:40:08 +0900 [rubygems/rubygems] Fix `bundle plugin install --help` showing `bundle install`'s help https://github.com/rubygems/rubygems/commit/b7b7d16aa8 commit c5f78ade5a9245e9620de7f9d0e0d7af19f9f863 Author: Andre Arko <andre@arko.net> AuthorDate: 2021-07-13 18:13:48 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-16 15:40:08 +0900 [rubygems/rubygems] fix dangling empty hooks it turns out that running `bundle plugin uninstall some-plugin` would remove that plugin from the list of hooks, but if the list of hooks for an event was now empty, we would serialize the empty array into yaml as an empty single bullet item. which would then get unserialized as a plugin with the name empty string. which we would then try to load and explode. 😬 https://github.com/rubygems/rubygems/commit/545ebba9a5 commit a3d2200b2ab29d4b8a127993254c34e90a5f341f Author: Andre Arko <andre@arko.net> AuthorDate: 2021-07-13 18:25:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-16 15:40:07 +0900 [rubygems/rubygems] test loading bad plugins with nil/empty names https://github.com/rubygems/rubygems/commit/e64b1f3497 commit 5cce96891ec288462b98149410d53c301cbf7682 Author: Andre Arko <andre@arko.net> AuthorDate: 2021-07-13 18:12:00 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-16 15:40:07 +0900 [rubygems/rubygems] remove focus https://github.com/rubygems/rubygems/commit/584a393812 commit 44ba77d16d0017639d425a5355f07a5b42eef1ea Author: Andre Arko <andre@arko.net> AuthorDate: 2021-07-13 18:25:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-16 15:40:07 +0900 [rubygems/rubygems] lock for development on macos https://github.com/rubygems/rubygems/commit/60469e4cac commit 227c2deff4c4bc7e937020e6d9998f89fa6fdd97 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-07-12 17:30:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-16 15:40:07 +0900 [rubygems/rubygems] Fix development gem unintentionally removed on an edge case When a development dependency was duplicated inside the gemspec and Gemfile with the same requirements, we went from printing a warning to removing the gem altogether. This change makes it not print a warning, but don't remove the gem either. https://github.com/rubygems/rubygems/commit/8bb2488131 commit bbaebbf5290adcbbfe30bbd925c2bf85ce190f52 Author: Jared Beck <jared@jaredbeck.com> AuthorDate: 2021-07-09 00:27:50 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-16 15:40:07 +0900 [rubygems/rubygems] Fix contradictory message about deletion of default gem [Fixes https://github.com/rubygems/rubygems/pull/4733] https://github.com/rubygems/rubygems/commit/fce7f3eb7d commit 29ed9d1aaaad576f18b771aee9a183750ba37070 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-15 21:08:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-16 15:25:13 +0900 [ruby/error_highlight] Fix leaked tempfiles https://github.com/ruby/error_highlight/commit/8b353a10a7 commit 6073a8bdc01c7cfae9671faa4edf85abf6e28c29 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-07-16 12:43:57 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-07-16 14:32:02 +0900 Add debug assertion in `rb_funcall*` that the current thread has the gvl. Notes: Merged: https://github.com/ruby/ruby/pull/4657 commit 55a79b648cabcd2a8b837f89c4d32c3c861d8b7a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-16 13:50:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-16 13:50:15 +0900 Adjust the release version of ruby2_keywords commit 25689024cf3ab81c950cca3f0d17dff9f9036e22 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-16 11:23:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-16 11:26:30 +0900 Added code fence to the example in [Feature #17724] [ci skip] commit 95f8ffa5f6c70aa9383e1f6db02b22707c183402 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-16 02:04:17 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-07-16 02:04:17 +0900 Copy hash compare_by_identity setting in more cases This makes the compare_by_identity setting always copied for the following methods: * except * merge * reject * select * slice * transform_values Some of these methods did not copy the setting, or only copied the setting if the receiver was not empty. Fixes [Bug #17757] Co-authored-by: Kenichi Kamiya <kachick1@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4616 Merged-By: jeremyevans <code@jeremyevans.net> commit fa87f72e1e84e2b55516be188f00434a683b924c Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-14 07:31:46 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-16 01:56:02 +0900 Add pattern matching pin support for instance/class/global variables Pin matching for local variables and constants is already supported, and it is fairly simple to add support for these variable types. Note that pin matching for method calls is still not supported without wrapping in parentheses (pin expressions). I think that's for the best as method calls are far more complex (arguments/blocks). Implements [Feature #17724] Notes: Merged: https://github.com/ruby/ruby/pull/4502 commit f1035248af04b2a4d58990740c3f1b840a5eac78 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-15 23:42:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-16 01:55:25 +0900 [ruby/irb] Show code page by irb_info on Windows https://github.com/ruby/irb/commit/6160d74199 commit 456d0019dddec74b80583f02ffdb7d84b096ab32 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-14 16:27:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-16 01:55:16 +0900 [ruby/irb] Escape space in free-spacing mode https://github.com/ruby/irb/commit/085ac42947 commit feec80a36286cefb3a403bb5661176a331f1d3b0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-16 00:49:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-16 00:49:08 +0900 * 2021-07-16 [ci skip] commit e5fe48646c68be0bd45fb8a1d7de36da00eaec4d Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-06-30 03:32:54 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-07-16 00:48:52 +0900 [Bug #18014] Add assertion to verify freelist This commit adds an assertion has been added after `gc_page_sweep` to verify that the freelist length is equal to the number of free slots in the page. Notes: Merged: https://github.com/ruby/ruby/pull/4613 commit 4a627dbdfd1165022fa9e716ba845e937b03773d Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-06-30 03:32:50 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-07-16 00:48:52 +0900 [Bug #18014] Fix memory leak in GC when using Ractors When a Ractor is removed, the freelist in the Ractor cache is not returned to the GC, leaving the freelist permanently lost. This commit recycles the freelist when the Ractor is destroyed, preventing a memory leak from occurring. Notes: Merged: https://github.com/ruby/ruby/pull/4613 commit 119697f61e2b2b157816a8aa33aada5863959900 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-06-30 03:32:28 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-07-16 00:48:52 +0900 [Bug #18014] Fix rb_gc_force_recycle unmark before sweep If we force recycle an object before the page is swept, we should clear it in the mark bitmap. If we don't clear it in the bitmap, then during sweeping we won't account for this free slot so the `free_slots` count of the page will be incorrect. Notes: Merged: https://github.com/ruby/ruby/pull/4613 commit 3e7a7fb28a9a6a9544e1e49dfab51122ccfdac3f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-15 21:33:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-15 22:24:02 +0900 Make Struct#keyword_init? return nil by default [Feature #18008] commit 33bea3bdff3b91b3373a85a5c077361073b127d8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-15 21:30:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-15 21:32:04 +0900 Regularize keyword_init values not to hold the argument object commit 835c63cd8818dfa86bce54d818c11cbec25b1285 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-07-15 18:21:49 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-07-15 18:21:49 +0900 Add tests and NEWS [Feature #18008] commit 1a637544166eca6b917fb6f32baeb771f4914b7a Author: hkdnet <satoko.itse@gmail.com> AuthorDate: 2021-07-15 18:14:27 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-07-15 18:14:27 +0900 struct.c: Add keyword_init? singleton method for StructClass (#4609) Fixes [Feature #18008] Notes: Merged-By: nurse <naruse@airemix.jp> commit 3ce2bf4d908c5cc80b8c53a21a09cd0d9d8ec26c Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-07-15 16:49:55 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-07-15 16:54:59 +0900 rb_interned_id_p: does not exist This declaration was added at commit 0ee5a49dd4ffbbb285c25fa6cba88370ce9 without its implementation. Must be a mistake. Note also that we ended up having this exct same functionality implemented under a name of rb_check_id(). commit 2d9aacf64457b87a9e9c7ced294a290c9a72626c Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-07-15 16:46:59 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-07-15 16:54:59 +0900 rb_enc_casefold: does not exist This declaration was added at commit 0ee5a49dd4ffbbb285c25fa6cba88370ce9 without its implementation. Must be a mistake. commit 645616c273aa9a328ca4ed3fceac8705e2e036cd Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-15 16:41:54 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-07-15 16:46:08 +0900 process.c: Call rb_thread_atfork in rb_fork_ruby All occurrences of rb_fork_ruby are followed by a call rb_thread_fork in the created child process. This is refactoring and a potential preparation for [Feature #17795]. (rb_fork_ruby may be wrapped by Process._fork_.) commit 8f62f12c35cf0bb3c6b48c1e59477d6b0da79067 Author: Patrik Ragnarsson <patrik@starkast.net> AuthorDate: 2021-07-15 15:38:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-15 16:16:51 +0900 Fix typo in flag in NEWS.md Notes: Merged: https://github.com/ruby/ruby/pull/4653 commit f347b586fb2ae53a630593a39984a4f1e9dae10b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-15 09:49:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-15 09:49:56 +0900 [ruby/fiddle] Handle#file_name results in very platform dependent commit 0d74ddc5fff202fe7e439fbd2ab6c27dc071e38f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-15 09:26:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-15 09:26:19 +0900 * 2021-07-15 [ci skip] commit c67c83fb68e2f514f359633da12b59d93d7dda5a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-15 09:19:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-15 09:20:10 +0900 [ruby/fiddle] Module file name may be the realpath Even when the path which was used to dlopen may be a symlink. commit 2fa3209a350f21f31d65e0d85f9903244d40f8f1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-14 22:00:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-14 22:00:56 +0900 [ruby/fiddle] fixed the test on case-insensitive filesystem commit 67897762cf3cabad99effd636b50a2db26fb0f3f Author: Kenta Murata <mrkn@users.noreply.github.com> AuthorDate: 2021-07-14 15:51:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-14 18:56:00 +0900 [ruby/fiddle] Add Fiddle::Handle#file_name (https://github.com/ruby/fiddle/pull/88) https://github.com/ruby/fiddle/commit/4ee1c6fc4b commit 169529a0c0973fa925ad3b36f4427d31e802a37e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-14 15:38:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-14 18:55:59 +0900 [ruby/fiddle] Check HAVE_RUBY_MEMORY_VIEW_H rather than API version (https://github.com/ruby/fiddle/pull/86) https://github.com/ruby/fiddle/commit/c5abcc3a7e commit 818c74b7f4d5b88833af26226fc81e563b5d11b9 Author: Kenta Murata <mrkn@users.noreply.github.com> AuthorDate: 2021-07-14 11:26:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-14 18:43:32 +0900 [ruby/fiddle] Return the module handle value in Fiddle::Handle#to_i and add FIddle::Handle#to_ptr (https://github.com/ruby/fiddle/pull/87) https://github.com/ruby/fiddle/commit/170111a0cb commit 57a743efa408f0c47fc18dd16758a1a1cd54d296 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-14 10:48:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-14 10:48:29 +0900 * 2021-07-14 [ci skip] commit 896bbb9fadd10e1ad06ff3fd7d0608acda01ac06 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-13 20:58:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-14 10:48:07 +0900 Merge RubyGems/Bundler master from 8459ebd6ad65ce3397233416dc64083ae7572bb9 Notes: Merged: https://github.com/ruby/ruby/pull/4648 commit 29f6f79e7396018962eb25c5f5e409f5fe28a73b Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-04-29 23:26:16 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-07-13 22:55:17 +0900 Get `ruby_nonempty_memcpy` to have C linkage Fixes [Bug #17788] Notes: Merged: https://github.com/ruby/ruby/pull/4429 commit cb955dc9ac28ace4b9463261b425ac32750b053c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-13 21:34:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 21:34:28 +0900 [ruby/fiddle] update dependencies commit 1d03c7da041cb426dfd269193818722279cebaa4 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-13 21:21:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-13 21:21:29 +0900 [ruby/irb] Add an explanation of default sub commands of "measure", which are :time and :stackprof https://github.com/ruby/irb/commit/759be5a344 commit 40d45ab093fbd03fa71a5f3ca1982166f12693ef Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-13 20:32:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 20:36:45 +0900 [ruby/fiddle] Check HAVE_RUBY_MEMORY_VIEW_H rather than API version https://github.com/ruby/fiddle/commit/93f9564446 commit a5d6ea9266abbdcf87b09dacebc2123fa82a4291 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-13 20:29:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-13 20:30:20 +0900 [ruby/error_highlight] Set the binary mode for Tempfile creation in a test https://github.com/ruby/error_highlight/commit/8273d3b6f2 commit 472d8c5555ad090e62ca813edf5501c2e86e416c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-12 05:26:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:46 +0900 [ruby/fiddle] Update required_ruby_version (https://github.com/ruby/fiddle/pull/85) Drop supports for old versions, keeping 2.5 as CI supports it for now. https://github.com/ruby/fiddle/commit/90634e7c55 commit bb868f4814c09c978f20f224c5e99656bc8b9bee Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-07-05 10:45:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:46 +0900 [ruby/fiddle] Use have_header and have_type to detect memory view availability Fix https://github.com/ruby/fiddle/pull/84 It may detect ruby/memory_view.h for system Ruby that is installed in /usr. We can use RUBY_API_VERSION_MAJOR to detect memory view availability because memory view is available since Ruby 3.0. Reported by Jun Aruga. Thanks!!! https://github.com/ruby/fiddle/commit/3292929830 commit 5c0d8c6369f92915bf99924f58f0763abe4f493e Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-01 09:35:04 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:46 +0900 [ruby/fiddle] Add "offsetof" to Struct classes (https://github.com/ruby/fiddle/pull/83) * Add "offsetof" to Struct classes I need to get the offset of a member inside a struct without allocating the struct. This patch adds an "offsetof" class method to structs that are generated. The usage is like this: ```ruby MyStruct = struct [ "int64_t i", "char c", ] MyStruct.offsetof("i") # => 0 MyStruct.offsetof("c") # => 8 ``` * Update test/fiddle/test_c_struct_builder.rb Co-authored-by: Sutou Kouhei <kou@cozmixng.org> https://github.com/ruby/fiddle/commit/4e3b60c5b6 Co-authored-by: Sutou Kouhei <kou@cozmixng.org> commit a2c9e1b58a9bc1da0533171236da43fcb556ead7 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-06-19 09:44:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:46 +0900 [ruby/fiddle] Bump version https://github.com/ruby/fiddle/commit/049138b4b8 commit 70b0318646f5372940071b727c650b96884ab63e Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-06-18 09:29:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:46 +0900 [ruby/fiddle] MemoryView: ensure reset rb_memory_view_t::obj on error https://github.com/ruby/fiddle/commit/0ed39345fe commit 9f86e50e1e03daff73a36fd8490f0457db98a641 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-06-17 13:40:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:45 +0900 [ruby/fiddle] StringValuePtr may change the val https://github.com/ruby/fiddle/commit/bddca7c895 commit 10e26cfa76468dea6f828dbe8031b5ffcff543cb Author: Sutou Kouhei <kou@cozmixng.org> AuthorDate: 2021-06-17 13:36:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:45 +0900 [ruby/fiddle] Add MemoryView.export and MemoryView#release (https://github.com/ruby/fiddle/pull/80) fix https://github.com/ruby/fiddle/pull/79 Users can release memory views explicitly before process exit. Reported by xtkoba. Thanks!!! https://github.com/ruby/fiddle/commit/1de64b7e76 commit 9988f6ac4e887437b5a76f0a1c27fa6f5c17c039 Author: Sutou Kouhei <kou@cozmixng.org> AuthorDate: 2021-05-20 06:29:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:45 +0900 [ruby/fiddle] Add Fiddle::MemoryView#to_s (https://github.com/ruby/fiddle/pull/78) Fix https://github.com/ruby/fiddle/pull/74 Reported by dsisnero. Thanks!!! commit 8c905349bb35fa4c21614272f8e23da646e94957 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-04-20 11:17:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:45 +0900 [ruby/fiddle] test: fix SetLastError's input type https://github.com/ruby/fiddle/commit/ca5e6a0404 commit 37d16bb9dc2fbb42a93d899f6eed1857b304e3d6 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-04-20 11:17:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:45 +0900 [ruby/fiddle] test: use double quote for string literal https://github.com/ruby/fiddle/commit/fab7eab95b commit 5516d74ad2465ec98a09f80337a2ff9a78ba22c6 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-04-20 11:11:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:45 +0900 [ruby/fiddle] test: add a test for win32_last_socket_error https://github.com/ruby/fiddle/commit/c86cec03cd commit 303ab5da8b34faf6b4b608f1f7512dfd08544cc8 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-04-20 11:07:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:45 +0900 [ruby/fiddle] test: add missing receiver https://github.com/ruby/fiddle/commit/1da3b4af16 commit d1eeb9fec953c41ebaf312d7a56948bca43e9f93 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-04-20 10:58:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:45 +0900 [ruby/fiddle] windows: use GetLastError() for win32_last_error Ruby: [Bug #11579] Patch by cremno phobia. Thanks!!! https://github.com/ruby/fiddle/commit/760a8f9b14 commit c0f9191ab6691b2fc526cd099e27cd4f53c45525 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-04-19 16:48:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:37:44 +0900 [ruby/fiddle] Bump version https://github.com/ruby/fiddle/commit/3784cfeec4 commit 4c039a2ea07fa20916b2bc6a4aaee92e06cf6421 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-13 19:36:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:36:52 +0900 tool/sync_default_gems.rb: remove CRs commit f9c559a0a2892d131e7d16c72d6ebd61f3cde208 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-13 19:05:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-13 19:05:50 +0900 sync_default_gems.rb: expand links to PRs of the upstream commit 5fd5d71a4b100fdeca55352a5441b095a1d82e16 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-13 16:53:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-13 16:54:17 +0900 [ruby/error_highlight] Support a file that has no final newline https://github.com/ruby/error_highlight/commit/9d671284cb commit 23c8bc367c6d700789a4059b831606966efb674c Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-13 16:47:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-13 16:51:02 +0900 [ruby/error_highlight] Support hard tabs Now, the highlight line is created by replacing non-tab characters with spaces, and keeping all hard tabs as-is. This means the highlight line has the completely same indentation as the code snippet line. Fixes https://github.com/ruby/error_highlight/pull/7 https://github.com/ruby/error_highlight/commit/38f20fa542 commit b18f6fff69c4a3904f6714ab107ba48745df42f7 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-13 16:28:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-13 16:28:57 +0900 * 2021-07-13 [ci skip] commit 9df712a0e2013018bf44be71404ffc17dce21744 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-07-13 15:46:32 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-07-13 16:28:40 +0900 Expose `rb_obj_is_fiber`. Notes: Merged: https://github.com/ruby/ruby/pull/4646 commit 84fea8ee39249ff9e7a03c407e5d16ad93074f3e Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-12 16:48:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-12 16:48:52 +0900 [ruby/error_highlight] Update a test for multibyte characters https://github.com/ruby/error_highlight/commit/2fc70d7f8e commit 8b01d16ad661a02157311a6a24f415713d69a8a4 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-12 16:47:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-12 16:48:15 +0900 [ruby/error_highlight] Stop showing a code snippet if it has non-ascii characters See https://github.com/ruby/error_highlight/issues/4 https://github.com/ruby/error_highlight/commit/c20efd3961 commit 028441d22fee121d129126c55938690be38bd3d9 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-07-12 13:28:43 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-07-12 16:16:22 +0900 Avoid calling `fstat` on things we already know are valid sockets. Notes: Merged: https://github.com/ruby/ruby/pull/4645 commit 0895d57d3115f162dcb6cff82da1834a7241633e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-12 13:45:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-12 13:45:15 +0900 * 2021-07-12 [ci skip] commit 6504ca006b4a97ca875d629b5dcf942b3b8fd72a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-12 12:10:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-12 12:10:16 +0900 Show node IDs in dump commit c2ed5ab08b0f508185b4abd2d28f045616e7c7f5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-11 20:27:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-11 20:28:23 +0900 [ruby/date] Fixed markups for bold [ci skip] https://github.com/ruby/date/commit/404f9d2096 commit 8065670cfbfcf89249c2de12a513b5c7308c9aeb Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-16 02:39:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-11 20:28:21 +0900 [ruby/date] Fix comparison with Float::INFINITY Fixes [Bug #17945] https://github.com/ruby/date/commit/953d907238 commit 49ba7cd2598e047aba37c204c143ce6ee2364e8c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-11 20:08:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-11 20:12:45 +0900 [DOC] Move mailing-list URLs to footnotes [ci skip] commit 690385014a767d01549991655a424a13d3279b0f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-15 23:18:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-11 19:56:53 +0900 Move core_assertions.rb from test/unit This file contains extended assertions for ruby core which do not belong to test/unit. commit b32ae9898f0311a3755a361bc0bdcbb38f143deb Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-06-27 17:11:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-11 18:26:20 +0900 Move rb_str_escape function declaration Notes: Merged: https://github.com/ruby/ruby/pull/4607 commit e330bbeeb1bd70180e5f6b835f2a39488e6c2d42 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-11 06:12:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-11 06:12:24 +0900 * 2021-07-11 [ci skip] commit 947d0198e00b2ba991a566e503a66675de625c2f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-07-10 22:32:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-11 06:12:07 +0900 [ruby/irb] Show LANG and LC_ALL env by irb_info Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> https://github.com/ruby/irb/commit/b431742430 commit 491ab2820aada99f53c328f83f0345acc517fc37 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-10 21:02:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-10 21:02:50 +0900 Remove half-defined Reline on LoadError When fiddle is not available, reline/terminfo depending on it also fails. commit d172f8ac099a3850a3aed6136e50c59d5a81b11f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-10 19:14:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-10 19:14:40 +0900 Skip fiddle tests if fiddle is not available commit cb3eb3d7d516a12957939491f3c3cc663c1a9240 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-10 17:39:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-10 17:39:25 +0900 Get rid of conflict in ccan/list Undefine LIST_HEAD from BSD-origin sys/queue.h. commit 9c2851508e49eb2cd22ee1a52b846626180a965f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-10 13:44:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-10 13:44:33 +0900 * 2021-07-10 [ci skip] commit 289fd3c801495b8188b8549b5a095cd479d048de Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-07-10 13:44:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-10 13:44:17 +0900 [ruby/irb] Pass local variables from workspace binding to lexer This fixes at least an issue where irb will incorrectly assume code opens a heredoc when it does not, such as this code: ```ruby s1 = 'testing' s2 = 'this' s2 <<s1 p s1 s1 ``` Ruby parses the `s2 <<s1` as `s2.<<(s1)`, not as a heredoc, because `s2` is a local variable in scope. irb was using ripper without letting ripper know that `s2` was a local variable, so ripper would lex it as a heredoc instead of a method call. Fix the situation by prepending a line at line 0 with all local variable definitions in scope whenever lexing. This fixes the heredoc issue, and potentially other issues that depend on whether an identifier is a local variable or not. Fixes [Bug #17530] https://github.com/ruby/irb/commit/4ed2187f76 commit 6072239121360293dbd2ed607f16b6a11668999a Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-09 15:31:51 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-09 16:22:38 +0900 Remove no longer needed include files (Unicode Version 12.1.0) commit 23ed8ef44004ec9e195495133bfcb60770ee6b01 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-07-09 15:39:08 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-07-09 15:39:08 +0900 Update bundled_gems commit f3e4c3400e53717e9998427dbf1f755ae7985c34 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-09 08:54:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-09 08:54:05 +0900 * 2021-07-09 [ci skip] commit fbe9b691bd4d5fc21e893e60cd026830b5e16a90 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-09 08:52:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-09 08:52:35 +0900 Added missing declarations in readline.h bundled with macOS 10.13 commit a7c85ccb18fd0d2111a69f34db01f145711cccb8 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-07-08 20:21:49 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-07-08 20:21:49 +0900 Update bundled_gems commit 524513be399e81bb170ec88aa0d501f33cbde8c3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-08 16:56:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-08 18:18:35 +0900 mkmf.rb: try linking at try_var To check for variables accessible but not declared. commit d6cf4c0c997752c9e23876a8d5c205737317a6e3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-08 17:58:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-08 17:58:25 +0900 rbinstall.rb: just call File.basename directly commit b90ca734f38b54852d60f4d83afdbbad3861e557 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-08 17:57:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-08 17:57:47 +0900 Ubuntu: remove pthread coroutine which is done in Compilations commit 7a2383b5c16208dde00de9414001d03422770280 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-08 16:45:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-08 16:47:30 +0900 Split test of Hash.[] and add assertion for default value/proc For a73f13c9070a5189947641638398cbffb8d012d8. commit 771f6dd75dd38e378e2e0f6de09398b6660b09f2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-08 16:38:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-08 16:43:22 +0900 [ruby/stringio] Suppress a sign-compare warning https://github.com/ruby/stringio/commit/a88c070e0b commit 3b36e34b9081fc0e43b2fde484f6d07f45ddb2b1 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-08 14:40:47 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-08 14:45:03 +0900 Adapt test_emoji_breaks.rb to Unicode 13.0.0/Emoji 13.0 - Add UNICODE_VERSION,... to deal with new location of some of the emoji-related data files. - Introduce class BreakFile to handle various file properties. - Adapt main code to use BreakFile. commit 146a943d9aabb9dda3c5fa1fc3d493c1df969184 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-04 20:56:13 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-08 14:45:03 +0900 Fix ruby_version guards in Unicode/Emoji version specs Correct version guards in ruby_version in Unicode/Emoji version specs to correctly use exclusive range endings. commit 323ff38c04d15c3efe5eed497620d9bf242817e6 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-04 19:48:02 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-08 14:45:03 +0900 Add directory and include files for Unicode version 13.0.0 - Add directory enc/unicode/13.0.0 - Add include files casefold.h and name2ctype.h for Unicode version 13.0.0 commit ba357bace26a118e2ef10ca25cf3741bfb971bb6 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-04 19:06:26 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-08 14:45:03 +0900 Add new Unicode/Emoji version checks to spec/ruby/library/rbconfig - Limit Unicode version 12.1.0 to Ruby versions 2.6.3 - 3.0 - Check that Ruby version 3.1 has Unicode version 13.0.0 - Limit Unicode Emoji version 12.1 to Ruby versions 2.7 - 3.0 - Check that Ruby version 3.1 has Unicode Emoji version 13.0 commit 99cd0e1f79186f7beb15d8a1f3c9f030d5d07de0 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-04 18:18:23 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-08 14:45:03 +0900 Update lib/unicode_normalize/tables.rb to Unicode version 13.0.0 commit 94fc4b18695d3ffa7a379b0ee7150eef237ac1cf Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-04 17:11:22 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-08 14:45:03 +0900 Adjust tool/enc-unicode.rb to deal with new location of some emoji files - Change location of file emoji-data.txt - Change range of files in emoji directory ([stz] is for emoji-sequences.txt, emoji-test.txt, and emoji-zwj-sequences.txt) - Make sure that version of all emoji files is checked against Emoji version commit b6113a3fd8471a9bd41a866c602746e3eb391de0 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-04 16:27:38 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-08 14:45:03 +0900 Update common.mk to deal with Unicode version 13.0.0 - Change Unicode version to 13.0.0 - Change Emoji version to 13.0 - Adjust to moved locations of emoji-data.txt and emoji-variation-sequences.txt by splitting these files from $(UNICODE_EMOJI_FILES) and putting them into a new group $(UNICODE_UCD_EMOJI_FILES) commit 6185b8a0efcb6832fd32dff77f1a5310555f0bb3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-08 00:53:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-08 00:53:46 +0900 * 2021-07-08 [ci skip] commit 372d94b6ba73d85b2c63c70e873a4914bbe9dbad Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-07 10:35:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-07 23:40:04 +0900 Shared libruby also needs MAINLIBS for jemalloc Notes: Merged: https://github.com/ruby/ruby/pull/4632 commit e8d953937388e498f9850f72d9d930962381a10b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-07 01:08:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-07 23:40:04 +0900 Refactor --with-jemalloc option Find jemalloc header first, then using the found header, try [with mangle, without mangle] x [no more additional libraries, adding jemalloc] combination. Notes: Merged: https://github.com/ruby/ruby/pull/4632 commit 82d425515d2c1a14f964fc7a571e272f933bba7a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-07-07 17:50:11 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-07-07 20:31:20 +0900 comment about the situation [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4631 commit 737e4432b978eb4b9f5b10fb6cc6d9c883a5d17a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-07-07 10:16:48 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-07-07 20:31:20 +0900 configure: add -Wl,--no-as-needed It is reported that combination of `--enable-shared --with-jemalloc` breaks on Debian bullseye (testing). Deeper investigation revealed that this system's `ld(1)` is patched, to turn `ld --as-needed` on by default. This linker flag strips "unnecessary" library dependencies from an executable. In case of `ruby(1)` (of `--enable-shared`), because everything is in `libruby.so`, the binary itself doesn't include any calls to `malloc(3)` at all. So in spite of our explicit `-ljemalloc` flag, it is ignored. Libc's one is chosen instead. This is not what we want. Let's force our `ruby(1)` link what we want. Fixes https://github.com/ruby/ruby/pull/4627 The author would like to acknowledge Akihiko Odaki <akihiko.odaki@gmail.com> for their contributions. Notes: Merged: https://github.com/ruby/ruby/pull/4631 commit 1293042307a5ecdd706212c897a57ff1aed07a0d Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-07 17:17:52 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-07-07 17:17:52 +0900 gc.c: use each_stack_location for emscripten follow up of e4e416380d4b1b36ca1cc2e1e1ed993c9be694bb commit c082c6eb7c786a432bea23cf78839f64585cb630 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-07 14:07:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-07 15:31:52 +0900 Sync RubyGems and Bundler with upstream Notes: Merged: https://github.com/ruby/ruby/pull/4634 commit 6e2240a2f954c84ed12357382c9c065ae4b91e11 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-05-28 19:47:49 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-07 13:30:20 +0900 Sync latest bundler & rubygems development version Notes: Merged: https://github.com/ruby/ruby/pull/4533 commit 9952e9358ea73a1bda8d5f8c8672ee1c04892ce4 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-07-06 21:19:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-07 12:31:43 +0900 Refactor rb_str_export and rb_str_export_locale function's Notes: Merged: https://github.com/ruby/ruby/pull/4628 commit b1b7f997aeb8a09e863f4d6271ab38da179e246d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-07 09:48:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-07 09:48:59 +0900 * 2021-07-07 [ci skip] commit 2599d1a8dff29a2376f36c8cc301839b454fc064 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-07-07 07:11:49 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-07-07 09:48:40 +0900 Store the dup'd CDHASH in the object list during IBF load Since b2fc592c304 nothing was holding a reference to the dup'd CDHASH during IBF loading. If a GC happened to run during IBF load then the copied hash wouldn't have anything to keep it alive. We don't really want to keep the originally loaded CDHASH hash, so this patch just overwrites the original hash with the copied / modified hash. [Bug #17984] [ruby-core:104259] Notes: Merged: https://github.com/ruby/ruby/pull/4630 commit 91258ed4490652e4c44ceca447ed1ebb5ec48ca3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-06 21:26:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-06 21:26:14 +0900 Enable libruby-relative on FreeBSD commit 166d148355384c73d18c8465eb99dbc69e3eb400 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-06 19:35:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-06 21:02:41 +0900 Fix check for malloc_conf when no library is required commit c5e6fa4853a2e71b43377931f686d6eb41aacc52 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-06 19:20:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-06 21:02:40 +0900 Moved native coroutine type checking message Not to be interleaved by fallback checking messages commit afd4cfcf22a4ec6e2dbd5f774169ce771d22acea Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-06 19:06:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-06 21:02:40 +0900 Try "so" attribute if "smso" is not found commit 9accb92ba1db93ccb30785e4a637f345569afb4e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-06 20:27:12 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-06 20:27:12 +0900 Bump up Rake-13.0.4 commit 02a3cac658a969c2bef2460f61b8346dcb44e8f3 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-07-05 19:32:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-07-06 11:02:14 +0900 [ruby/rdoc] Bump version to 6.3.2 https://github.com/ruby/rdoc/commit/0a3a674583 commit 8a5e161cd9a251054e851d46ccc367609a31c1c7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-06 01:43:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-06 02:13:56 +0900 Set ENCSTATIC in rbconfig.rb [Bug #17929] commit eecc4570cd0f775cc83b3ce9c811cd5142e838f2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-05 23:22:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-06 01:17:38 +0900 Found library is not usable if the header is not found commit e359d637eeb47cd900e01f63632fa1d3c6604be4 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-06 01:16:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-06 01:16:04 +0900 * 2021-07-06 [ci skip] commit 1dfe75b0beb7171b8154ff0856d5149be0207724 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-06 00:14:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-06 01:13:54 +0900 Fixed 'maybe_unused' attribute ``` ../../../src/ext/bigdecimal/bigdecimal.c:303:5: error: 'maybe_unused' attribute cannot be applied to types ENTER(1); ^ ``` commit 3db7f6353fd3b047b1fa9ea5d88a9bce36e8d46d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-06 00:09:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-06 00:09:27 +0900 Suppress unused-but-set-variable warning commit 3dacc14fd3dded7feda31c195f6bf6c096c91e21 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-01 05:39:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-05 11:34:37 +0900 [ruby/rdoc] Fix links without paths https://github.com/ruby/rdoc/commit/424bd5db4d commit f88a9097a4708e8c179eead4e67ee67f15fcdefe Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-15 01:06:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-05 11:34:35 +0900 [ruby/rdoc] Fix for explicit http link https://github.com/ruby/rdoc/commit/caf234665c commit 7c8aa0a5d2bc3f079077d113b350a58d7b7c2b0d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-10 01:58:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-05 11:34:33 +0900 [ruby/rdoc] Allow a label in a link to another document text https://github.com/ruby/rdoc/commit/85bb2d33bb commit 46ab28d6c9a80e91f6f56e9f902e0eff8eb1207e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-30 11:29:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-05 11:34:31 +0900 [ruby/rdoc] Fix assertions which look very likely unintended https://github.com/ruby/rdoc/commit/dc7c890a3d commit caa123b50e12c5ea95763d7661adb6096e48df21 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-29 20:01:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-05 11:34:29 +0900 [ruby/rdoc] Support ActiveSupport::Concern.included ref. https://github.com/rails/rails/blob/168ddaa08a63cd956bb7c3ba10be1a7ae36d4ee2/activerecord/lib/active_record/core.rb#L9-L20 https://github.com/ruby/rdoc/commit/a2d651dade Co-authored-by: Fumiaki MATSUSHIMA <mtsmfm@gmail.com> commit 2f3edf28f3a251bac2cf3b47b46b372faac71e8e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-28 12:53:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-05 11:34:27 +0900 [ruby/rdoc] Prefer omit to pend These conditions are not temporary, rather platform dependent. https://github.com/ruby/rdoc/pull/815#discussion_r654660411 https://github.com/ruby/rdoc/commit/92545fa250 commit ec9a9af3754671cd066eb9827c4207b36a5f9dba Author: Ulysse Buonomo <buonomo.ulysse@gmail.com> AuthorDate: 2021-06-27 07:33:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-05 11:34:25 +0900 [ruby/rdoc] Fix chained inclusion ancestors_of Fixes https://github.com/ruby/rdoc/pull/814 Signed-off-by: Ulysse Buonomo <buonomo.ulysse@gmail.com> https://github.com/ruby/rdoc/commit/b45f747216 commit c7d1989986becc0e403afc35ad4caa5806e787be Author: xstnztk <42609037+xstnztk@users.noreply.github.com> AuthorDate: 2021-04-16 20:42:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-05 11:34:22 +0900 [ruby/rdoc] Document 'ruby:' to show core documentation in ri ri supports 'ruby:' as a kind of "pseudo gem name" to display files of the core Ruby documentation such as syntax and NEWS. Add the appropriate documentation to the description of options shown by "ri --help". https://github.com/ruby/rdoc/commit/a0e5df6702 commit cca2f7ab14ace71eb93992472d8fa0f29de9cad4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-05 11:17:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-05 11:17:42 +0900 programs will be made from exts `programs` after `exts` overwrites programs built with extension libraries when static-linked-ext. commit e127c85fac281dcd02c724c3a33e6b4b99f761a9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-05 10:22:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-05 10:22:42 +0900 * 2021-07-05 [ci skip] commit 0a32cefabd2fb583a9141ef9c9553994a9fb4a4a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-04 19:22:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-04 22:15:59 +0900 Add domain check macros commit 2488589b2f1a70dbfdc4155ac9bea3c533ef35d8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-04 15:28:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-04 15:28:25 +0900 Removed extra double quotes from domain error messages commit a73f13c9070a5189947641638398cbffb8d012d8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-04 14:56:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-04 14:58:15 +0900 [DOC] `Hash.[]` returns a hash with no default value/proc [ci skip] commit f810c007cf449d91303a0e8aff3f948f1d3f8068 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-04 11:31:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-04 11:31:21 +0900 * 2021-07-04 [ci skip] commit eaa1c3190a41140c6459dc48c91a19f346c8df74 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-04 10:45:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-04 11:17:01 +0900 [Win32] Fix assembler name when cross compiling Hostx64\x86\nmake.exe sets AS to ml64 which targets amd64, but we need assembler for x86. commit ac6924e10eed6a0747ed61f53d793b2611a5f72f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-03 22:39:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-03 22:39:14 +0900 goruby.c: include golf_prelude.c to get rid of overwriting EXTOBJS commit 2d3572a1548943b857362fff690d5194d1e03604 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-03 22:11:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-03 22:11:24 +0900 Separate toolchain dependent test commit 71146bd4a32f26b26d76b8847cdb62a8126be491 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-07-03 06:13:38 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-07-03 19:50:04 +0900 Remove copy coroutine build rule. Notes: Merged: https://github.com/ruby/ruby/pull/4623 commit 6f85c9d51c354a76f1141585b482e861dfb194dc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-03 12:54:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-03 12:54:28 +0900 * 2021-07-03 [ci skip] commit ac86fcbfd0bab8667d277aa575bc5b81e5135d3c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-03 01:07:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-03 12:52:46 +0900 Removed extinit.o from main programs It is included in libruby, which is linked into the main programs. commit 6d8422659a4c8a51f37433b6e63cc98d8526abe9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-03 01:02:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-03 12:52:46 +0900 Fix linking bundled zlib * Prefix "./" to the import library name to expanded when static linking exts. * Copy zlib shared library to the top build directory. commit 287fb680e24aabc73102bc7a47366a48c77f3086 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-03 00:15:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-03 12:52:46 +0900 Library arguments to VC are bare file names commit 1ac228378cc0447220d229c1e1a7448e7b862b78 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-02 20:07:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-03 12:52:46 +0900 Use $ignore_error defined in mkmf.rb commit 3a95834739aababba9eac418d7f122a1e499684b Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-07-02 16:45:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-02 16:48:20 +0900 [ruby/error_highlight] Suppress SyntaxError during RubyVM::AST.of When the original source code is erb, RubyVM::AST.of does not work well. https://github.com/rails/rails/issues/42678. https://github.com/ruby/error_highlight/commit/b1572761a6 commit e105d93b4fe0dd9984ec34f0c78d5465c33542a7 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-07-02 13:23:20 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-07-02 13:23:20 +0900 Fix default prompt mode in doc/irb/irb.rd.ja commit 8ebb5e23ebc5f1675e3479b9a29f124dc458226b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-09 16:29:50 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-02 10:49:17 +0900 Keep GC disabled until VM bootstrap has done [Bug #17583] Notes: Merged: https://github.com/ruby/ruby/pull/4617 commit 1862d961a9b18acbf30d9391e091d91de9c0f16d Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-07-02 06:52:56 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-07-02 09:36:14 +0900 Ignore dead threads in `coroutine_join`. Notes: Merged: https://github.com/ruby/ruby/pull/4620 commit b8da141d3223a5b7f3386742bd513aa1fbc6fa4f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-02 06:47:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-02 06:47:55 +0900 * 2021-07-02 [ci skip] commit e8933fda0c54e1708cf4049dfee2230ffac15271 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-30 02:13:12 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-07-02 06:47:31 +0900 Remove gdbm/dbm related code from CI The related extensions have been removed. Notes: Merged: https://github.com/ruby/ruby/pull/4619 commit f6539202c52a051a4e6946a318a1d9cd29002990 Author: Martin Dürst <duerst@it.aoyama.ac.jp> AuthorDate: 2021-07-01 17:33:43 +0900 Commit: Martin Dürst <duerst@it.aoyama.ac.jp> CommitDate: 2021-07-01 17:33:43 +0900 - add regression tests for U+6E7F (湿) in ISO-2022-JP In ISO-2022-JP, the bytes use to code are the same as those for "<>". This adds regression tests to make sure that these bytes, when representing 湿, are NOT escaped with encode("ISO-2022-JP, xml: :text) or similar. These are additional regression tests for #12052. commit 9ca30516605e4fb3aaaaa268a6542635736ba1e4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-01 14:26:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-01 14:45:47 +0900 [DOC] fixed the default value of flags [ci skip] commit 9692aeedf117a35933cf63cdce964e6403337306 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-10-27 00:52:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-01 14:45:47 +0900 [DOC] expanded `pattern`s in examples of File.fnmatch [ci skip] commit 1467328edc877ada0361e89f55158d2ed1bbb075 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-30 11:11:12 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-07-01 08:23:03 +0900 More general matrix "configure" parameter, add `--with-coroutine=pthread`. commit 42130a64f02294dc8025af3a51bda518c67ab33d Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-26 07:17:26 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-07-01 08:23:03 +0900 Replace copy coroutine with pthread implementation. commit 9c9531950c007872d7726f050a1dc0cb6f8f0490 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-07-01 06:42:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-07-01 06:42:00 +0900 rbinstall.rb: get rid of making directories when dryrun commit 8ee24840c844a25c749e7e69017e5a2331c49c1c Author: Keiko Kaneko <keiko.cda@gmail.com> AuthorDate: 2021-06-29 21:29:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-01 05:16:31 +0900 [ruby/irb] Update ls.rb without requiring Set, because Set is one of standard libraries https://github.com/ruby/irb/commit/7092ad2ab5 commit 518d39388a2bfca8bffa08804ceba9d099be89d5 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-07-01 05:12:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-07-01 05:12:22 +0900 * 2021-07-01 [ci skip] commit 4a3df35239b122f9260fd4ca2b844b9d41f61225 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-07-01 04:24:22 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-07-01 05:12:03 +0900 Use stride passed into os_obj_of_i Notes: Merged: https://github.com/ruby/ruby/pull/4614 commit acbddbe68cdcf5506791d8e19c184536ba253b02 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-30 21:04:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-30 21:06:52 +0900 [ruby/irb] Rescue a specific error Rescuing StandardError is prone to bugs caused by a typo or obsoleted methods. https://github.com/ruby/irb/commit/eb5260fcd5 commit e8c2b03ee145e10217a8ed58dbadfe30f9edbdfe Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-06-29 19:16:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-30 20:55:18 +0900 [ruby/irb] Fix error on `ls object_cant_define_singleton` such as `ls 42`, `ls :sym` and so on https://github.com/ruby/irb/commit/b1d436a853 commit 0feec7984622f0ceb0514b3b340203fdc51550dc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-30 19:55:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-30 19:56:37 +0900 "nodoc" needs to exclude "doc" [ci skip] commit b6c910e1f426b702579fe22c60401c57042148e1 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-30 17:33:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-30 17:33:57 +0900 [ruby/error_highlight] Allow the development version (= master branch) of Ruby 3.1 https://github.com/ruby/error_highlight/commit/2dca1446c9 commit 59ead8856335c651eec8481095f85e22ac5305e6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-30 15:45:04 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-30 15:45:21 +0900 [DOC] add notes and examples for pipe [ci skip] commit 8ccc257434a73bcb8073d4ebb957a259126f686e Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-30 14:02:28 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-30 14:02:28 +0900 Add the gemspec for error_highlight commit b270b5df2c849879af42cb0d948d970bfe404946 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-30 13:41:18 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-30 13:41:18 +0900 Prevent "warning: ambiguity between regexp and two divisions" commit 6c6b128c671c27c2c68830439b1618da8f3acfdd Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-30 13:36:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-30 13:36:31 +0900 [ruby/error_highlight] Bump version https://github.com/ruby/error_highlight/commit/8d483c251e commit ca4e5b1eb33f3bae9ced2e7643ae7db3e11fa65d Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-30 12:31:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-30 12:49:27 +0900 [ruby/error_highlight] Reconsider the API of ErrorHighlight.spot https://github.com/ruby/error_highlight/commit/acb2046a82 commit f428ced69c70473b8405aae9c98828aa6f69b254 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-30 12:28:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-30 12:49:18 +0900 [ruby/error_highlight] Experimentally support a custom formatter https://github.com/ruby/error_highlight/commit/f40a1de20e commit db7e9b1aac7752259e60e09b92ea2d2e74b0886d Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-30 11:44:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-30 11:46:47 +0900 [ruby/error_highlight] Add some comments https://github.com/ruby/error_highlight/commit/e0c90c72c3 commit 3391682edaf43d415e509809f72d6b859d69d7a4 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-30 11:39:39 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-30 11:39:39 +0900 tool/sync_default_gems.rb: remove unneeded code for error_highlight sync commit 393f84da4a47134c5cb8235f299e3c5d2e92f21d Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-30 10:55:56 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-30 10:56:59 +0900 tool/sync_default_gems.rb: Add error_highlight gem commit 3dd3ea092acead6179033f2c95525ffc5b8bb6ff Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-06-18 06:47:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-30 10:49:27 +0900 Use Module#ancestors order in recursive constant lookup Before this commit, const_get with inherit=true and constant lookup expressions searched the ancestors of the starting point in an order different from `starting_point.ancestors`. Items in the ancestry list introduced through prepend were searched after searching the module they were prepended into. This oddity allowed for situations where constant lookups gave different results even though `starting_point.ancestors` is the same. Do the lookup in the same order as `starting_point.ancestors` by skipping classes and modules that have an origin iclass. The origin iclass is in the super chain after the prepended modules. Note that just like before this commit, the starting point of the constant lookup is always the first item that we search, regardless of the presence of any prepended modules. [Bug #17887] Notes: Merged: https://github.com/ruby/ruby/pull/4585 commit dcd1eedba7af06cdb7f81f1fc4866088665c9d99 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-30 10:47:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-30 10:47:24 +0900 * 2021-06-30 [ci skip] commit 94bd3bde8181b9abbd0b55f1382268dc78be2c37 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-07 16:40:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-30 10:47:01 +0900 Specify version to remove as bare numbers Notes: Merged: https://github.com/ruby/ruby/pull/3972 commit 21600a5f643d7edb3ce76e0257b92848ee86568e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-07 16:35:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-30 10:47:01 +0900 Ensure that version number starts with digits Notes: Merged: https://github.com/ruby/ruby/pull/3972 commit 0b726924a4ac6a09b33d0f7d082c30d667b7564e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-28 19:17:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-30 10:47:01 +0900 Show the removal version Notes: Merged: https://github.com/ruby/ruby/pull/3972 commit 8118d435d000adec3023a0ff509baa11cc73fabb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-22 16:37:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-30 10:47:01 +0900 rb_warn_deprecated_to_remove_at [Feature #17432] At compilation time with RUBY_DEBUG enabled, check if the removal version has been reached. Notes: Merged: https://github.com/ruby/ruby/pull/3972 commit d1998d8767affe58be0bd09ec536dae9198a7fbd Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-28 13:55:49 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-29 23:45:49 +0900 tool/test-bundled-gems.rb: Stop tests conflicting with error_highlight This hack should be removed after the minitest side is updated. https://github.com/seattlerb/minitest/pull/880 Notes: Merged: https://github.com/ruby/ruby/pull/4586 commit 9438c99590f5476a81cee8b4cf2de25084a40b42 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-28 13:27:35 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-29 23:45:49 +0900 Rename error_squiggle to error_highlight Notes: Merged: https://github.com/ruby/ruby/pull/4586 commit e94604966572bb43fc887856d54aa54b8e9f7719 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-18 17:11:39 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-29 23:45:49 +0900 [WIP] add error_squiggle gem ``` $ ./local/bin/ruby -e '1.time {}' -e:1:in `<main>': undefined method `time' for 1:Integer (NoMethodError) 1.time {} ^^^^^ Did you mean? times ``` https://bugs.ruby-lang.org/issues/17930 Notes: Merged: https://github.com/ruby/ruby/pull/4586 commit 03dc66449326ce0945c1ccad7f51e57125b2b854 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-06-29 03:44:22 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-06-29 22:28:07 +0900 Fix crash on RGENGC_CHECK_MODE=4 When running btest there is a crash when compiled with RGENGC_CHECK_MODE=4. The crash happens because `during_gc` is not turned off before `gc_marks_check` is called, causing the marking to happen on the main mark stack instead of mark stack created in `objspace_allrefs`. Notes: Merged: https://github.com/ruby/ruby/pull/4610 commit 5e75280c8edcd0f3c8f79d0c532cbfd18074886a Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-29 18:58:31 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-06-29 20:54:41 +0900 Add basic test for updated IO wait functions. Notes: Merged: https://github.com/ruby/ruby/pull/4612 commit 39f99b8176ddec14058919ae8a317ea0c5216812 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-18 17:54:02 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-29 15:49:51 +0900 Use assert_not_match "Did you mean?" for UncorrectableNameCheckTest ... instead of exact matching. I'm now creating a built-in gem that modifies Exception's error message, so the expectation value is changed. IMO, it is good to check that did_you_mean suggestion is NOT added in the uncorrectable case. https://github.com/ruby/did_you_mean/commit/ebe88ec4d2 commit 809f1203744e25fc4d095863593edbfb71529249 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-18 17:45:10 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-29 15:49:51 +0900 Use String#include? instead of end_with? to avoid message duplication Previously, did_you_mean used `msg.end_with?(suggestion)` to check if its suggestion is already added. I'm now creating a gem that also modifies Exception's message. This breaks did_you_mean's duplication check. This change makes the check use String#include? instead of end_with?. https://github.com/ruby/did_you_mean/commit/b35e030549 commit 612b6fcd371adc199fb4503941edfdbbac704ef4 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-18 17:32:47 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-29 15:49:51 +0900 Let Correctable#original_message skip prepended method definitions Previously, DidYouMean::Correctable#original_message did `method(:to_s).super_method.call` to call the original to_s method by skipping Correctable#to_s. I'm now creating a gem that prepends another to_s method to NameError, which confuses the hack. An immediate solution is to replace it with `method(:to_s).super_method.super_method.call` to skip the two methods. But it is too ad-hoc. This changeset uses more extensible approach and allow a prepended module to declare that they should be skipped by defining a constant named `SKIP_TO_S_FOR_SUPER_LOOKUP`. https://github.com/ruby/did_you_mean/commit/8352c154e3 commit 4670458af890e9430395c7f56cb23437932f7f52 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-19 09:00:01 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-29 15:49:51 +0900 Should require "rbconfig" to use RbConfig https://github.com/ruby/did_you_mean/commit/fbe5aaaae8 commit 8356d9e37485be0a1409c6f3add9a42f2f1a876c Author: Yuki Nishijima <yuki24@hey.com> AuthorDate: 2020-12-22 15:14:51 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-29 15:49:51 +0900 Start v1.6.0 development https://github.com/ruby/did_you_mean/commit/3f69171813 commit 9eae8cdefba61e9e51feb30a4b98525593169666 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-28 23:01:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-29 11:41:10 +0900 Prefer qualified names under Thread commit 983c9ad3f197ab8612c08ea894765b43ed089749 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-29 06:06:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-29 06:06:50 +0900 * 2021-06-29 [ci skip] commit d795f494a89e0d9498dfedc54b8a98acc2bc4d7b Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-04-29 23:53:55 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-06-29 06:06:28 +0900 Avoid `free(3)`ing invalid pointer Fixes [Bug #17794] Notes: Merged: https://github.com/ruby/ruby/pull/4611 commit b7d01b0d1bf0526e12e01c58963453f9711c67b5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-28 16:52:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-28 16:52:49 +0900 Refined define_thread_class Reduce duplications * ID caluculations of the same name * checks against the same name * registration to the root module hash commit ac8c674a8108182ee49edca97bd9b65e28c2b03b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-28 12:10:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-28 12:10:24 +0900 * 2021-06-28 [ci skip] commit 47a9b58b2ae52a10c93c5368c7aa30b1eb398bc7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-28 10:51:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-28 10:53:37 +0900 Share freeze option handling commit e724857f42280fe285e6d0de69b4832458b80b0a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-27 21:17:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-27 21:17:58 +0900 Show leaked file descriptors only, without cwd, txt, and so on commit 3839a8fe79a3ec95ff9bf78ad1fd95953d600876 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-27 21:13:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-27 21:13:51 +0900 Narrow the tracing of object allocations to during each test commit 13939d61b4b69bd109c5f41303c79868d639fa44 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-27 09:42:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-27 11:18:41 +0900 Check if closed after each yield [Bug #17661] commit 35c7e83bb32869cd96112ffd850b02047b48fac1 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-27 10:48:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-27 10:52:49 +0900 [ruby/irb] Optimize show_source command further https://github.com/ruby/irb/pull/249 actually slowed down how `code` is concatenated. The original way of creating `code` is faster. [before] user system total real 2.420137 0.005364 2.425501 ( 2.426264) [after] user system total real 1.000221 0.007454 1.007675 ( 1.008295) Theoretically, this implementation might skip lines that don't appear in Ripper tokens, but this assumes such lines don't impact whether the code passes compilation or not. At least normal blank lines seem to have an `on_ignored_nl` token anyway though. https://github.com/ruby/irb/commit/27dd2867cd commit 6eb7c663c665c633bdeae185d45e78832e672acc Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-06-25 14:29:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-27 10:36:11 +0900 [ruby/irb] Improve performance of `show_source` for large class https://github.com/ruby/irb/commit/2b79e9ad21 commit bf789af28a3b7108186743f3cb4fd2f649afdd20 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-26 22:52:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-27 08:37:45 +0900 Added macros for days in month commit 1fd8b6f2b9b856a7becbda989d3d93f3c795f9a8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-26 22:23:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-27 08:37:42 +0900 Shrink monthly tables commit b1428b279fe5069f38dae19951dc0a7031422a2b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-27 04:32:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-27 04:32:56 +0900 * 2021-06-27 [ci skip] commit e86c1f6fc53433ef5c82ed2b7a4cc9a12c153e4c Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-27 04:32:39 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-27 04:32:39 +0900 Work around issue transcoding issue with non-ASCII compatible encodings and xml escaping When using a non-ASCII compatible source and destination encoding and xml escaping (the :xml option to String#encode), the resulting string was broken, as it used the correct non-ASCII compatible encoding, but contained data that was ASCII-compatible instead of compatible with the string's encoding. Work around this issue by detecting the case where both the source and destination encoding are non-ASCII compatible, and transcoding the source string from the non-ASCII compatible encoding to UTF-8. The xml escaping code will correctly handle the UTF-8 source string and the return the correctly encoded and escaped value. Fixes [Bug #12052] Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4605 Merged-By: jeremyevans <code@jeremyevans.net> commit 391abc543cea118a9cd7d6310acadbfa352668ef Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-26 16:05:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-26 16:05:15 +0900 Scan the coderange in the given encoding commit 457a4913be7de70f43a40cdec20e9cbfaacfda36 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-26 02:29:12 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-26 02:30:23 +0900 Disable RBIMPL_ATTR_DEPRECATED for Coverity Scan build Coverity Scan emulates gcc but seems not to support this attribute correctly. commit c86f03be5527f9b199ffe1b0037996a43d478347 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-26 00:15:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-26 00:15:38 +0900 * 2021-06-26 [ci skip] commit 68e1dc51720b0f8bb033aac368122dad6c9aa2ed Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-26 00:13:47 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-26 00:15:16 +0900 iseq.c: Make ast_line_count return 0 when syntax error occurred This broke coverage CI ``` 1) Failure: TestRequire#test_load_syntax_error [/home/runner/work/actions/actions/ruby/test/ruby/test_require.rb:228]: Exception(SyntaxError) with message matches to /unexpected/. [SyntaxError] exception expected, not #<TypeError: no implicit conversion of false into Integer>. ``` https://github.com/ruby/actions/runs/2914743968?check_suite_focus=true commit 5ffb313ccc5d5a25eb8114332093fbdd20850411 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-25 18:56:46 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-25 18:56:46 +0900 Revert "Revert "[ruby/reline] Fix failed test"" I'm so sorry, the previous revert was just a mistake. This reverts commit 9103c3ba8bc09f287f69ca322f58faa34e003f2e. commit 9103c3ba8bc09f287f69ca322f58faa34e003f2e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-25 16:29:55 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-25 17:42:45 +0900 Revert "[ruby/reline] Fix failed test" This reverts commit 491591c7cee842601118efc2698e0e41283827b3. commit bf376cae0c308f738bb255d110ac7c85019515cb Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-23 16:48:45 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-25 17:42:45 +0900 [ruby/reline] Fix missing require. https://github.com/ruby/reline/commit/010b28dfe9 commit e788481843d71030bd5dfee28fd0fc22dcae2f97 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-23 16:44:46 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-25 17:42:45 +0900 [ruby/reline] Avoid using blocking `IO.select`. https://github.com/ruby/reline/commit/de94746393 commit d340b091a82461b039cdfb9ba9c7ffee0ec89f0a Author: ima1zumi <mariimaizumi5@gmail.com> AuthorDate: 2021-06-25 01:04:16 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-25 17:42:45 +0900 [ruby/reline] Fix failed test For ruby/ruby repository's AppVeyor CI (Windows environment), `Reline::IOGate.encoding` will be changed from `UTF-8` to `Windows-31J` after the test is run. So, when `test/reline/test_key_actor_emacs.rb` is loaded, `Reline::IOGate.encoding == Encoding::UTF_8` will be `true`, but at the time of test execution, `Reline::IOGate.encoding` is `Windows-31J`. For this reason, I changed the test method to check `Reline::IOGate.encoding` in the test method. https://github.com/ruby/reline/commit/10e1ce3320 commit b048fd572af71c1015ac6701f718fbcf6dca2fb2 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-25 17:27:17 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-25 17:27:17 +0900 Followed up 66d2fc7989d741bf5a73286233139901cecb4fc2 commit b036a44e57a662d94ba2e67512f6d390b1e36b45 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-04-28 03:49:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-25 17:26:27 +0900 [ruby/racc] Remove Object monkey patch I don't think we need this monkey patch anymore, so lets remove it! https://github.com/ruby/racc/commit/464485e912 commit 7641a83d1f314c3c9400f733cd758164de4fa6c1 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-22 18:17:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-25 17:26:27 +0900 [ruby/racc] Removed needless condition for old versions of RubyGems. https://github.com/ruby/racc/commit/fe3183b1ff commit dd0a9507a2a818d34dc4413717666800ede78f2d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-22 18:16:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-25 17:26:27 +0900 [ruby/racc] Drop to support Ruby 2.4 https://github.com/ruby/racc/commit/5af1a42a3b commit 77c1f6b1ecd48d991a8e876b539602f0624ecb3a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-22 18:24:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-25 17:26:27 +0900 [ruby/racc] Followed up #162 https://github.com/ruby/racc/commit/d66cd12166 commit 71344a1d63038aa30328f91a180efb486ae4c19a Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-05-31 19:15:56 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-25 17:23:06 +0900 [ruby/racc] Stop compressing integer lists It is unclear why this was implemented, I assume it was for performance back in 2006. However today, this compression defeats bytecode caching entirely and end up being counter productive. https://github.com/ruby/racc/commit/ae3703c1d0 commit be230615d016e27d5b45b465d1481f6ecf7f1d28 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-16 02:06:52 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-06-25 04:25:33 +0900 Remove shift of ep when computing Proc#hash The shift was causing far fewer unique values of hash than expected. Fix pointed out by xtkoba (Tee KOBAYASHI) Fixes [Bug #17951] Notes: Merged: https://github.com/ruby/ruby/pull/4574 commit 3ab68b910fc2c7bad0432892bddd9874e77ad35e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-25 04:22:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-25 04:22:30 +0900 * 2021-06-25 [ci skip] commit a2592702ae4c18662a162805aa06d88046742f05 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-18 02:13:33 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-06-25 04:22:09 +0900 Actually ignore FNM_CASEFOLD flag in Dir.glob This was already documented as being ignored, but it wasn't being ignored, causing an issue in a particular case where a UTF-8 pattern was provided and a filename was tested that wasn't valid UTF-8. Fixes [Bug #14456] Notes: Merged: https://github.com/ruby/ruby/pull/4583 commit 189f154786fd6392633fefd50bd76e9bdb401b52 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-24 21:53:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-24 21:53:59 +0900 [DOC] fixed return value of ENV.clone [ci skip] commit fb978fab6d51c3ec0114098f0195fcef9bfc6efc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-24 20:39:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-24 20:39:52 +0900 Tests for MiniTest define anonymous test cases commit e1c3cb9357aa952633757556fccb4e7e14dfa091 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-24 18:49:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-24 18:52:35 +0900 test: imply random test order by --seed option commit 627aafac866b8eef562e9772998d0967f26b1c20 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 21:55:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-24 17:04:42 +0900 Remove also debug symbol directory at clean on macOS commit 1356b90c9121ab6993307eb9d7e18dd462636ef5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 21:53:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-24 17:04:41 +0900 Prefer configured command as RM_RF commit 358a357f727be271a1a59dfbc2ec0bf634261205 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 11:02:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-24 13:27:02 +0900 Reduce repeated same code commit 4c8c3fb2309fe4204a4d8d972a8f64b2911bca9f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 19:18:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-24 13:01:47 +0900 Load rubygems before default gems commit 6875408583996731882b4b981c3a4cd64f0d2186 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-21 14:04:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-24 13:01:46 +0900 Introduced RUBY_CRLF_ENVIRONMENT to simplify repeated condition commit 0fbdaaf7c91dd2ad09da3107d92fdce24eb21d42 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-24 11:57:40 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-06-24 12:48:17 +0900 rand_bytes: prefer rng->get_bytes Because why not. There was no use case of rng->get_bytes before this changeset. Notes: Merged: https://github.com/ruby/ruby/pull/4602 commit 31f4d262736c224a37e7c630a0790d40b11cdd57 Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-06-24 02:28:22 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-06-24 03:34:37 +0900 Check type of instruction - can be INSN or ADJUST If the type is ADJUST we don't want to treat it like an INSN so we have to check the type before reading from `insn_info.events`. [Bug #18001] [ruby-core:104371] Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4601 commit b29c48efc0b08a52b6f72cf8f0ac16b93e373a5c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-24 02:03:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-24 02:03:26 +0900 * 2021-06-24 [ci skip] commit 8209b735807d449c0a870562ee240585127ee100 Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-06-23 02:43:18 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-06-24 02:03:09 +0900 Evacuate transient heap when enabling ractors If the GC has been disabled we need to re-enable it so we can evacuate the transient heap. Fixes https://bugs.ruby-lang.org/issues/17985 [Bug #17985] [ruby-core:104260] Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4596 commit 2fb435b3ab19bab644083c6eaf7ff06ce5b01841 Author: Ketan Bhatt <ketanbhatt1006@gmail.com> AuthorDate: 2021-05-13 18:28:51 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-06-23 23:42:02 +0900 Add Related link from String#hash to Object#hash We came across a bug in our code because we assumed `String#hash` to be consistent across Ruby processes, which was incorrect. Our search lead us to `Object#hash` which has the right warning that `String#hash` doesn't. We also noticed that a previous version of the documentation for `String#hash` pointed to `Object#hash` that was removed by https://github.com/ruby/ruby/pull/3565. We think this removal might not be intended and just got missed amidst other changes. Notes: Merged: https://github.com/ruby/ruby/pull/4498 commit 7c31ecd3accd75d164b4f87b0651b47f31da286d Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-16 02:11:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 21:48:42 +0900 Add parentheses to avoid pointless condition Pointed out by xtkoba (Tee KOBAYASHI). Fixes [Bug #17946] Notes: Merged: https://github.com/ruby/ruby/pull/4575 commit 557b4eb4aa83f60eacfaae3f5054d78dcc57d1b6 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-23 21:00:20 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-23 21:00:48 +0900 Add detailed message to assert_external_string_equal commit 298d65b1e4f3019af7fc9b905390b56736f5fd0e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 18:57:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 18:57:39 +0900 Discard RDOCOPT environment variable to make tests stable commit 09e7a0c4a4fba18e3308e4f8cb4b8b5b52b41d20 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 18:56:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 18:56:10 +0900 Dispose the global rubygems configuration wholely commit ddb87396349fa4699153d5c4c7569c2e0186adfc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 18:46:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 18:46:53 +0900 Clear rdoc options in the global rubygems configuration commit 69ce9e4187589335124077029496ee293d4e9189 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 15:14:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 15:14:21 +0900 Clear default configurations Remove environment variables which can affect the default configurations. commit 950c7a12efa19d73bed10d377368a50664cae32c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 14:15:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 14:17:43 +0900 Make temporary directory under the regular location commit 923b3652247aa17ac99dc45cb1cd0654fa08d976 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 12:52:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 12:52:32 +0900 Close UserInteraction for tests to fix leaked file descriptors commit 8f16a715e1727d83e09c95f5c87a5837a6c26db1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 12:41:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 12:41:54 +0900 Revert deprecations for now commit 6aaa1c4d09249baae93d5bb7fba585be420c4fee Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-18 14:21:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 11:05:18 +0900 [ruby/rdoc] Use pend instead of skip https://github.com/ruby/rdoc/commit/8460a36d84 commit 193eea9dcd77561521a85250aa008fd633a124bc Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-18 13:59:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 11:05:16 +0900 [ruby/rdoc] Specify working directory for RDoc::Options#check_files https://github.com/ruby/rdoc/commit/f6cca9bd2f commit f2e39e5fed498b51ae914ed42ec51ae578330583 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-18 13:13:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 11:05:14 +0900 [ruby/rdoc] Update test/rdoc/test_rdoc_rubygems_hook.rb https://github.com/ruby/rdoc/commit/fb264c4cc4 Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> commit c483aa8394fc26e341666db66938b1d6fc2cbb8e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-18 09:51:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 11:05:11 +0900 [ruby/rdoc] Rewrite test-case for rubygems_hook without Gem::TestCase https://github.com/ruby/rdoc/commit/f8d1087ce5 commit def7b3ee091781c61e8a30d1b63949dfe3654b51 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 10:50:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 10:55:23 +0900 Get rid of pointer casting commit 0700ee0e946ff278699eb9aa068e7abbc3700dda Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 09:39:04 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 10:55:22 +0900 Refactor class variable cache functions Extracted repeated code as update_classvariable_cache. When cvc table is not set in getclassvariable, an empty table was created but it has no id and would cause [BUG], so made the code same as setclassvariable. commit 46ff44ef17cc6ed48f4c5657b26ee8c8c7cab9c8 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-06-19 13:07:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-23 10:23:10 +0900 Add nilclass.rb to .document Notes: Merged: https://github.com/ruby/ruby/pull/4591 commit fd7023a87e73abf2ef531a1a6b0c0645887ec841 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 10:09:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 10:09:25 +0900 Convert ssize_t properly commit 3b615f4353aa43016c79fd7f44b1f918ddd6e54c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-23 10:07:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-23 10:08:51 +0900 Strip trailing spaces commit 87e52ee38b540d09d621162592b5b96f07756606 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-06-23 09:23:54 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-06-23 09:23:54 +0900 Fix a link [ci skip] commit ad588456953a770e3ef98a8ab9774c4e8c95831f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-23 06:34:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-23 06:34:24 +0900 * 2021-06-23 [ci skip] commit 4f77a54f07b17b19e0dd329877ce9895d98c6cad Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-06-23 03:00:16 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-06-23 06:34:08 +0900 Fix asan error when walking heap for T_PAYLOAD objects Related to https://bugs.ruby-lang.org/issues/18001 Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4597 commit de779f4a620f408b72004a06545455f5a51a8584 Author: Keiko Kaneko <keiko.cda@gmail.com> AuthorDate: 2021-06-20 11:36:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-22 22:32:42 +0900 [ruby/irb] Sort ls result ordered by anscestry https://github.com/ruby/irb/commit/fdd5c0a71e commit bce0021f75eaca118c18ebb5a4fe29ede565071f Author: Anton Rieder <1301152+aried3r@users.noreply.github.com> AuthorDate: 2021-06-22 20:15:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-22 20:51:57 +0900 [Documentation] Fix typo, formatting in `time.c` Backticks do not result in code formatting. Notes: Merged: https://github.com/ruby/ruby/pull/4594 commit eef3c08edc2fc74496cdc1e4d89798d053e32561 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-22 20:18:40 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-06-22 20:18:40 +0900 Fix NEWS formatting. commit e01fa2f6fffe4599b10e88865992f476f9656039 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-22 20:14:45 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-06-22 20:16:29 +0900 Add fiber scheduler news. Notes: Merged: https://github.com/ruby/ruby/pull/4593 commit fcc6fd23ec779a2421154bad441e168e4c6d4194 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-20 08:05:15 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-06-22 19:48:57 +0900 Rework `sysread` to use blocking `read_internal_locktmp`. Notes: Merged: https://github.com/ruby/ruby/pull/4592 commit 45e65f302b663b2c6ab69df06d3b6f219c1797b2 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-19 10:47:16 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-06-22 19:48:57 +0900 Deprecate and rework old (fd) centric functions. Notes: Merged: https://github.com/ruby/ruby/pull/4592 commit 3deb5d7113e1fd6e4b468e09464d524d390d811e Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-05-08 21:13:47 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-06-22 19:17:53 +0900 Direct io for accept, send, sendmsg, recvfrom, and related methods. Notes: Merged: https://github.com/ruby/ruby/pull/4477 commit ff609eee98dc5c20f68b7befac147537e640aad1 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-22 16:36:36 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-22 16:36:36 +0900 Avoid a duplicated method definition of Object#stub http://rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20210622T063005Z.log.html.gz ``` /home/chkbuild/chkbuild/tmp/build/20210622T063005Z/ruby/test/rubygems/helper.rb:1565: warning: method redefined; discarding old stub /home/chkbuild/chkbuild/tmp/build/20210622T063005Z/ruby/test/resolv/test_dns.rb:8: warning: previous definition of stub was here ``` commit 6a48f62c51bfd59e487bf3ebe01436c43f52c681 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-14 17:18:32 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-22 11:06:00 +0900 [ruby/readline-ext] Version 0.1.2 https://github.com/ruby/readline-ext/commit/8541aaccb5 commit 4b28fea6ee9682dfad2afa2138c0e5820babadaa Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-07 00:10:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-22 09:46:40 +0900 Run ifchange with shell explicitly, workaround of noexec mount commit e2599a358d6b6a83f2da0972e1f91eccbf69c55e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-22 02:40:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-22 02:40:47 +0900 * 2021-06-22 [ci skip] commit c1741df1a1a92d227b1afd03931c3b54fb2d4429 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-05-18 22:27:41 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-06-22 02:38:16 +0900 What's Here for Numeric and Comparable commit 8509532c78ab2a8cc0efeadee6367bbe7991ee49 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-21 23:13:04 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 23:13:04 +0900 Fix finish_using_lib_reline commit 06d52249de50cef381fc6579d7a55f5a86322664 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-21 22:29:04 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 22:29:04 +0900 Call super method by teardown of tests of Reline as Readline commit 215fd1bf2ca70c5853623a0575b34863cc165057 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-21 22:24:31 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 22:26:11 +0900 Call Reline-specific method in helper file commit 046fd3ac8c9b00560cbe1055a300c3bb5f35f1bc Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-21 22:12:06 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 22:12:14 +0900 Rescue conversion error of inputrc commit 574c8ee9f1ad53ab85f9f97d43f405aa70ccbdb7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-21 22:11:34 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 22:12:14 +0900 Call Reline.test_reset in teardown of tests for readline definitely commit e11800e11461741b76c727d321850c04e63f8885 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-21 22:09:24 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 22:12:14 +0900 Use test encoding for TestRelineAsReadline and TestRelineAsReadlineHistory commit 1192393b3ed0952705e0faa476d84d757c50f1ce Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-21 22:08:13 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 22:12:14 +0900 Stop using global constant, RELINE_TEST_ENCODING commit af19f9a6e9525b062ce3788f7120a8b72f737c6d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-21 22:06:33 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 22:12:14 +0900 Call Reline.test_reset in teardown definitely commit 9498ea9385c5e9b29daa8a5109c99507ebc326f9 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-21 21:43:00 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 22:12:14 +0900 Revert "Use Encoding.default_external for tests of Readline::HISTORY" This reverts commit 089a26b0a619a649b1958061df8f21a6cdc6cacd. commit ed8e265d4be53e15bffea3b1db649b1cea4ea864 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-21 21:15:25 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-21 21:15:25 +0900 Experimentally expose RubyVM::AST::Node#node_id Now ISeq#to_a includes the node_id list for each bytecode instruction. I want a way to retrieve the AST::Node instance corresponding to an instruction for a research purpose including TypeProf-based LSP server. commit 089a26b0a619a649b1958061df8f21a6cdc6cacd Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-21 19:31:14 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 19:31:14 +0900 Use Encoding.default_external for tests of Readline::HISTORY commit 30cc07fdc127e36d42e832bfcca755c863daf336 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-21 18:44:10 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 18:44:10 +0900 Check Ruby version to use Fiddle with variadic args in test-all commit 5cc11845b2feb609a54fd1be8748da590eeebdb3 Author: Ulysse Buonomo <buonomo.ulysse@gmail.com> AuthorDate: 2021-05-27 14:35:09 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 18:03:49 +0900 [ruby/irb] Improve stackprof measure Allow usage of more detailed args when setting stackprof callback. Signed-off-by: Ulysse Buonomo <buonomo.ulysse@gmail.com> https://github.com/ruby/irb/commit/c9d101f450 commit 90df42642628340a6826053d2db606b425833964 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-20 17:36:39 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:49 +0900 [ruby/reline] Version 0.2.6 https://github.com/ruby/reline/commit/5917e3a337 commit 00b027a69ba4f6b0df8d10cb84ef0547d592dc91 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-09 20:37:10 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:49 +0900 [ruby/reline] Fix explamation of #read_io https://github.com/ruby/reline/commit/301ed11bec commit cf6f686d299d7b2f54512b985f0f4540ebcbe71a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-06 23:53:03 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:49 +0900 [ruby/reline] Remove an obsolete commented-out test https://github.com/ruby/reline/commit/5354d02e03 commit 95a3cdade6c1b81c550d044c1be7b2dcdef0c002 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-03 19:10:49 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:49 +0900 [ruby/reline] Remove FIXME comment in #render https://github.com/ruby/reline/commit/acd8f8efbb commit b06218ce6ffdaf73d3668e760a34118021b978b5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-02 19:10:08 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:49 +0900 [ruby/reline] Remove TODO comment in #render_partial https://github.com/ruby/reline/commit/bb6ea232c2 commit cf186bfe146d187048f3902078682d0ebce4e001 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-31 17:20:34 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:49 +0900 [ruby/reline] Add yamatanooroti test about set and exchange mark https://github.com/ruby/reline/commit/2e6fdca5c6 commit 8135f489bee3e89e3bdd4f55ee7b71d92f96d99e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-30 17:19:57 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:49 +0900 [ruby/reline] Add binding C-x C-x to em_exchange_mark on Windows https://github.com/ruby/reline/commit/24a2489b62 commit 882c0d50159c95415843e34df5111a25081e3a93 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-29 22:46:22 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:49 +0900 [ruby/reline] Reset config for random test https://github.com/ruby/reline/commit/c39615e1dd commit fa5a258e932d82123545c4ddba0be0ca370fa303 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-28 17:09:25 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:49 +0900 [ruby/reline] Treat C-Space as M-Space on Windows https://github.com/ruby/reline/commit/69beca2863 commit 582b5705abf70318b00be7c3cb9a41bbe4897a20 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-20 19:40:09 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] Check existence of a constant, Fiddle::VERSION https://github.com/ruby/reline/commit/4b74c3d83a commit 18b79b4c49767e647564f59e130fd20b1bd014fe Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-19 17:58:25 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] Add Meta+arrow-keys in extended entries of terminfo https://github.com/ruby/reline/commit/af6f6ed088 commit 60d1d6aa897860cb2994d873956dacdf1678269a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-19 17:57:30 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] Terminfo.tigetstr should be able to receive tiparm in method chain https://github.com/ruby/reline/commit/4a3e308163 commit 5e09da2f7a29d076ffefb8585758fc1fbee2ac08 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-19 17:53:17 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] Terminfo.tigetstr and tiparm should return String object https://github.com/ruby/reline/commit/1e287d10cc commit 46c813969be642e61763379e03c9698b91ab1a96 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-18 21:46:16 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] Add terminfo support https://github.com/ruby/reline/commit/74a7ffaa2f commit 1b543dc2261fee0317ba69b366b6a26fe3aeb43f Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-16 22:50:59 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] Handle Errno::ENOTTY correctly https://github.com/ruby/reline/commit/8daa392ba6 commit 242bad9a87dbfc8a6af829ee3da3853925be14ab Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-14 06:42:00 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] Fix Reline::Unicode.calculate_width when input is not a TTY This fixes an error when output is redirected: ``` $ run_ruby -rreline -e '$stderr.puts Reline::Unicode.calculate_width("\u221a").inspect' </dev/null >/dev/null /home/jeremy/tmp/ruby/lib/reline/ansi.rb:189:in `raw': Operation not supported by device (Errno::ENODEV) ``` The @@encoding -> defined?(@@encoding) changes is necessary because without that part of the commit, the following error would be raised by the above command: ``` /home/jeremy/tmp/reline/lib/reline/general_io.rb:10:in `encoding': uninitialized class variable @@encoding in Reline::GeneralIO (NameError) ``` Problem reported and initial patch for Windows provided by Richard Sharman. I tested this only on OpenBSD, but hopefully it works for other operating systems. Fixes [Bug #17493] https://github.com/ruby/reline/commit/c001971bb3 commit 26f31f880cef107d4c13dfe90a988c0f2e185338 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-23 13:29:20 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] Treat return key correctly on Windows To fix Reline::TestRendering#test_binding_for_vi_movement_mode. https://github.com/ruby/reline/commit/0df3d2a1dc commit 754bfc66f85071295d2c46ba325f5847ef678a72 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-22 14:02:37 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] Add a test for pasting Cyrillic chars into command prompt on cp 850 This closes https://github.com/ruby/reline/issues/103. https://github.com/ruby/reline/commit/213e0523d5 commit b0cc46b484028b65b3306e9d19803e49c7b7cd58 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-20 12:00:08 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] The config file must accept any character encoding In Japan, so many programmers used EUC-JP to write text files that contain Japanese. Many .inputrc files which contain EUC-JP are still being copied and used. This commit supports the whole encoding of what user set including UTF-8. ref. https://github.com/ruby/reline/pull/280 https://github.com/ruby/reline/commit/0b45022e16 commit c59bbd86a6bd0f1ce8a7babf56feabeb41a7e675 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-16 19:59:36 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] Use ReadConsoleInputW() instead of getwch() This needs https://github.com/aycabta/yamatanooroti/pull/19, which is released by yamatanooroti gem 0.0.7, to test with yamatanooroti. https://github.com/ruby/reline/commit/06c1f45da1 commit a049dfd10a3b9ae24a1822e807398422e87d142f Author: Mark Delk <jethrodaniel@gmail.com> AuthorDate: 2021-04-14 11:23:07 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-21 17:58:48 +0900 [ruby/reline] ensure reline's encoding is used when reading inputrc character values This change ensures we use `Reline::IOGate`'s `encoding` when converting characters from their integer values. This fixes an issue that may occur if you have UTF characters in your `.inputrc`, but your default encoding isn't set. For example: ``` > 127864.ord.chr RangeError: 127864 out of char range from (pry):1:in `chr' > Reline::IOGate.encoding => #<Encoding:UTF-8> > 127864.ord.chr(Reline::IOGate.encoding) => "🍸" ``` https://github.com/ruby/reline/commit/cf372fc0fc commit c2f30aaade9abe103a727a5440325baff58f66ba Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-06-19 17:34:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-21 17:35:46 +0900 [ruby/irb] Version 1.3.6 https://github.com/ruby/irb/commit/75aa8d159b commit 60eee3c3cb90465e3b8ac30fb269bea044840690 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-21 11:20:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-21 11:20:31 +0900 Fix syntax error in generated code commit 86b5c15e70d61903e14482ee40fa0485706c1bba Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-21 11:08:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-21 11:08:33 +0900 * 2021-06-21 [ci skip] commit 28933c1071b2238066fdc428208745507de33a63 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-21 11:08:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-21 11:08:02 +0900 Adjust indents commit 72a4e1d3bbbdfff71ec2c6b2ddb3b9323193cacd Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-19 03:57:55 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-06-19 10:55:28 +0900 Tweak description of TracePoint :line event "code" here is too ambiguous. TracePoint events only occur if there is a new statement or expression on that line, not if the line is a continuation of a previous statement or expression and there is no new statement or expression on the line. For example: ``` [ foo, # start of expression, line event bar # continuation of expression, no line event ] [ foo, # start of expression, line event (bar) # new expression, line event ] foo( # start of expression, line event bar # continuation of expression, no line event ) foo( # start of expression, line event (bar) # new expression, line event ) ``` Fixes [Bug #15634] Notes: Merged: https://github.com/ruby/ruby/pull/4589 commit 53a094ea45567cdfb7b8aab2f3dde96a15b89565 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-19 02:03:03 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-19 02:03:03 +0900 * 2021-06-19 [ci skip] commit b91b3bc7717a97f4f1cdf6131b1688e1958dcfed Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-06-02 02:34:06 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-06-19 02:02:44 +0900 Add a cache for class variables Redo of 34a2acdac788602c14bf05fb616215187badd504 and 931138b00696419945dc03e10f033b1f53cd50f3 which were reverted. GitHub PR #4340. This change implements a cache for class variables. Previously there was no cache for cvars. Cvar access is slow due to needing to travel all the way up th ancestor tree before returning the cvar value. The deeper the ancestor tree the slower cvar access will be. The benefits of the cache are more visible with a higher number of included modules due to the way Ruby looks up class variables. The benchmark here includes 26 modules and shows with the cache, this branch is 6.5x faster when accessing class variables. ``` compare-ruby: ruby 3.1.0dev (2021-03-15T06:22:34Z master 9e5105c) [x86_64-darwin19] built-ruby: ruby 3.1.0dev (2021-03-15T12:12:44Z add-cache-for-clas.. c6be009) [x86_64-darwin19] | |compare-ruby|built-ruby| |:--------|-----------:|---------:| |vm_cvar | 5.681M| 36.980M| | | -| 6.51x| ``` Benchmark.ips calling `ActiveRecord::Base.logger` from within a Rails application. ActiveRecord::Base.logger has 71 ancestors. The more ancestors a tree has, the more clear the speed increase. IE if Base had only one ancestor we'd see no improvement. This benchmark is run on a vanilla Rails application. Benchmark code: ```ruby require "benchmark/ips" require_relative "config/environment" Benchmark.ips do |x| x.report "logger" do ActiveRecord::Base.logger end end ``` Ruby 3.0 master / Rails 6.1: ``` Warming up -------------------------------------- logger 155.251k i/100ms Calculating ------------------------------------- ``` Ruby 3.0 with cvar cache / Rails 6.1: ``` Warming up -------------------------------------- logger 1.546M i/100ms Calculating ------------------------------------- logger 14.857M (± 4.8%) i/s - 74.198M in 5.006202s ``` Lastly we ran a benchmark to demonstrate the difference between master and our cache when the number of modules increases. This benchmark measures 1 ancestor, 30 ancestors, and 100 ancestors. Ruby 3.0 master: ``` Warming up -------------------------------------- 1 module 1.231M i/100ms 30 modules 432.020k i/100ms 100 modules 145.399k i/100ms Calculating ------------------------------------- 1 module 12.210M (± 2.1%) i/s - 61.553M in 5.043400s 30 modules 4.354M (± 2.7%) i/s - 22.033M in 5.063839s 100 modules 1.434M (± 2.9%) i/s - 7.270M in 5.072531s Comparison: 1 module: 12209958.3 i/s 30 modules: 4354217.8 i/s - 2.80x (± 0.00) slower 100 modules: 1434447.3 i/s - 8.51x (± 0.00) slower ``` Ruby 3.0 with cvar cache: ``` Warming up -------------------------------------- 1 module 1.641M i/100ms 30 modules 1.655M i/100ms 100 modules 1.620M i/100ms Calculating ------------------------------------- 1 module 16.279M (± 3.8%) i/s - 82.038M in 5.046923s 30 modules 15.891M (± 3.9%) i/s - 79.459M in 5.007958s 100 modules 16.087M (± 3.6%) i/s - 81.005M in 5.041931s Comparison: 1 module: 16279458.0 i/s 100 modules: 16087484.6 i/s - same-ish: difference falls within error 30 modules: 15891406.2 i/s - same-ish: difference falls within error ``` Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4544 commit 9d96837dbd1887d04f5ff7c2a1f0a27d7339133a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-18 19:13:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-18 19:13:36 +0900 Bump matrix version to 0.4.2 commit bdeaa60e7be8153e247508801158d3062056918f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-18 11:58:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-18 11:58:15 +0900 Make frozen Time Ractor-shareable commit 1de063a10b5c5c71d0602c961862b8396702dbb1 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-18 02:34:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-18 10:58:27 +0900 Add section on build requirements to the README I'm not sure that this is section is complete (may be missing requirements), or accurate (minimum automake or bison versions may not be correct). However, I think it's useful, and we can adjust it in the future to add requirements or adjust requirement versions. Fixes [Bug #14409] Notes: Merged: https://github.com/ruby/ruby/pull/4582 commit 0a36cab1b53646062026c3181117fad73802baf4 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-08 17:57:44 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-18 03:35:38 +0900 Enable USE_ISEQ_NODE_ID by default ... which is formally called EXPERIMENTAL_ISEQ_NODE_ID. See also ff69ef27b06eed1ba750e7d9cab8322f351ed245. https://bugs.ruby-lang.org/issues/17930 Notes: Merged: https://github.com/ruby/ruby/pull/4558 commit dfba87cd622f9699f54d1d0b8c057deb428874b6 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-08 17:34:08 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-18 03:35:38 +0900 Make it possible to get AST::Node from Thread::Backtrace::Location RubyVM::AST.of(Thread::Backtrace::Location) returns a node that corresponds to the location. Typically, the node is a method call, but not always. This change also includes iseq's dump/load support of node_ids for each instructions. Notes: Merged: https://github.com/ruby/ruby/pull/4558 commit ea6062898ad0d66ede0a1866028c0605c357e2cb Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-08 13:22:27 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-18 03:35:38 +0900 Remove LOCATION_TYPE_ISEQ_CALCED state from Backtrace::Location Previously Backtrace::Location had two possible states: LOCATION_TYPE_ISEQ and LOCATION_TYPE_ISEQ_CALCED. The former had the location information as PC, and the latter had it as lineno. Once lineno was calculated, the state was changed to LOCATION_TYPE_ISEQ_CALCED and the calculated result was kept. This change removes LOCATION_TYPE_ISEQ_CALCED, so lineno is calculated whenever it is needed. It will be slow a little, but lineno is typically needed only when its backtrace is shown, so I believe that it does not matter. This is a preparation to add column information to Backtrace::Location because PC is needed to calculate node_id for AST::Node even after lineno is calculated. This change is approved by ko1. Notes: Merged: https://github.com/ruby/ruby/pull/4558 commit ed3e30fc09b79d025cdcaedd7bc10b04fd8514fe Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-18 02:34:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-18 02:34:45 +0900 * 2021-06-18 [ci skip] commit fb01411ae842dbcc16d18dec2216fa2719649dff Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-18 01:31:50 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-18 02:34:27 +0900 node.h: Reduce struct size to fit with Ruby object size (five VALUEs) by merging `rb_ast_body_t#line_count` and `#script_lines`. Fortunately `line_count == RARRAY_LEN(script_lines)` was always satisfied. When script_lines is saved, it has an array of lines, and when not saved, it has a Fixnum that represents the old line_count. Notes: Merged: https://github.com/ruby/ruby/pull/4581 commit acae5f363dfaedd9c2873cee68c9498da3c072f5 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-17 23:43:08 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-18 02:34:27 +0900 ast.rb: RubyVM::AST.parse and .of accepts `save_script_lines: true` This option makes the parser keep the original source as an array of the original code lines. This feature exploits the mechanism of `SCRIPT_LINES__` but records only the specified code that is passed to RubyVM::AST.of or .parse, instead of recording all parsed program texts. Notes: Merged: https://github.com/ruby/ruby/pull/4581 commit c639b58823cd8cc62853acf00a49b67ac359ea73 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-06-17 23:19:33 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-06-17 23:58:48 +0900 Refactor heap_set_increment heap_set_increment essentially only calls heap_allocatable_pages_set. They only differ in behaviour when `additional_pages == 0`. However, this is only possible because heap_extend_pages may return 0. This commit also changes heap_extend_pages to always return at least 1. Notes: Merged: https://github.com/ruby/ruby/pull/4580 commit 95ef5459978300e4a3bbbeb1bd6cd86d040db168 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-17 12:13:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-17 12:28:15 +0900 [rubygems/rubygems] Close then unlink tempfiles on Windows In ruby/ruby test actions, number of "leaked tempfile" messages are shown on Windows. As Windows disallows removing open files, `Tempfile#unlink` fails silently before `#close`. Close then unlink by `#close!` instead. https://github.com/rubygems/rubygems/commit/fe0b88ac30 commit e4f891ce8d4833fea1e1f9abd69c2896d429a948 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-16 22:07:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-17 10:13:40 +0900 Adjust styles [ci skip] * --braces-after-func-def-line * --dont-cuddle-else * --procnames-start-lines * --space-after-for * --space-after-if * --space-after-while commit 4e097226370ec93bd25823d6a0dd34963619b1b9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-17 06:09:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-17 06:09:36 +0900 * 2021-06-17 [ci skip] commit c1a7e86f40fea7e83c797af34d389cdccb869817 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-17 06:09:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-17 06:09:26 +0900 * expand tabs. [ci skip] Tabs were expanded because the file did not have any tab indentation in unedited lines. Please update your editor config, and use misc/expand_tabs.rb in the pre-commit hook. commit c10d5085a247266c6399dc6fb68706d87cbdab05 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-06-15 09:32:42 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-06-17 06:09:09 +0900 Enable frozen_string_literal in builtin_iseq_load Currently this has a fairly minor effect as strings are not used heavily inside the builtins (outside of warnings, requires, and errors). Hopefully this allows us to use strings in the future where appropriate. Notes: Merged: https://github.com/ruby/ruby/pull/4573 commit 2b17d2f2970d382ac61d15d66f46d1c56f8f2598 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-03 15:36:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-16 22:23:46 +0900 [ruby/net-protocol] Get rid of `__send__` Mitigate the security risk: https://devcraft.io/2021/01/07/universal-deserialisation-gadget-for-ruby-2-x-3-x.html https://github.com/ruby/net-protocol/commit/a9970437e8 commit f4640f64a4d242e7ce56b248de41b3021dcdf77d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-16 14:28:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-16 14:31:02 +0900 Fixed comments in cmd.exe script [ci skip] commit f136c1ec804e1837f006f3abbf2ef90f1ef8134d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-16 13:31:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-16 13:33:56 +0900 Removed redundant NUM2IOCTLREQ definition [Bug #17759] Fix up c2d9967f78d2e6f93f8d9876c2b3ab25aa6b86e7. commit c2d9967f78d2e6f93f8d9876c2b3ab25aa6b86e7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-16 11:51:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-16 13:17:19 +0900 Configure ioctl request argument type [Bug #17759] Notes: Merged: https://github.com/ruby/ruby/pull/4576 commit d4db18d6adf93ba48bb15657f4d96d15cf0b7f93 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-16 00:09:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-16 00:09:02 +0900 * 2021-06-16 [ci skip] commit 43ed1e68a183a64237671bd7daa42dfb49950faa Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-16 00:08:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-16 00:08:28 +0900 Make ext directory before extinit.c when out-of-place build commit d09f097eec4fb85cbb43481bdc6d7fcc82f94697 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-15 21:39:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-15 21:42:55 +0900 Time#getlocal tests for [Feature #17544] commit b32e6c168a3463c1eda7a94f7716adbd3d607a38 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-15 15:55:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-15 15:55:52 +0900 Convert initial contents before allocating queue buffer commit f0818982e947dc52d9ad57ccd02fe034b84ab374 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-06-15 02:15:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-15 12:04:05 +0900 [ruby/ostruct] v0.4.0 https://github.com/ruby/ostruct/commit/8534f69e4e commit 2088a457981b0f71a3bfd14871ed5b6f0d090e6a Author: Eileen M. Uchitelle <eileencodes@users.noreply.github.com> AuthorDate: 2021-06-15 09:34:57 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-15 09:34:57 +0900 [Bug #17880] Set leaf false on opt_setinlinecache (#4565) This change fixes the bug described in https://bugs.ruby-lang.org/issues/17880. Checking `ractor_shareable_p` will cause the method to call back into Ruby. Anything calling this method can't be a leaf instruction, otherwise it could crash. By adding `attr bool leaf = false` we no longer crash because it marks the function as not a leaf. Here's a simplified reproduction script: ```ruby require "set" class Id attr_reader :db_id def initialize(db_id) @db_id = db_id end def ==(other) other.class == self.class && other.db_id == db_id end alias_method :eql?, :== def hash 10 end def <=>(other) db_id <=> other.db_id if other.is_a?(self.class) end end class Namespace IDS = Set[ Id.new(1).freeze, Id.new(2).freeze, Id.new(3).freeze, Id.new(4).freeze, ].freeze class << self def test?(id) IDS.include?(id) end end end p Namespace.test?(Id.new(1)) p Namespace.test?(Id.new(5)) ``` Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit a09ddfc4207cce58693f2226ebbbc4b8f009fb23 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-06-14 23:15:11 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-06-15 01:28:53 +0900 [lib/ostruct] Fix YAML test Notes: Merged: https://github.com/ruby/ruby/pull/4572 commit 52369fc545c458efb2fa7e8ca183b119252bb4f9 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-06-14 23:07:51 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-06-15 01:28:53 +0900 [lib/ostruct] Allow overriding of `block_given?` Notes: Merged: https://github.com/ruby/ruby/pull/4572 commit fc98602ecc0cfbf6bb0fb5925298330a1ab227e0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-15 00:04:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-15 00:04:05 +0900 * 2021-06-15 [ci skip] commit edbe0e224c2594b7a7b055f0986cbfd690d754d5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-15 00:03:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-15 00:03:05 +0900 Suppress exception report in inner thread commit 57eaa07ba6c1ee958c16d5c451e2dceb2208edf1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-15 00:02:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-15 00:02:15 +0900 Close leaked file descriptors commit 5dde13e5ce7236d1de428f6a74f1043c6893bacf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-14 23:30:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-14 23:31:49 +0900 [ruby/ostruct] bump up https://github.com/ruby/ostruct/commit/bb253be3e9 commit 70833fab7fc2e912f5a405157b3afa101b482c17 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-14 13:49:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-14 23:24:17 +0900 Suppress gcc11 clobbered warning commit 931ea7cfbec6d863cd8b48308804323704a2696c Author: jfrazx <jfrazx@users.noreply.github.com> AuthorDate: 2021-06-14 22:53:20 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-14 22:53:20 +0900 Add fallback block to `OpenStruct#delete_field` (#1409) Notes: Merged-By: marcandre <github@marc-andre.ca> commit 90cad6e14745d812f042df61a6455db022be7389 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-06-14 09:34:25 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-06-14 22:37:17 +0900 prefer cc/gcc over clang on solaris requested by tankf33der at https://bugs.ruby-lang.org/issues/17949#change-92430 Notes: Merged: https://github.com/ruby/ruby/pull/4567 commit b513fc2fe747e1ad349fa1fe4bfdb5e91dbda0d3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-14 21:15:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-14 21:16:43 +0900 Fixed method names in exception messages These methods are not !-suffixed, and the messages were very confusing. commit 1ab71a5b9875d38bebb7500cc7fa5af40d2f359e Author: Bruno Sutic <code@brunosutic.com> AuthorDate: 2021-06-14 18:07:59 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-06-14 19:09:23 +0900 Fix fiber scheduler address resolve solaris tests Notes: Merged: https://github.com/ruby/ruby/pull/4571 commit 25921fe1d67e4bdd2370e1e9c26f1ed4533af73e Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-14 17:49:43 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-06-14 19:07:59 +0900 Revert "Suppress gcc11 clobbered warning" This reverts commit f0f9e77b65990001bd2acb42e1c6b673f6324425. Notes: Merged: https://github.com/ruby/ruby/pull/4570 commit 050a89543952a2c9e7c9bc938f4fdb538f6c9278 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-14 14:56:53 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-14 14:56:53 +0900 Wake up join list within thread EC context. (#4471) * Wake up join list within thread EC context. * Consume items from join list so that they are not re-executed. If `rb_fiber_scheduler_unblock` raises an exception, it can result in a segfault if `rb_threadptr_join_list_wakeup` is not within a valid EC. This change moves `rb_threadptr_join_list_wakeup` into the thread's top level EC which initially caused an infinite loop because on exception will retry. We explicitly remove items from the thread's join list to avoid this situation. * Verify the required scheduler interface. * Test several scheduler hooks methods with broken `unblock` implementation. Notes: Merged-By: ioquatix <samuel@codeotaku.com> commit 626427c2e0f886ff8353c5faa8254699afd88ca8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-14 14:11:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-14 14:11:38 +0900 Removed no longer used variables commit 635e1c5282a4207281ad8ed698e77547648b2ce9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-14 13:52:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-14 14:10:21 +0900 Pack values to preserve commit f0f9e77b65990001bd2acb42e1c6b673f6324425 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-14 13:49:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-14 14:09:43 +0900 Suppress gcc11 clobbered warning commit 2792acc8f29c6ee1d04b57b7b70d43519a0ceda8 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-14 13:21:08 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-14 13:21:08 +0900 Add scheduler hook `Addrinfo.getaddrinfo`. (#4375) Co-authored-by: Bruno Sutic <code@brunosutic.com> Notes: Merged-By: ioquatix <samuel@codeotaku.com> commit 688b217706546c2bc9a0926de246dc29d0935261 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-14 10:40:41 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-14 10:40:41 +0900 time.c: Check if defined(RUBY_MSVCRT_VERSION) to build on Solaris Fixes [Bug #17947] commit 09ea2bb0408740313fec03cb38163a60ce8bb188 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-14 10:09:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-14 10:09:30 +0900 * 2021-06-14 [ci skip] commit 70313ec01a674e15d301f2dabb368cd90c78fa40 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-14 10:02:02 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-14 10:02:02 +0900 parse.y: Fix the location of a target constant of OP_CDECL ``` p RubyVM::AbstractSyntaxTree.parse("::Foo += 1").children #=> before: [[], nil, (OP_CDECL@1:0-1:10 (COLON3@1:0-1:10 :Foo) :+ (LIT@1:9-1:10 1))] #=> after: [[], nil, (OP_CDECL@1:0-1:10 (COLON3@1:0-1:5 :Foo) :+ (LIT@1:9-1:10 1))] ``` commit 32b18fe9d04e9c95ac0b8d5df258226867efc063 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-13 14:59:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-13 15:12:45 +0900 Suppress array-parameter warnings by gcc 11 commit 9ab6d39a66f4df16d0a6940a966afc69ba6c14d3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-12 14:22:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-13 15:12:45 +0900 Added parentheses to silence sizeof-array-div warnings As well as 2366c681166a1dab95de6b9ca8ffcaae18aadd39. commit 9ec6c83c97d9e66b6d165329c0711bf8e096afaf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-13 14:34:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-13 15:12:45 +0900 Removed duplicate include commit 122ce52e8f4f1a7654e0e2f80081487e23af42ce Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-13 14:29:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-13 15:12:45 +0900 Check if alternative malloc header can work in C++ jemalloc (5.2.1 at least) cannot compile in C++ on macOS SDK, due to conflicts on exception specification. commit cba92b328967256a526b5e0c7cd976347eefcb79 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-13 13:45:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-13 13:45:07 +0900 * 2021-06-13 [ci skip] commit d54f74a48b8b996f9c27077e28d9d24f2c4e4c1d Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-06-13 13:44:46 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-13 13:44:46 +0900 Refactor rb_block_call function rb_block_call and rb_block_call_kw have similar code. So, using rb_block_kw function in rb_block_call function for refactoring. Notes: Merged: https://github.com/ruby/ruby/pull/4566 Merged-By: nobu <nobu@ruby-lang.org> commit 146721ef6a46d1d7ed6c9452c2c6c6342fafc8b0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-12 20:17:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-12 20:17:25 +0900 * 2021-06-12 [ci skip] commit 8366506de1b5538573bbbed7b4ab8a36ace68fc6 Author: nagachika <nagachika@ruby-lang.org> AuthorDate: 2021-06-12 20:15:08 +0900 Commit: nagachika <nagachika@ruby-lang.org> CommitDate: 2021-06-12 20:15:08 +0900 cont.c: Replace "iff" with "if and only if" commit 9210f8df7ff23f06c03dedf9f89fd8ab902043e3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-11 08:31:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-11 08:31:51 +0900 * 2021-06-11 [ci skip] commit d74e5d5b4fba41a9120b3ed2762cf765478605ad Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-06-11 08:03:11 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-06-11 08:31:29 +0900 Crash more nicely when the VM isn't fully set up If we crash but the VM isn't fully alive, we can get an infinite loop. commit 929cc615a749f467809a865a3d40adcc0b58c667 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-06-10 22:59:12 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-06-10 23:59:32 +0900 Finish GC before calling gc_set_initial_pages If we are during incremental sweeping when calling gc_set_initial_pages there is an assertion error. The following patch will artificially produce the bug: ``` diff --git a/gc.c b/gc.c index c3157dbe2c..d7282cf8f0 100644 --- a/gc.c +++ b/gc.c @@ -404,7 +404,7 @@ int ruby_rgengc_debug; * 5: show all references */ #ifndef RGENGC_CHECK_MODE -#define RGENGC_CHECK_MODE 0 +#define RGENGC_CHECK_MODE 1 #endif // Note: using RUBY_ASSERT_WHEN() extend a macro in expr (info by nobu). @@ -10821,6 +10821,10 @@ gc_set_initial_pages(void) void ruby_gc_set_params(void) { + for (int i = 0; i < 10000; i++) { + rb_ary_new(); + } + /* RUBY_GC_HEAP_FREE_SLOTS */ if (get_envparam_size("RUBY_GC_HEAP_FREE_SLOTS", &gc_params.heap_free_slots, 0)) { /* ok */ ``` The crash looks like: ``` Assertion Failed: ../gc.c:2038:heap_add_page:!(heap == heap_eden && heap->sweeping_page) ``` Notes: Merged: https://github.com/ruby/ruby/pull/4562 commit d281fc525dbf81b7b3eeda5d529c921a89902127 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-10 16:53:26 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-10 16:53:28 +0900 Add missing dependencies https://github.com/ruby/ruby/runs/2791163586?check_suite_focus=true commit 474f79958bd0dbb3ae9bf7fdaff6e229094dfe08 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-10 16:40:58 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-10 16:40:59 +0900 Cast jit_func for Windows https://ci.appveyor.com/project/ruby/ruby/builds/39542385/job/8b7aq951f9t01x4x commit c5e8a49bdeadd8e424274c17c0d2a9ffed64417b Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-10 16:32:15 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-10 16:32:24 +0900 Avoid enqueueing the same ISeq twice by a race condition by multiple Ractors. Atmically incrementing body->total_calls may have its own cost, so for now we intentionally leave the unreliable total_calls. So we allow an ISeq to be never pushed when you use multiple Ractors. However, if you enqueue a single ccan node twice, get_from_list loops infinitely. Thus this patch takes care of such a situation. commit 791d7d49476e6363c1bd24af637a9581acc627bb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-10 15:15:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-10 15:15:35 +0900 Freeze command line script commit 8a46b480a719a419e1d596ce20740da020501003 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-06-10 02:31:44 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-06-10 03:16:39 +0900 Refactor gc_marks_start_heap to only configure heap Move the non-heap related configurations to gc_marks_start. Notes: Merged: https://github.com/ruby/ruby/pull/4560 commit fa340dd9f1ce410360474ca7b07d0af8968599c7 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-10 00:17:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-10 00:17:15 +0900 * 2021-06-10 [ci skip] commit f7741cda323e759432f34c954d7da0ac3d865ab1 Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-06-08 00:36:59 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-06-10 00:16:53 +0900 Enable Travis on the specific branches or forked repositories. Align the Travis enabling timing with GitHub Actions. For the syntax, see <https://docs.travis-ci.com/user/conditions-v1>. We use `repo` syntax rather than `fork = true/false` syntax to show a general usage in any repositories on GitHub. The non-forked repo is not always a primary repo in any GitHub repositories. [Bug #17936] Notes: Merged: https://github.com/ruby/ruby/pull/4556 commit e03bf76b312e9cba0e44488fcd8f67099af816cb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-09 19:15:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-09 19:15:57 +0900 Pack iseq_inline_constant_cache_entry Reordered iseq_inline_constant_cache_entry members not to exceed the size of RValue. commit 9ba335e2eb79b1a75166828f437b71a1398ec3c5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-09 18:49:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-09 18:49:14 +0900 [Win32] fixed PACKED_STRUCT_UNALIGNED on x86 Use MACHINE for x86 CPU family, ARCH is CPU model name (i386) and cannot be x86. commit 73f9831a57e133ab5645221df862a176a42f6685 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-09 12:32:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-09 12:32:18 +0900 POSIX timer cannot be shared in forked process [Bug #17941] commit 9f110ced578ec944f7f7cbe11ba3519a25adf714 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-06-08 23:45:18 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-06-09 03:31:38 +0900 Add multi-heap support to gc_marks_wb_unprotected_objects Notes: Merged: https://github.com/ruby/ruby/pull/4559 commit f9e13cda0432d125d7c277b95249192df0c61163 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-09 02:19:27 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-09 02:19:27 +0900 * 2021-06-09 [ci skip] commit 117310bdc00236c0a7676616ce25b5106775dabc Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-06-09 02:19:08 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-09 02:19:08 +0900 Make ENV.clone warn and ENV.dup raise ENV.dup returned a plain Object, since all of ENV's behavior is defined in ENV's singleton class. So using dup makes no sense. ENV.clone works and is used in some gems, but it doesn't do what the user expects, since modifying ENV.clone also modifies ENV. Add a deprecation warning pointing the user to use ENV.to_h instead. This also undefines some private initialize* methods in ENV, since they are not needed. Fixes [Bug #17767] Notes: Merged: https://github.com/ruby/ruby/pull/4557 Merged-By: jeremyevans <code@jeremyevans.net> commit 8c87efaa8a45166ed977294330c32a4b186b8e7b Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-07 22:56:47 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-08 08:12:27 +0900 [ruby/psych] Fix the test that does not work with libyaml-0.1.7 https://github.com/ruby/psych/commit/542cf9754f commit a49a08ab98659d09c89fc6404ca37a764c7b0d8e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-08 03:47:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-08 03:47:48 +0900 * 2021-06-08 [ci skip] commit 459a9f82c91bddabef0fe1d394c23b0adce96b7c Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-06-08 03:46:01 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-06-08 03:47:16 +0900 Don't create objects during GC If we crash during GC, allocating new objects in the segv handler can cause an infinite loop. This commit is to avoid creating new objects in the crash handler commit 26fcec5ae5edb9269f5fb91e2ea4827be05e3a59 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-07 20:43:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-07 20:44:05 +0900 [DOC] fix metacharacter markups [ci skip] commit c741ea0be7402fd709207548d78b044fb89dffd0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-06 12:08:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-07 20:44:05 +0900 timev.rb: moved class rdoc from time.c commit 4bd538e847c9e9b106ebd2bab9bb5075ffb8014d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-06 12:08:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-07 20:44:05 +0900 dir.rb: moved class rdoc from dir.c commit bb4a10208c8564a6c080a0de14ef6a5884c6173c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-07 19:24:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-07 19:24:20 +0900 Do not use YAML module in tests of Psych commit d7146dfd7dbe370ec9b7d6fde75bf1066bf7ed57 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-07 19:21:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-07 19:21:41 +0900 Use assert_raise instead of assert_raises commit 85b94144f2a05771f05d731e7ee06dd849756402 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-07 12:19:26 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-07 19:15:14 +0900 [ruby/psych] Bump version to 4.0.1 https://github.com/ruby/psych/commit/4049939006 commit fd6225c7a974e5154099c9f7be82bebd44a19116 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-05-19 23:07:24 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-07 19:15:14 +0900 [ruby/psych] Implement YAML.safe_dump to make safe_load more usable. In case where Psych is used as a two way serializers, e.g. to serialize some cache or config, it is preferable to have the same restrictions on both load and dump. Otherwise you might dump and persist some objects payloads that you later won't be able to read. https://github.com/ruby/psych/commit/441958396f commit 430883158f3d01f80917d6eefbaa82521c95c05a Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-17 23:09:37 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-07 19:15:14 +0900 [ruby/psych] Make YAML.load_file use YAML.load instead of safe_load YAML.load and YAML.safe_load are different a little; the former allows Symbol by default but the latter doesn't. So YAML.load_file and YAML.safe_load_file should reflect the difference. Fixes https://github.com/ruby/psych/pull/490 https://github.com/ruby/psych/commit/f8a5e512a1 commit dd765f9e605eb1a6426a0e3165e2db71b2081d03 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-07 12:19:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-07 17:45:50 +0900 Get rid of updating Unicode files Some certificates on Unicode.org have expired. commit bc126d91fee738393f712171c49f421c2cc1c6db Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-07 16:22:18 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-06-07 16:22:18 +0900 Skip make update-unicode for BASERUBY CI Unfortunately it often fails depending on the status of www.unicode.org. https://github.com/mame/ruby/runs/2761346164?check_suite_focus=true ``` ./tool/downloader.rb:248:in `rescue in download': failed to download 12.1.0/ucd/UnicodeData.txt (RuntimeError) OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=error: certificate verify failed: https://www.unicode.org/Public/12.1.0/ucd/UnicodeData.txt ``` commit a9d761720134c76cbc68baefddf663292ebf591f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-07 10:23:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-07 10:23:16 +0900 * 2021-06-07 [ci skip] commit ad22e88956ec4ea476549f6c7331075b2d5f3f2f Author: Utkarsh Mathur <78642104+UtkarshMathur05@users.noreply.github.com> AuthorDate: 2021-06-05 16:25:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-07 10:22:55 +0900 Fix Typo Notes: Merged: https://github.com/ruby/ruby/pull/4553 commit cf92b3cc97679303cee285190171c7135c81fa27 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-06 23:02:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-06 23:02:06 +0900 ast.rb: reduce nesting commit c9af563e10f2adc12846100371da42a266869c3b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-06 22:45:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-06 22:45:55 +0900 * 2021-06-06 [ci skip] commit 2e972406174ebf0c5ddc8d819fd76c1cef5e7b23 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-06 22:45:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-06 22:45:37 +0900 prelude.c.tmpl: strip comment-only or empty lines at the beginning commit 3208a5df2dfb429752a130a36274464e9924cf44 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-06-05 13:57:21 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-05 13:57:21 +0900 Improve performance for Integer#size method [Feature #17135] (#3476) * Improve performance for Integer#size method [Feature #17135] * re-run ci * Let MJIT frame skip work for Integer#size Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com> Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 033e76e7602d06e037e1d9bb8527280a58d548da Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-05 12:28:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-05 12:28:20 +0900 * 2021-06-05 [ci skip] commit 67ca2cce0ab3d6db6c569034ac0f533e8fcb9021 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-06-05 12:27:52 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-06-05 12:27:52 +0900 Update bundled_gems commit 91c542ad0570d02c269877226689085128038f54 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-04 09:24:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-04 09:24:57 +0900 lldb_cruby.py: push non-flonum float to history [ci skip] commit 3c57c087ec4ac9f2d7b9f4111a667efe42d30cfb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-04 09:12:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-04 09:12:34 +0900 lldb_cruby.py: fix non-flonum float inspection [ci skip] commit 9f3240d4f4439e253d230f8c06d9923c76a68c6d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-04 05:57:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-04 05:57:15 +0900 * 2021-06-04 [ci skip] commit 38c5f2737f8a62efce93595c8b6c6ea1d6b5e739 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-06-02 08:28:35 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-06-04 05:56:53 +0900 Support an arbitrary number of header bits (< BITS_BITLENGTH) NUM_IN_PAGE(page->start) will sometimes return a 0 or a 1 depending on how the alignment of the 40 byte slots work out. This commit uses the NUM_IN_PAGE function to shift the bitmap down on the first bitmap plane. Iterating on the first bitmap plane is "special", but this commit allows us to align object addresses on something besides 40 bytes, and also eliminates the need to fill guard bits. commit 93be7a4c6bda8269b3d82ce4cfde6b2bde3b9718 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-03 20:07:26 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-03 20:07:26 +0900 Suppress clobbered warnings on Travis-CI ppc64le-linux Notes: Merged: https://github.com/ruby/ruby/pull/4550 Merged-By: nobu <nobu@ruby-lang.org> commit dc25412042dcb921c27491ef09791d03bc377d98 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-06-03 13:29:58 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-06-03 17:47:31 +0900 Expose `rb_fiber_transfer` and `rb_fiber_transfer_kw`. Notes: Merged: https://github.com/ruby/ruby/pull/4549 commit 7e14762159643b4415e094f9d2a90afaf7994588 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-03 15:55:23 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-03 15:59:33 +0900 Do not doubly hold an MJIT lock This is a follow-up of 86c262541ad07528842d76dab4b9b34bd888d5f4. CRITICAL_SECTION_START/FINISH are not needed when it's called from an MJIT worker. Also, ZALLOC needs to be calloc because ZALLOC may trigger GC, which an MJIT worker must not do. commit 9f3888d6a3387773c8707b7971ce64c60df33d36 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-03 13:26:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-03 15:11:18 +0900 Warn more duplicate literal hash keys Following non-special_const literals: * T_REGEXP Notes: Merged: https://github.com/ruby/ruby/pull/4548 commit 37eb5e74395f148782f7d67b5218fb2e66b113d7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-03 12:32:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-03 15:11:18 +0900 Warn more duplicate literal hash keys Following non-special_const literals: * T_BIGNUM * T_FLOAT (non-flonum) * T_RATIONAL * T_COMPLEX Notes: Merged: https://github.com/ruby/ruby/pull/4548 commit a023db49bfbbbe119638bae6abf8113f0de371de Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-03 12:26:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-03 15:11:18 +0900 Assertions for duplicate literal hash key warnings Notes: Merged: https://github.com/ruby/ruby/pull/4548 commit 31b9ce365dff68f2e7a96b78d7dded98e338e5c6 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-03 14:25:48 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-03 14:26:27 +0900 Note about 07c05b6fe931337e928a89ac5ebf654862dc0eca commit 86c262541ad07528842d76dab4b9b34bd888d5f4 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-03 14:07:44 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-03 14:11:37 +0900 Fix a race condition around mjit_recompile This fixes SEGVs like https://github.com/ruby/ruby/runs/2715166621?check_suite_focus=true. When mjit_recompile is called when mjit_compile is compiling the exact same iseq (and after it called mjit_capture_cc_entries), iseq->body->jit_unit is re-created and its cc_entries becomes NULL. Then, when it tries to lookup cc_entries through iseq->body->jit_unit, it fails. commit 007e439fe965871c73127928f7244ebb96a86e58 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-03 13:39:11 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-03 13:50:40 +0900 Do not expect ec on rb_vm_bugreport because a SEGV might happen on an MJIT worker. As you can clearly see from `if (vm && ec) {`, ec is not guaranteed to exist here. commit b957c3dbcb3cfee6908f4217cfb9ab0e78b4c618 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-06-02 12:32:47 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-03 12:23:22 +0900 [rubygems/rubygems] Rename test/rubygems/test_{case,utilities}.rb to avoid "test_" prefix This changes "test/rubygems/test_case.rb" to "test/rubygems/helper.rb", and "test/rubygems/test_utilities.rb" to "test/rubygems/utilities.rb". The two files are a helper for tests, not test files. However, a file starting with "test_" prefix is handled as a test file directly loaded by test-unit because Rakefile specifies: ``` t.test_files = FileList['test/**/test_*.rb'] ``` Directly loading test/rubygems/test_utilities.rb caused "uninitialized constant Gem::TestCase". This issue was fixed by 59c682097197fee4052b47e4b4ab86562f3eaa9b, but the fix caused a "circular require" warning because test_utilities.rb and test_case.rb are now requiring each other. Anyway, adding "test_" prefix to a test helper file is confusing, so this changeset reverts the fix and solve the issue by renaming them. https://github.com/rubygems/rubygems/commit/6460e018df commit 28b481938b5c8211aad53ba82fe4ddd978ffc00f Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-06-03 12:04:56 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-03 12:04:56 +0900 Implemented some NilClass method in Ruby code is faster [Feature #17054] (#3366) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit bc65cf1a920b715635fbd3e658c4abdebfb87e3b Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-06-03 05:29:03 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-06-03 06:13:34 +0900 use a bool instead of int commit ad734a8cc3181cb4ad510e3c7dc73dd8bb943742 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-06-03 03:42:09 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-06-03 04:49:32 +0900 Allocate exact space for objspace_each_objects We are only iterating over the eden heap so `heap_eden->total_pages` contains the exact number of pages we need to allocate for. `heap_allocated_pages` may contain pages in the tomb. Notes: Merged: https://github.com/ruby/ruby/pull/4547 commit 2a685da1fcd928530509e99f5edb4117bc377994 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-03 00:07:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-03 00:07:44 +0900 * 2021-06-03 [ci skip] commit e451f0f678b88f9634712856c4a5e45b7d3ca7dc Author: Daisuke Fujimura (fd0) <booleanlabel@gmail.com> AuthorDate: 2021-05-13 07:22:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-03 00:07:25 +0900 Fix `_MSC_VER` warnings Notes: Merged: https://github.com/ruby/ruby/pull/4497 commit 750f80757523bb916beff51cf30e585a378acd84 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-06-02 22:54:38 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-06-02 22:54:38 +0900 Update to ruby/spec@c6e9285 commit 22e2a6a999b958efe5d84d9c7314e450fda82254 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-06-02 21:34:07 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-06-02 21:34:07 +0900 Update to ruby/spec@a0b7d0d commit a4fbc7e2884ba694278adea3b32ddb8c2ac10efe Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-06-02 21:34:01 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-06-02 21:34:01 +0900 Update to ruby/mspec@0091e8a commit 2048dfc5d37eecb6f1ae18e9d1770a71b46a40b9 Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-06-02 18:13:04 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-06-02 19:38:27 +0900 Skip a `File.atime` test randomly failing on Travis ppc64le. See <https://bugs.ruby-lang.org/issues/17926>. Notes: Merged: https://github.com/ruby/ruby/pull/4546 commit 070caf54d2a17168d3de05aa1633979c8545f8f4 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-02 17:16:49 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-02 17:16:50 +0900 Refactor rb_vm_insn_addr2insn calls It's been a way too much amount of ifdefs. commit c32ce2cbf100edd2a88e4230f08879c7cc73a891 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-02 16:09:47 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-02 16:09:47 +0900 Clarify these are just for MJIT and not for third-party libraries. See: e6484a153038703447b50fcac26349249922ab28 commit 0f97aaa6cff486cce5e5d0cea796a6522df0e5e6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-02 13:41:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-02 13:41:54 +0900 Suppress false warning by MSVC https://github.com/ruby/ruby/runs/2707566811#step:10:147 ``` D:\a\ruby\ruby\src\mjit_worker.c(1212): warning C4090: 'function': different 'const' qualifiers ``` commit 9137caaf457d65bc4c4c05cc0d6e5d6740f669f1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-24 00:06:46 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-02 11:35:45 +0900 [ruby/rdoc] Add a dependency on psych gem 4.0.0 or newer https://github.com/ruby/rdoc/commit/ebe185c877 commit 77e1b477297a48e285d34b21e8d30ab4b46bf90c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-23 23:48:41 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-06-02 11:35:45 +0900 [ruby/rdoc] Add an alias for test-unit with older versions of RubyGems https://github.com/ruby/rdoc/commit/b8d68fdd87 commit 04a5ee6a23c317228fde57d99cd06970ce1b9b6a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-02 07:25:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-02 07:25:36 +0900 * 2021-06-02 [ci skip] commit f9b9d1c58052fa566bddc7fcc902ef123902bdc2 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-06-02 06:34:34 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-06-02 07:25:08 +0900 Use the current object as the compaction index Instead of keeping track of the current bit plane, keep track of the actual slot when compacting. This means we don't need to re-scan objects inside the same bit plane when we continue with movement commit 9024c7f1bb3ea432a2b52e7c701b06f83aafd4d5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-06-01 22:27:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-06-01 22:27:13 +0900 Make `Thread#native_thread_id` not-implemented if unsupported Raise `NotImplementedError` on unsupported platforms regardless the argument consistently. commit 6e7e9a80adfe69e6e6d20e01997b97a5c24cd33e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-06-01 19:38:02 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-06-01 19:38:05 +0900 Expose assert_all? for ruby/csv repo commit c57610dcd5e1ffcea0414d515995d950036869b0 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-06-01 17:00:45 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-01 17:00:45 +0900 Add static modifier to C function in hash.c (#3138) * add static modifier for rb_hash_reject_bang func * add static modifier for rb_hash_reject func * add static modifier for rb_hash_values_at func * add static modifier for rb_hash_assoc func * add static modifier for rb_hash_rassoc func Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit d627b75e016c855fe4c921170a76773f6da7f163 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-06-01 16:59:33 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-01 16:59:33 +0900 Add static modifier to C function in re.c (#3153) * add static modifier for rb_reg_eqq func * add static modifier for rb_check_regexp_type func Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit b70fdf1b55beb9344d97b47d0587471d23b280df Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-06-01 16:38:50 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-01 16:38:50 +0900 Refactor rb_define_class_variable function (#4400) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 588446c39c5852637ad15906f80dae3800e01233 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-06-01 16:37:45 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-01 16:37:45 +0900 Remove unneeded rb_ary_ptr_use_start declaration in internal/array.h (#4427) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 45662c54c95db007d8738cc0bbaa6bdb36d00567 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-06-01 16:37:24 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-01 16:37:24 +0900 Remove unneeded rb_str_initialize declaration in internal/string.h (#4465) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit a2cf0607b06f9a0cf522a971fa6226bb627ecf20 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-06-01 16:34:56 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-01 16:34:56 +0900 Refactor rb_class_path_cached function (#4485) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 1055b37ef56ff786b5dfd407c23dcf585eb86748 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-06-01 16:32:24 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-01 16:32:24 +0900 Refactor rb_define_class_variable function (#4492) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit e1b03b0c2b2449a7794f4701bab8b2382eb15116 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-01 16:15:51 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-06-01 16:15:51 +0900 Enable VM_ASSERT in --jit CIs (#4543) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 0d32a18f5b8cb07ef766ac3ae6de6d41c95af43f Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-01 14:56:15 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-01 14:56:22 +0900 Make --without-mjit-tabs work again vm_sync.{c,h} don't have tabs commit b9019c1ae860ee92a162d5fc2af55c10768980de Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-01 14:46:56 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-01 14:46:56 +0900 Revert "Try enabling VM_ASSERT in --jit CIs" This reverts commit e9e3b65d836b5796882b5bf28717e4586366ceec. We were not ready for it https://github.com/ruby/ruby/runs/2715306375?check_suite_focus=true commit 028f1887c2bfa50dcfc1b623470d6ab1b880fdde Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-01 14:00:14 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-01 14:01:04 +0900 Change the default --jit-max-cache to 10000 This is useful for large applications like Rails. https://k0kubun.medium.com/ruby-3-jit-can-make-rails-faster-756310f235a commit 2209e152c0ec2c0548c22b2b14e52007b74a9efb Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-01 13:57:56 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-01 13:57:57 +0900 Decompose the captured_cc code for investigation I'm investigating SEGVs like https://github.com/ruby/ruby/runs/2715166621?check_suite_focus=true. Because a lot of things are going on on this line, it's hard to identify the cause, especially because we can't get the core file of the failures. Therefore I intentionally increased the number of lines for investigation. commit e9e3b65d836b5796882b5bf28717e4586366ceec Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-01 13:50:37 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-01 13:50:55 +0900 Try enabling VM_ASSERT in --jit CIs commit 45651e800ba2aa5ecbdab3bf6a34d3d561ca1d20 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-06-01 13:14:56 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-06-01 13:14:56 +0900 * 2021-06-01 [ci skip] commit 07c05b6fe931337e928a89ac5ebf654862dc0eca Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-06-01 13:12:27 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-06-01 13:12:48 +0900 Drop JIT_ISEQ_SIZE_THRESHOLD Compiling everything seems to contributed to improving the final performance in general. MJIT's compilation is slow anyway, especially when you need to wait for JIT compaction. This might make sense for short-time benchmarks like Optcarrot with default parameters, but it didn't give benefits in my local environment. commit c9ab8fe2b12652db7f66b71b03248a6387e378fe Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-31 23:34:17 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-05-31 23:34:40 +0900 The test for command injection on Unix platforms should be omitted on Windows commit ff6f4e631ccddb436c3c7a3a0ebf6a3f3e4b63ec Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-05-31 23:21:10 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-05-31 23:24:16 +0900 tool/ci_functions.sh: Fix typos and improve the comment. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4541 commit 395479907159c5d948492cf761c614fb7c8364df Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-05-27 19:06:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-31 21:26:24 +0900 Tweak skipped files in bundler gemspec We won't be using the `extra_rdoc_files` field, because it's very slow for markdown files. Notes: Merged: https://github.com/ruby/ruby/pull/4537 commit cd2190448d55edce5695c73b062e3faa7fb9bc3a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-31 16:52:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-31 17:40:07 +0900 [ruby/net-protocol] Bump version to 0.1.1 https://github.com/ruby/net-protocol/commit/97c4b68528 commit 1aac0e88193a82ed36b43e852c46414181b66455 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-31 13:42:02 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-31 13:42:02 +0900 Mark inlined ISeqs during MJIT compilation (#4539) [Bug #17584] Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 2cc3639ebfb8497d351bfed67ab64f1775b40e80 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-31 09:26:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-31 09:26:04 +0900 * 2021-05-31 [ci skip] commit 43ac55ad24eda5bf4fdd3495e5fad01a125face2 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-05-31 09:25:29 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-05-31 09:25:29 +0900 Update bundled_gems commit fd65ef2a5aa8629676d1edb6410e4d4cf60b8045 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-30 06:08:24 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-05-30 06:08:24 +0900 Attempt to fix floating point test failure The previous behavior depending on exact float values, it seemed to work OK on amd64 and i386, but other CI platforms are experiencing non-deterministic test failures with it. Relax test slightly to hopefully pass on such platforms. commit 9bb76201dd70632f26b06d9b6ef3ef18e32b358c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-30 00:56:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-30 00:56:38 +0900 * 2021-05-30 [ci skip] commit f516379853f36d143d820c55d5eeaa9fc410ef52 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-04-30 04:51:05 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-05-30 00:56:15 +0900 Fix Enumerator::ArithmeticSequence handling of float ranges Depending on the float range, there could be an off-by-one error, where the last result that should be in the range was missed. Fix this by checking if the computed value for the expected value outside the range is still inside the range, and if so, increment the step size. Fixes [Bug #16612] Notes: Merged: https://github.com/ruby/ruby/pull/4434 commit e56ba6231f77dd0aa88a1ce737a342baafc884c7 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-29 01:34:27 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-29 01:34:27 +0900 * 2021-05-29 [ci skip] commit 5ada23ac1265a1da5d7ef82e1c71f14c40dddc26 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-05-27 00:50:37 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-05-29 01:34:03 +0900 compile.c: Emit send for === calls in when statements The checkmatch instruction with VM_CHECKMATCH_TYPE_CASE calls === without a call cache. Emit a send instruction to make the call instead. It includes a call cache. The call cache improves throughput of using when statements to check the class of a given object. This is useful for say, JSON serialization. Use of a regular send instead of checkmatch also avoids taking the VM lock every time, which is good for multi-ractor workloads. Calculating ------------------------------------- master post vm_case_classes 11.013M 16.172M i/s - 6.000M times in 0.544795s 0.371009s vm_case_lit 2.296 2.263 i/s - 1.000 times in 0.435606s 0.441826s vm_case 74.098M 64.338M i/s - 6.000M times in 0.080974s 0.093257s Comparison: vm_case_classes post: 16172114.4 i/s master: 11013316.9 i/s - 1.47x slower vm_case_lit master: 2.3 i/s post: 2.3 i/s - 1.01x slower vm_case master: 74097858.6 i/s post: 64338333.9 i/s - 1.15x slower The vm_case benchmark is a bit slower post patch, possibility due to the larger instruction sequence. The benchmark dispatches using opt_case_dispatch so was not running checkmatch and does not make the === call post patch. Notes: Merged: https://github.com/ruby/ruby/pull/4468 commit 788d30a8b388cd5500862a4015537203ef49ea85 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-05-07 07:54:52 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-05-29 01:34:03 +0900 Make range literal peephole optimization target "newrange" It looks for "checkmatch", when it could be applied to anything that has "newrange". Making the optimization target more ranges might only be fair play when all ranges are frozen. So I'm putting a reference to the ticket that froze all ranges. [Feature #15504] Notes: Merged: https://github.com/ruby/ruby/pull/4468 commit 12214b7814220389f2e1e32421699bb54f834158 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-28 14:01:58 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-28 14:01:58 +0900 Resolve to missing `Gem::TestCase` issue with random order tests commit 6e6be107dd0c820afc4db68d09110ad96c4aebdd Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-28 13:01:54 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-28 13:02:04 +0900 Ignore test-bundled-gems on GitHub Actions because matrix tests has unknown issues commit e487ba7ddab9dd46e95a4cff222cf08471dbd817 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 12:27:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-28 12:33:16 +0900 [rubygems/rubygems] Use pend instead of skip commit a634ef53764e9160cb984d01e92e3e596bf41dae Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-05-27 02:58:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-28 11:53:57 +0900 [rubygems/rubygems] Fix "instance variable not initialized" warning This variable had a typo (it's `@gemhome`), but the test is still passing, so I assume it's not needed. https://github.com/rubygems/rubygems/commit/3b88642bdb commit 1f505000e653505b8e9e6ce4f5679ddca3c35043 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-05-12 18:44:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-28 11:53:45 +0900 [rubygems/rubygems] Test installing a non deprecated file https://github.com/rubygems/rubygems/commit/a678959eda commit 9382bda78bb701bb1df806ff0b25795a4bfc6d0c Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-05-12 18:43:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-28 11:53:33 +0900 [rubygems/rubygems] Remove no longer needed `RUBYGEMS_TEST_PATH` env variable https://github.com/rubygems/rubygems/commit/0efb894c3b commit 4fb3dd2c42a707a6298971991eb7eef23e415a20 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-05-12 18:43:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-28 11:53:21 +0900 [rubygems/rubygems] Remove no longer relevant comments https://github.com/rubygems/rubygems/commit/8dfe1e30b5 commit f7732ae2eb5ae245aa3089475af8f81c08478349 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-05-12 18:41:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-28 11:53:09 +0900 [rubygems/rubygems] Require the new files in `test/` relatively https://github.com/rubygems/rubygems/commit/c77868a555 commit 59c682097197fee4052b47e4b4ab86562f3eaa9b Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-05-12 18:35:19 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-28 11:52:57 +0900 [rubygems/rubygems] Copy files specific to testing rubygems to `test` https://github.com/rubygems/rubygems/commit/aa390a3500 commit f7d661e783e02f87e1e0d0d67b1ca2ed306a1904 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-17 11:59:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-28 11:52:32 +0900 [rubygems/rubygems] Try fix ruby-core CI * Port https://github.com/ruby/ruby/commit/8e91b969df08b7a2eb27a5d6d38733eea42dc7ad from ruby-core, and make it compatible with psych 3 & 4. commit ded7dd9ccc6d084c5e65689ddcbcd27df703e58e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-28 11:37:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-28 11:38:37 +0900 Use require_relative to use Minitest library for testing. There is no reason to care for minitest gem. commit 2ad7a550f33676cb18367d07f48756c62cde5d9b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-28 06:17:54 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-28 06:17:54 +0900 * 2021-05-28 [ci skip] commit fd8991f797c145615820b4c76e6b7ac5a71339ea Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-28 05:29:24 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-05-28 06:17:32 +0900 Fix lazy enumerator with index size Fixes [Bug #17889] Notes: Merged: https://github.com/ruby/ruby/pull/4534 commit 029169bc5b45d8ec783c19eaf713395b7983d16a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-27 17:15:58 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 17:15:58 +0900 Fixed target directory when copying from upstream commit c1c60a4498d86f2cf0f00615893f75a112d19040 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-27 17:14:31 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 17:14:31 +0900 Removed dbm from sync_default_gems commit d2664b908af427096712ed03574ba7cdd4d5dfe9 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-27 07:56:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 14:42:11 +0900 Update rbs-1.2.1 Notes: Merged: https://github.com/ruby/ruby/pull/4530 commit 835a4956081e43ae21a78667f2b87f275467b70e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 20:36:23 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 14:42:11 +0900 Guard ruby/spec with spec/mspec/tool/wrap_with_guard.rb Notes: Merged: https://github.com/ruby/ruby/pull/4530 commit 350bc29107e96871030ccffaf334c3e0a9d80f5f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 20:18:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 14:42:11 +0900 Guard for the ftp protocol feature of OpenURI Notes: Merged: https://github.com/ruby/ruby/pull/4530 commit b8dcad8d32a5405cbbf29f6705c8975f1773170a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 19:51:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 14:42:11 +0900 Defer to require prime for OpenSSL::TestBN Notes: Merged: https://github.com/ruby/ruby/pull/4530 commit 9f192d42a69b06d05a575d2df99ba605301e8cf8 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 18:51:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 14:42:11 +0900 Use https://github.com/ruby/rbs/pull/679 for rbs tests on test-bundled-gems Notes: Merged: https://github.com/ruby/ruby/pull/4530 commit be2e2b480540bcc38aaf75f1767dfff1b8199097 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 15:58:26 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 14:42:11 +0900 Promote net-smtp to the bundled gems Notes: Merged: https://github.com/ruby/ruby/pull/4530 commit aa9726f7b99a7ace3d371b278288235c57f8e91a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 15:52:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 14:42:11 +0900 Promote net-pop to the bundled gems Notes: Merged: https://github.com/ruby/ruby/pull/4530 commit d5bc6b23370908f19d1a4a19ead56e61444f0974 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 15:48:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 14:42:11 +0900 Promote net-imap to the bundled gems Notes: Merged: https://github.com/ruby/ruby/pull/4530 commit e49c998d1e41737016c8afb7e1b22797018caebb Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 15:44:27 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 14:42:11 +0900 Promote net-ftp to the bundled gems Notes: Merged: https://github.com/ruby/ruby/pull/4530 commit 454a36794f83395d0827a9e2e85ac8f0d9e53e16 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 15:36:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 14:42:11 +0900 Promote matrix to the bundled gems Notes: Merged: https://github.com/ruby/ruby/pull/4530 commit c9178c11271ccd3410c53687dd9cb2508e180a98 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 15:33:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-27 14:42:11 +0900 Promote prime to the bundled gems Notes: Merged: https://github.com/ruby/ruby/pull/4530 commit eae7fd0ea3081378ee20ad76eee08e9301fbd638 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-27 06:22:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-27 06:22:10 +0900 * 2021-05-27 [ci skip] commit 8fdb15fdd3ed2636d28d60153a7520256d72594e Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-05-25 06:23:45 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-05-27 06:21:54 +0900 Fill out switch statement in push_mark_stack When objects are popped from the mark stack, we check that the object is the right type (otherwise an rb_bug happens). The problem is that when we pop a bad object from the stack, we have no idea what pushed the bad object on the stack. This change makes an error happen when a bad object is pushed on the mark stack, that way we can track down the source of the bug. Notes: Merged: https://github.com/ruby/ruby/pull/4531 commit af43198738bf45d55d91d7f48b197f94dc526967 Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-05-26 16:51:18 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-05-26 18:33:05 +0900 .travis.yml: Remove skipped tests on ppc64le. It was fixed at fc832ffbfaf581ff63ef40dc3f4ec5c8ff39aae6 . Notes: Merged: https://github.com/ruby/ruby/pull/4529 commit 055ec5254dc79cfa5d9500b8c301751fe594e481 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-26 18:02:06 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-26 18:02:06 +0900 Rescue NotImplementedError for a test of Thread#native_thread_id http://rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20210526T070003Z.fail.html.gz ``` 1) Error: TestThread#test_thread_native_thread_id: NotImplementedError: native_thread_id() function is unimplemented on this machine /export/home/users/chkbuild/cb-gcc/tmp/build/20210526T070003Z/ruby/test/ruby/test_thread.rb:1338:in `native_thread_id' /export/home/users/chkbuild/cb-gcc/tmp/build/20210526T070003Z/ruby/test/ruby/test_thread.rb:1338:in `test_thread_native_thread_id' ``` commit 251fafec1b981076d6ba589ace2a4aa9502cbad2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-26 15:33:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-26 15:33:25 +0900 Suppress debug message commit 9ddc767434c5bc105ee2239876f77227a53f03d2 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-05-26 15:18:16 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-05-26 15:18:16 +0900 Add NEWS about 46655156dcc37509dcb69fcd0717c110eb1c624a * Add Thread#native_thread_id [Feature #17853] commit 46655156dcc37509dcb69fcd0717c110eb1c624a Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-05-22 21:36:27 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-05-26 15:14:11 +0900 Add Thread#native_thread_id [Feature #17853] commit 88e3848fca69915a24657bcc26da1a65b659c6f3 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 11:39:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-26 11:39:01 +0900 RSS library is the bundled gems now commit e54bef92d599049a0950e76024a15fd14561e8bd Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-26 10:04:24 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-26 10:04:24 +0900 Ignore lib/irb/ext/tracer.rb with TestRequireLib because tracer library was removed from ruby repo commit 59928a75bde5833c2ffeca2977f6e0f47043ce13 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-26 09:37:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-26 09:37:39 +0900 * 2021-05-26 [ci skip] commit fc832ffbfaf581ff63ef40dc3f4ec5c8ff39aae6 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-05-26 08:20:52 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-05-26 09:37:21 +0900 Disable compaction on platforms that can't support it Manual compaction also requires a read barrier, so we need to disable even manual compaction on platforms that don't support mprotect. [Bug #17871] Notes: Merged: https://github.com/ruby/ruby/pull/4528 commit 2a29a5311ce34bcbd0186455df2d5b724dcc501c Author: Jun Aruga <junaruga@users.noreply.github.com> AuthorDate: 2021-05-25 21:42:25 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-25 21:42:25 +0900 Add Travis badge image to `README.md`. [ci skip] (#4527) Align the order of the badges with ones on the wiki page. https://bugs.ruby-lang.org/projects/ruby/wiki/CIServers Notes: Merged-By: junaruga commit 43fb97dfba5fb422ee20a78eaa49c61c22d43077 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-25 20:19:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-25 20:19:11 +0900 Update the latest list of default gems for misc/expand_tabs.rb commit edcc29dcff1b269b7748ab83adf21b2f3f97ebff Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-25 15:20:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-25 20:04:54 +0900 Removed gdbm from ruby repo Notes: Merged: https://github.com/ruby/ruby/pull/4526 commit 9e56a22be6706c8698268d5ebe4f59960d3485b1 Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-05-25 17:28:18 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-05-25 19:38:05 +0900 bootstraptest/test_ractor.rb: Skip an assertion on Travis arm64. Skip the assertion to test the `Ractor.select` from multiple ractors that rarely fails on Travis arm64. See <https://bugs.ruby-lang.org/issues/17878>. Notes: Merged: https://github.com/ruby/ruby/pull/4518 commit 9d4266fd5555c9c4388e2e8592008d0e0d8ccf21 Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-05-25 17:24:45 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-05-25 19:38:05 +0900 .travis.yml: Update to use arm64/ppc64le/s390x. * Use only the free pipelines arm64/ppc64le/s390x without credits on Travis. See <https://docs.travis-ci.com/user/billing-overview/#partner-queue-solution>. * Add ppc64le case. * Update the gcc to gcc-11. * Remove unused logic. * Add the `tool/travis_wait.sh` to avoid a command timeout. * Run the tests skipping some failing tests. * Set `TEST_ALL_SKIPPED_TESTS` env to skip the tests. * Run the tests separately returning ok status. The tests are executed if `TEST_ALL_SKIPPED_TESTS` env is set or `TEST_ALL_SEPARATED_TESTS` env is set. * Add `tool/ci_functions.sh` to manage the functions used in CI. * Add arm64 to allow_failures due to the following issue. An arm64 job sometimes does not start right now. https://travis-ci.community/t/11629 Notes: Merged: https://github.com/ruby/ruby/pull/4518 commit 83efb2e47cd5648dfff3d416820003b44f77bb44 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2020-06-01 10:44:08 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-05-25 19:38:05 +0900 .travis.yml: Ubuntu 20.04 Focal Fossa This is an LTS. Must be better than Xenial. Notes: Merged: https://github.com/ruby/ruby/pull/4518 commit 4f735903c2288f985ebf64e62817fb3cc47549d5 Author: Jun Aruga <jaruga@redhat.com> AuthorDate: 2021-05-06 01:10:41 +0900 Commit: Jun Aruga <junaruga@users.noreply.github.com> CommitDate: 2021-05-25 19:38:05 +0900 Revert "Remove .travis.yml" to revive Travis. This reverts commit 6b978d542704a5614af5e9375c4b31b8d2618652. Notes: Merged: https://github.com/ruby/ruby/pull/4518 commit 55cd3e4ebff8fa75854ecadcd77abbf7cf4b5823 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-24 18:52:18 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-25 15:18:31 +0900 Removed dbm from ruby repo Notes: Merged: https://github.com/ruby/ruby/pull/4525 commit ab3266ea5c2c45b6e0ce9ba377a035710cb4fd1b Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-24 18:20:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-25 13:13:52 +0900 Removed tracer from ruby repo Notes: Merged: https://github.com/ruby/ruby/pull/4523 commit 274d0aa76886c0f08f17363ce6dc8639b4336727 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-25 08:03:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-25 08:03:04 +0900 * 2021-05-25 [ci skip] commit 45ddefb14a0b88a70d91e29236bc7d6827e15a54 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-05-25 08:02:17 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-05-25 08:02:42 +0900 add rb_id2str to lldb debugging scripts commit 4aaa98e62663f1e6e999c8741fe5bd518d178e0c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-24 18:35:14 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-24 18:37:18 +0900 xibbar is retired from cgi.rb maintainer commit f57968e329ce039395a6b7dc1886eb097c99b867 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-24 12:13:46 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-05-24 12:13:46 +0900 Set USE_COLORIZE to the default value in a test commit d06d4560a1196c72831fe59faa698d6672883448 Author: jethrodaniel <jethrodaniel@gmail.com> AuthorDate: 2020-08-12 11:32:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-24 11:56:05 +0900 [ruby/irb] update test/irb/test_init.rb to avoid useless eval Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> https://github.com/ruby/irb/commit/2dfdc031ec commit b8ffb1c46f03dacfdb6b4417274ca66cc9142e5b Author: Mark Delk <jethrodaniel@gmail.com> AuthorDate: 2020-05-18 10:12:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-24 11:55:58 +0900 [ruby/irb] respect NO_COLOR environment variable When `NO_COLOR` is set to any non-nil value, output is not colorized. See https://no-color.org/ https://github.com/ruby/irb/commit/401d0916fe commit e16a642900b17c18e014360370b4a5eb0897605d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-24 09:41:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-24 09:41:24 +0900 * 2021-05-24 [ci skip] commit ce36097748630ffd64927b80703a669e85e017ae Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-05-24 09:41:03 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-24 09:41:03 +0900 Refactor num_zero_p function (#4522) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit c264d30261cb7d79caddd982300a7ae002293967 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-21 21:45:03 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-05-21 21:45:03 +0900 Use YAML.safe_load to use the permitted_classes option commit fb4195b9695c5e1034c896ea41a3e0371bfdb48a Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-22 15:36:55 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-05-22 15:36:56 +0900 Show a backtrace when tool/extlibs.rb fails I'd like to retry this kind of error, but showing no backtrace is hard to deal with. https://github.com/ruby/ruby/runs/2644908002 commit 141861a2223560601151db1a351308e489bed9e6 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-22 15:19:46 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-05-22 15:27:36 +0900 Update a comment about what 'inline' attr means commit c4162a4cb82278b0674452304c96b5775d5b7d6d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-22 14:32:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-22 14:34:23 +0900 Refined portability of test for [Bug #17739] The order of arguments to callback of qsort is not defined. That means `a` may not be 3 at all. commit 8b00bfb7c2c33827490c78a16c44b102cb0d724b Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-22 10:33:56 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-22 10:33:56 +0900 Do not allow array modifications after freeze inside sort! If freezing an array inside sort!, previously the array could be modified after the freeze. This checks whether the receiver is frozen after every yield and potential call to #> or #<, preventing modifications if the receiver is frozen inside the block or by the #> or #< call. Fixes [Bug #17739] Notes: Merged: https://github.com/ruby/ruby/pull/4335 Merged-By: jeremyevans <code@jeremyevans.net> commit b2fc592c3046e60fdfbb5692d52cc7cbf814b6d0 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-05-22 01:13:55 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-22 01:13:55 +0900 Build CDHASH properly when loading iseq from binary Before this change, CDHASH operands were built as plain hashes when loaded from binary. Without setting up the hash with the correct st_table type, the hash can sometimes be an ar_table. When the hash is an ar_table, lookups can call the `eql?` method on keys of the hash, which makes the `opt_case_dispatch` instruction not "leaf" as it implicitly declares. The following script trips the stack canary for checking the leaf attribute for `opt_case_dispatch` on VM_CHECK_MODE > 0 (enabled by default with RUBY_DEBUG). rb_vm_iseq = RubyVM::InstructionSequence iseq = rb_vm_iseq.compile(<<-EOF) case Class.new(String).new("foo") when "foo" 42 end EOF puts rb_vm_iseq.load_from_binary(iseq.to_binary).eval This commit changes the binary loading logic to build CDHASH with the right st_table type. The dumping logic and the dump format stays the same Notes: Merged: https://github.com/ruby/ruby/pull/4511 Merged-By: XrXr commit 0772f1b583cedebddb493a8eb542243f6d2437d8 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-22 01:12:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-22 01:12:48 +0900 * 2021-05-22 [ci skip] commit 636d4f7eb9f3fcb088e1a44af4181c4aa36789b4 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-05-21 07:52:32 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-05-22 01:12:31 +0900 Avoid setting the visibility of refinement method entries Since refinement search is always performed, these entries should always be public. The method entry that the refinement search returns decides the visibility. Fixes [Bug #17822] Notes: Merged: https://github.com/ruby/ruby/pull/4515 commit 50a534a1526e2b9f4ea41e44b802bd73f9cebbeb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-21 15:35:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-21 18:28:24 +0900 ripper: wrap endless method in bodystmt [Bug #17869] Notes: Merged: https://github.com/ruby/ruby/pull/4516 commit 050bb06e66d8c08c43bf0cc74271f35c3edce25d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-21 15:34:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-21 18:28:24 +0900 ripper: assertions for rescue/ensure in method body Notes: Merged: https://github.com/ruby/ruby/pull/4516 commit e9974a466ac7edcb8035f5f7bc65c4c6731e2ee2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-20 20:15:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-21 18:26:07 +0900 Get rid of sporadic WSAEACCES on Windows [ruby-dev:42661] commit 817764bd82513e2a0a672f5958f65854ea172c08 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-05-18 17:11:39 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-05-21 18:12:14 +0900 simple rescue+while+break should not use `throw` 609de71f043e8ba34f22b9993e444e2e5bb05709 fixes the issue by using `throw` insn if `ensure` is used. However, that patch introduce additional `throw` even if it is not needed. This patch solves the issue. This issue is pointed by @mame. Notes: Merged: https://github.com/ruby/ruby/pull/4507 commit 59b327aa58d3f514030b0afb767f11ab6ca0a76d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-17 19:33:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-21 15:53:34 +0900 [ruby/rdoc] Drop support for Ruby 2.4 https://github.com/ruby/rdoc/commit/f480b970cc commit f18a0b7654d471101b207e7fe553e12a25398e45 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-15 01:08:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-21 15:53:34 +0900 [ruby/rdoc] Follow-up rubygems Use test-unit assertions instead of minitest. https://github.com/ruby/rdoc/commit/d6a6209d7f commit 10e63f3f56cc0f559816d921f3e771dea02f3eb9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-15 01:26:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-21 15:53:34 +0900 [ruby/rdoc] Vertical-bar is disallowed in path names on Windows No risk of remote code execution, when the file cannot be created. https://github.com/ruby/rdoc/runs/2565343916?check_suite_focus=true#step:5:58 ``` Error: test_remove_unparseable_CVE_2021_31799(TestRDocRDoc): Errno::EINVAL: Invalid argument @ utime_failed - | touch evil.txt && echo tags D:/rubyinstaller-head-x64/lib/ruby/3.1.0/fileutils.rb:1142:in `utime' D:/rubyinstaller-head-x64/lib/ruby/3.1.0/fileutils.rb:1142:in `block in touch' D:/rubyinstaller-head-x64/lib/ruby/3.1.0/fileutils.rb:1139:in `each' D:/rubyinstaller-head-x64/lib/ruby/3.1.0/fileutils.rb:1139:in `touch' D:/a/rdoc/rdoc/test/rdoc/test_rdoc_rdoc.rb:463:in `block (2 levels) in test_remove_unparseable_CVE_2021_31799' 460: temp_dir do 461: file_list = ['| touch evil.txt && echo tags'] 462: file_list.each do |f| => 463: FileUtils.touch f 464: end 465: 466: assert_equal file_list, @rdoc.remove_unparseable(file_list) ``` https://github.com/ruby/rdoc/commit/a7df7dc8fa commit a298bdf8606bda9c9868c44618c5b70a96c2712c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-15 01:24:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-21 15:53:34 +0900 [ruby/rdoc] Dir.children is 2.5+ RDoc seems still supporting outdated 2.4. https://github.com/ruby/rdoc/runs/2565344070?check_suite_focus=true#step:5:64 ``` Error: test_remove_unparseable_CVE_2021_31799(TestRDocRDoc): NoMethodError: undefined method `children' for Dir:Class /home/runner/work/rdoc/rdoc/test/rdoc/test_rdoc_rdoc.rb:467:in `block in test_remove_unparseable_CVE_2021_31799' 464: end 465: 466: assert_equal file_list, @rdoc.remove_unparseable(file_list) => 467: assert_equal file_list, Dir.children('.') 468: end 469: end 470: ``` https://github.com/ruby/rdoc/commit/5a4a64dc0f commit 21d24767e83e6a75847c0c728d99f6103757e868 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-11 07:48:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-21 15:51:53 +0900 [ruby/rdoc] Update rdoc.gemspec by adding lib/rdoc/markup/table.rb Fixes ruby/rdoc#808 https://github.com/ruby/rdoc/commit/80766fd389 commit 0ee24b4fab1a1faef600a42c29863e1c3edd8c61 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-02 20:52:41 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-05-21 13:42:24 +0900 [ruby/rdoc] Version 6.3.1 https://github.com/ruby/rdoc/commit/9307f932b7 commit b1c73f239fe9af97de837331849f55d67c27561e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-02 20:52:23 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-05-21 13:42:24 +0900 [ruby/rdoc] Use File.open to fix the OS Command Injection vulnerability in CVE-2021-31799 https://github.com/ruby/rdoc/commit/a7f5d6ab88 commit 9edad0df74c6ad39281852cca9793fc7dba5c81f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-21 10:34:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-21 10:34:28 +0900 Remove short options with argument [Bug #17870] Remove GNU make `-O` and `-W` options which are short but followed by an argument, so that `$mflags.set?(?n)` does not return `true` wrongly. commit a35d137a37a0c12cb5694e419284b9e0ab718467 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-20 22:57:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-21 09:01:01 +0900 [DOC] Moved `File.fnmatch?` to dir.rb So that no longer disturbed by C comment delimiters. Notes: Merged: https://github.com/ruby/ruby/pull/4514 commit a7fae2af72f5e542a40551aee7583cca79467a47 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-21 04:25:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-21 04:25:55 +0900 * 2021-05-21 [ci skip] commit 2e919e4a643814735c68cf6724972cf7aa0cd91e Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-21 04:24:41 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-05-21 04:24:41 +0900 Remove extra word in heredoc documentation From Thibault Jouan Fixes [Misc #17872] commit c71109355987f290257e977c1634db6328916786 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-20 20:15:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-20 21:56:58 +0900 Get rid of sporadic WSAEACCES on Windows [ruby-dev:42661] Notes: Merged: https://github.com/ruby/ruby/pull/4513 commit dfe21ef7a15a30fc33f3a5cc089e15d09e905eb4 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-20 19:33:28 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-05-20 19:33:29 +0900 Do not block JIT with pending_stale_p Because we want to flush pending stale units before unloading units, the pending_stale_p check is implemented in this waiting loop. However, once all methods are called more than --jit-min-calls, mjit_worker_wakeup will not be signaled again. As a result, when mjit_recompile is called after that and pending_stale_p becomes true, MJIT stops processing methods in the unit queue even if the queue is very long and MJIT does nothing, waiting for the signal. There should be a better way to handle this, but as a fix to be backported to Ruby 3.0, let me make an obvious simple commit here. commit 5026f9a5d5012248729a0052cd6cec811748291b Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-20 19:13:39 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-20 19:13:39 +0900 compile.c: stop the jump-jump optimization if the second has any event Fixes [Bug #17868] commit 821e3c128f8e9efce9dbd2b1b96abc22d0312a60 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-20 14:35:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-20 14:35:14 +0900 * 2021-05-20 [ci skip] commit 63663bb459b8592fa6c8f78a77fa15e9d8e1fcbc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-20 14:31:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-20 14:31:49 +0900 Rename nucomp_false as nucomp_real_p_m commit adcbae8d49ec04d365ce13274783b1495c3c7d0e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-19 14:24:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-19 14:24:01 +0900 Removed minitest/mock commit 1d170fdc6d0af128c9e5ea2d6082790d5885a4ae Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-19 10:16:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-19 10:16:22 +0900 ext/json/parser/parser.h: Add fallback MAYBE_UNUSED https://github.com/flori/json/commit/e2ad91fc2094d3cc2f76adc6c55d420cd06f34d8 commit 637683c9f4113fff73f3c438b33dd91b25001666 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-19 06:53:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-19 06:53:29 +0900 * 2021-05-19 [ci skip] commit e4e416380d4b1b36ca1cc2e1e1ed993c9be694bb Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-05-18 08:46:49 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-05-19 06:53:07 +0900 Revert any references that are on the machine stack after compacting Since compaction can be concurrent, the machine stack is allowed to change while compaction is happening. When compaction finishes, there may be references on the machine stack that need to be reverted so that we can remove the read barrier. Notes: Merged: https://github.com/ruby/ruby/pull/4510 commit 7c716b686ca396733028f9a824f8cd656e23f7a2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-18 11:48:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-18 23:26:03 +0900 ext/json/parser/prereq.mk: fix warnings for code generated by ragel * type-limits when plain-char is unsigned * unused-const-variable for NFA constants commit 6b32f1f3389fa38c0f26380e066a617c8049abb4 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-05-18 22:16:29 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-18 22:16:29 +0900 Object whats here (#4503) What's Here section for class Object. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 6d6391bf679fef29b38d7257a9060d4fd8d0dd2b Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-18 19:21:41 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-18 19:21:41 +0900 Update bundled_gems commit ceea1ea8af2376845f5f6164e9432e5b9845c033 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-18 19:06:48 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-18 19:06:48 +0900 test/rubygems/test_gem_commands_open_command.rb: prevent a warning http://rubyci.s3.amazonaws.com/debian9/ruby-master/log/20210518T093002Z.log.html.gz ``` [ 9396/21186] TestGemCommandsOpenCommand#test_execute-e:1: warning: possibly useless use of a literal in void context = 0.06 s ``` commit 837cbea64b74d464bfbfb10e6c81a8f92c6eee71 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-18 19:01:27 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-18 19:01:27 +0900 test/psych/test_coder.rb: Suppress non-parenthesis warnings http://rubyci.s3.amazonaws.com/debian9/ruby-master/log/20210518T093002Z.log.html.gz ``` /home/chkbuild/chkbuild/tmp/build/20210518T093002Z/ruby/test/psych/test_coder.rb:277: warning: ambiguity between regexp and two divisions: wrap regexp in parentheses or add a space after `/' operator ``` commit 6674dd61fde8ff233853846c3bdf368549b146d2 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-05-18 18:51:15 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-05-18 18:51:15 +0900 Remove ubuntu-16.04 (already commented out) https://github.blog/changelog/2021-04-29-github-actions-ubuntu-16-04-lts-virtual-environment-will-be-removed-on-september-20-2021 commit 9bd79c2cefb349a00958e35801acb724f0dcae15 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-18 17:31:34 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 17:31:43 +0900 Removed minitest/benchmark commit 5a0b89de32eba93f254df2ebabe3f02a76ccba0a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-18 17:08:26 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 17:31:42 +0900 Removed minitest/autorun commit 8ab2afb20b000396ef82fb428b9bfdfa0e13d816 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-18 16:48:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 17:31:42 +0900 Use Test::Unit instead of Minitest::Unit commit 0d343bf823ae0f9e2281329cc1ac7f3db454fc20 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-18 17:00:15 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-18 17:00:26 +0900 Update bundled_gems commit 34bc8210ed1624dc6ba24afef4616baa5a934df9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-18 16:02:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-18 16:04:37 +0900 test/irb/test_raise_no_backtrace_exception.rb: fix test file path Create a file for test under the temporary directory. commit 79717f81f8ba24960cca6c934d00c72db64139ed Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-04-19 16:45:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] windows: link to ws2_32 for WSAGetLastError() https://github.com/ruby/fiddle/commit/e9955d74ae Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit 71d4a493b890a21fdf3b302849d6d60c11ba1d9e Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-04-19 16:37:17 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] windows: add Fiddle.win32_last_socket_error{,=} GitHub: fix GH-72 Users can't use WSAGetLastError() with Ruby 3.0 or later because rb_funcall() resets the last socket error internally. Users can get the last socket error by Fiddle.win32_last_socket_error. Reported by Kentaro Hayashi. Thanks!!! https://github.com/ruby/fiddle/commit/76158db00a Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit 2579593a56fd96d9085daa7f11dfc2dd231cb70f Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-03-11 06:48:00 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] Do not use a libdir for glibc, it breaks Linux PPC64 (#70) Fixes [Bug #12666] https://github.com/ruby/fiddle/commit/a267a40be7 Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit ab5212b3c9e696b13a5959e22df75db7b54fed93 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-02-17 16:54:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] Add support for "const" in type GitHub: fix https://github.com/ruby/fiddle/pull/68 Reported by kojix2. Thanks!!! https://github.com/ruby/fiddle/commit/d7322c234a Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit 4d1bb460f64eafacc2ef8c4116a1bbe7e63e732f Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-01-03 06:17:56 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] Add --enable-debug-build option to extconf.rb https://github.com/ruby/fiddle/commit/e0498e60ea Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit 791e8eec66d3aebcee36c1369b0bf52bc3815e94 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2020-12-29 05:19:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] win32types: sort https://github.com/ruby/fiddle/commit/35dec6c5a5 Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit 8758b07b1e4fd636dffb4b442388a3033c63d4b5 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2020-12-29 05:18:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] Fix more Win32Types definitions https://docs.microsoft.com/en-us/windows/win32/winprog/windows-data-types https://github.com/ruby/fiddle/commit/805c1a595a Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit 25e56fe374478a2266ac25f22a07bb3c6a423c83 Author: Orgad Shaneh <orgads@gmail.com> AuthorDate: 2020-12-29 05:04:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] Fix Win32Types for Windows 64-bit (#63) https://docs.microsoft.com/en-us/windows/win32/winprog/windows-data-types https://github.com/ruby/fiddle/commit/28ee5b1608 Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit 8d63b1dc75cd6f03f581e99d71fe3ccfb3d15613 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2020-12-25 06:05:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] Bump version https://github.com/ruby/fiddle/commit/0cbd370fd6 Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit 881b2dc89865c1b7a7fbc2c89e13789a068f335d Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2020-12-25 06:02:19 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] closure: add support for const char * GitHub: fix GH-62 Reported by Cody Krieger. Thanks!!! https://github.com/ruby/fiddle/commit/284b820f2d Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit b2de5999d88d81310b3c9f0c1f14451d7eca8e6e Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2020-12-25 06:01:12 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] closure: accept symbol as type https://github.com/ruby/fiddle/commit/dc2da6633e Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit 212d836cd72742dcdf44187e0cebd7caed26bb41 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2020-12-25 05:52:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] Remove wrong comment https://github.com/ruby/fiddle/commit/831522e768 Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit 7bd3d6d23e9f083ef00c7e9a6110bbb79120bba0 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-23 23:38:37 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-18 12:48:40 +0900 [ruby/fiddle] Bump version https://github.com/ruby/fiddle/commit/63e5f98412 Notes: Merged: https://github.com/ruby/ruby/pull/4506 commit 4ba97c6ffc71f88a4de4ed88b188dbec2e5ff325 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-18 03:19:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-18 03:19:16 +0900 * 2021-05-18 [ci skip] commit 725b6660769c0fb5cb66c725d3271949c68e21d1 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-05-18 03:17:52 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-18 03:17:52 +0900 Use a shared spec for YAML.load and YAML.unsafe_load commit 2321ade41d9644207efb262137a3748b85b6c635 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-05-18 03:12:39 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-18 03:12:39 +0900 Prefer respond_to? to defined? in MSpec commit ee611341c9bc547e7d76fa3dd5c8f1452eb04d0f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-02-23 10:05:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 19:51:51 +0900 Bump version of required_ruby_version to 2.3. Fixes #464 commit 2de594ca98d95e62f7fcf000f21e174ac3f6fcaf Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2020-11-18 19:59:27 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 19:51:51 +0900 [flori/json] Deduplicate strings inside json_string_unescape [ci 2] https://github.com/flori/json/commit/1982070cb8 commit 1d2b4ccaf28596efee65c59dc69ea489a4237079 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2020-11-18 19:33:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 19:51:50 +0900 [flori/json] Refactor json_string_unescape https://github.com/flori/json/commit/f398769332 commit 8a974dc83cd2c8a8befb0b612b4f18c3f6f55370 Author: Masafumi Koba <473530+ybiquitous@users.noreply.github.com> AuthorDate: 2020-12-23 11:20:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 19:26:03 +0900 [flori/json] Fix incorrect `#` position in API doc This change fixes an incorrect `#` position in the API documentation of the `JSON` module. https://github.com/flori/json/commit/dc4b62424f commit 1f91627c8e8e6bbe9e86ff3d9c0c4e39bae1ec4c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-17 19:22:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 19:22:52 +0900 Removed EOL version from .github/workflows/spec_guards.yml commit 93fb186dd0d2fbb4ccea04c976e4d25665c65857 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-17 15:42:22 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-17 15:42:22 +0900 spec/ruby/library/yaml: Test YAML.unsafe_load instead of YAML.load in 3.1 commit 008a63c477c35ff72344370005029fc73c5ae6eb Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-17 15:32:41 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-17 15:32:41 +0900 Revert "Use YAML.unsafe_load instead of YAML.load." This reverts commit a0e97b0e2e4314a0815d09beb825e38f234778da. commit e36da7ba186ed825a9fd1bfd993c504e95e021e3 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-17 15:28:47 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 15:28:47 +0900 Revert an accidentally commits at df86a13cc150f573b1078779667a1573747d3dbd commit 31a757a4426f1ac8c479313e01542940386fc2fe Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-17 14:22:42 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-17 14:31:34 +0900 Make the test pass with the old libyaml I have no idea what result is right, but it fails with libyaml 0.1.7 (bundled with Ubuntu 18.04) anyway. commit f367b4ffe739453e87e55f955138b0ce662942b7 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-17 14:21:47 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-17 14:31:34 +0900 assert_equal accepts an expected value as the first argument commit a0e97b0e2e4314a0815d09beb825e38f234778da Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-17 13:36:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 13:36:55 +0900 Use YAML.unsafe_load instead of YAML.load. This is a temporary workaround. We should rewrite the examples with permitted_classes. commit dfecc650c3f9bbd8b4fb0eefc1e3da65f151d3a8 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-17 12:57:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 12:57:41 +0900 Workaround with fbb4e3f96c10de2240f2d87eac19cf6f62f65fea in yaml/store.rb commit ffdf0232efd4955a234955c8372885b850fcfe33 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-17 12:50:21 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-17 12:53:42 +0900 lib/rdoc/rdoc.rb: Allow only RDoc::Options in .rdoc_options Follow-up of d8fd92f62024d85271a3f1125bc6928409f912e1. Instead of using unsafe_load blindly, RDoc::Options is only supposed to be allowed. commit d8fd92f62024d85271a3f1125bc6928409f912e1 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-17 12:04:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 12:04:40 +0900 Workaround with fbb4e3f96c10de2240f2d87eac19cf6f62f65fea in rdoc commit 8e91b969df08b7a2eb27a5d6d38733eea42dc7ad Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-17 11:59:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 12:00:05 +0900 Workaround with fbb4e3f96c10de2240f2d87eac19cf6f62f65fea commit da5b28396397ace84d914cb188055cbeb46b8725 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-17 11:36:16 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-17 11:36:16 +0900 test/ostruct/test_ostruct.rb: Use YAML.unsafe_load instead of YAML.load Follow-up of fbb4e3f96c10de2240f2d87eac19cf6f62f65fea commit 42b20bdbfe770053e02948e9577bdd412a8c98cf Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-05-12 05:49:20 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 11:20:46 +0900 [ruby/psych] remove deprecated interface https://github.com/ruby/psych/commit/0767227051 commit b0e21197ceb5329f751c421510048055d3c2af57 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-05-12 05:35:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 11:20:46 +0900 [ruby/psych] Bump version https://github.com/ruby/psych/commit/1df86a2e81 commit fbb4e3f96c10de2240f2d87eac19cf6f62f65fea Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-05-11 01:50:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 11:20:45 +0900 [ruby/psych] Use Psych.safe_load by default Psych.load is not safe for use with untrusted data. Too many applications make the mistake of using `Psych.load` with untrusted data and that ends up with some kind of security vulnerability. This commit changes the default `Psych.load` to use `safe_load`. Users that want to parse trusted data can use Psych.unsafe_load. https://github.com/ruby/psych/commit/176494297f commit c7c2ad5749f7f0767ef38be160f4b391228396c1 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-05-11 01:50:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 11:20:45 +0900 [ruby/psych] Introduce `Psych.unsafe_load` In future versions of Psych, the `load` method will be mostly the same as the `safe_load` method. In other words, the `load` method won't allow arbitrary object deserialization (which can be used to escalate to an RCE). People that need to load *trusted* documents can use the `unsafe_load` method. This commit introduces the `unsafe_load` method so that people can incrementally upgrade. For example, if they try to upgrade to 4.0.0 and something breaks, they can downgrade, audit callsites, change to `safe_load` or `unsafe_load` as required, and then upgrade to 4.0.0 smoothly. https://github.com/ruby/psych/commit/cb50aa8d3f commit bcaa6aeceadd34eb6a0de1d55bf17ecb153a7916 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-10 18:38:01 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 11:20:45 +0900 [ruby/psych] Removed needless platform detection https://github.com/ruby/psych/commit/57d704fd63 commit df86a13cc150f573b1078779667a1573747d3dbd Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-10 18:10:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 11:20:45 +0900 [ruby/psych] Import test assertions from ruby/ruby https://github.com/ruby/psych/commit/01dda86681 commit a3ceed50b877e57554ec825d7fefe066c81ff0ee Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-02-26 02:36:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 11:20:45 +0900 [ruby/psych] Fix symabolize_name with non-string keys https://github.com/ruby/psych/commit/1c5c29e81f commit 830778db95c1dca5dfad591eae5176d3133bf7ee Author: Jeremy Ebler <jebler@gmail.com> AuthorDate: 2021-02-08 11:39:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-17 11:20:45 +0900 [ruby/psych] feat: allow scalars and sequences to be styled when dumped https://github.com/ruby/psych/commit/546154ddb7 commit 167cff6a5d5241e2929392682cc3a68ece3b0caf Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-17 08:49:53 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-17 08:50:23 +0900 NEWS.md: mention lib/objspace/trace.rb [Feature #17762] commit 35981cb5e914df04760bc5a17d0b6bb44bf45383 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-17 08:33:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-17 08:33:31 +0900 * 2021-05-17 [ci skip] commit 229cb0fcdb7957b19d7042b000d803ae58cc6593 Author: Gabriel Nagy <gabrielnagy@me.com> AuthorDate: 2021-05-17 08:33:08 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-17 08:33:08 +0900 [Win32] long path name support [Bug #12551] Implement long path support on Windows by applying Microsoft's recommended application manifest. To make this work on both Visual C++ and MinGW, include the manifest as a resource when generating the resource files. This way it will be embedded into the executables generated by both compilers. It's important for the manifest resource to have ID 1, otherwise GCC will embed a default manifest. Note that in addition to this, the user needs to have [long paths enabled] either by modifying the registry or by enabling a group policy. [long paths enabled]: https://docs.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation?tabs=cmd#enable-long-paths-in-windows-10-version-1607-and-later Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4505 Merged-By: nobu <nobu@ruby-lang.org> commit adafa8105f58bddc05a6ca12314890e07cbf5f5b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-16 18:27:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-16 18:27:47 +0900 PAGE_SIZE is never used on msys/mingw commit de6e76ff25d9dd33a13f06111514bcac869f4830 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-16 00:07:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-16 00:07:50 +0900 * 2021-05-16 [ci skip] commit 8560f3424606fda9fd286e59abbb4d4bdf8ef99d Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-05-16 00:06:38 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-05-16 00:07:22 +0900 Fix a typo [ci skip] commit 3e1d32a233c84dac9e8aaf12f5bc21573a2477cb Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-15 19:13:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-15 19:13:13 +0900 * 2021-05-15 [ci skip] commit eef406acf413d61db9f9ec12f036386eda61e338 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-13 19:18:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-15 19:12:57 +0900 [ruby/irb] IRB should use the latest Reline, 0.2.5 https://github.com/ruby/irb/commit/34496e20e8 commit 5f8bca32571fa9c651f6903d36f66082363f8879 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-14 18:10:07 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-14 18:10:07 +0900 tool/lib/minitest/mock.rb: define Object#stub only when not defined Recently, lib/rubygems/test_case.rb also defines the method. commit f210d456a8a3ab29085bd811494c3bdf36dd6f69 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-14 18:07:58 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-14 18:07:58 +0900 test/objspace/test_objspace.rb: check stderr before stdout When `require "objspace/trace"` fails, previously the failure says: ``` 1) Failure: TestObjSpace#test_objspace_trace [/tmp/ruby/v3/src/trunk-mjit/test/objspace/test_objspace.rb:621]: <3> expected but was <0>. ``` but this is hard to debug. commit 702961a88bbbfd556139c208d8f4d373b52e530d Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-14 15:44:13 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-14 15:44:13 +0900 test/ruby/test_refinement.rb: prevent "assigned but unused variable" commit f691c15792a587eeaa36a8c3ab1a6354368bfd33 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-14 15:39:57 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-14 15:39:57 +0900 ext/objspace/lib/objspace/trace.rb: Remove the original Kernel#p ... to disable a "method redefined" warning. http://rubyci.s3.amazonaws.com/solaris11-gcc/ruby-master/log/20210514T050008Z.fail.html.gz ``` 1) Failure: TestObjSpace#test_objspace_trace [/export/home/chkbuild/chkbuild-gcc/tmp/build/20210514T050008Z/ruby/test/objspace/test_objspace.rb:621]: <["objspace/trace is enabled"]> expected but was <["/export/home/chkbuild/chkbuild-gcc/tmp/build/20210514T050008Z/ruby/.ext/common/objspace/trace.rb:29: warning: method redefined; discarding old p", "objspace/trace is enabled"]>. ``` commit cf1e1879f12ad547f95fe94ab62b4d960e804eb8 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-14 13:40:32 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-14 13:40:32 +0900 ext/objspace/lib/objspace/trace.rb: Added This file, when require'ed, starts tracing the object allocations, and redefines `Kernel#p` to show the allocation site. This commit is experimental; the library name and APIs may change. [Feature #17762] commit 7cf90f99f5674fdadc0ff9d8341b315b2490ea26 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-14 09:33:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-14 09:33:20 +0900 Refix PAGE_SIZE * honor actually used headers * include sys/user.h only when `PAGE_SIZE` is not defined commit a168c4772827bc6105177c4b605dcf6e6e1943a5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-14 09:31:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-14 09:31:09 +0900 Make USE_MMAP_ALIGNED_ALLOC static const commit 434cd3c399d2213ad319b7e203af0b07a1d0d64f Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-05-14 07:19:07 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-14 07:19:07 +0900 What's Here for BasicObject (#4499) * What's Here for BasicObject Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 879cc64d06fa5b5a86abe7f03f678b65797af974 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-05-14 02:09:07 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-14 02:09:07 +0900 What's Here for Kernel (#4488) Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 4155a93c2d2b531a352c2224adf89f6787f3672c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-14 00:14:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-14 00:14:52 +0900 * 2021-05-14 [ci skip] commit 0aa4ca1477e76c7ea0b5d76b4afbc226297dd874 Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-05-13 06:17:43 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-14 00:14:30 +0900 Fix compilation with jemalloc on macos On darwin we avoid including sys/user.h to avoid a conflict. Previously we still ended up with PAGE_SIZE being defined because the headers for system malloc define it. However, when compiling with jemalloc nothing would define PAGE_SIZE. This commit changes configure.ac so that we never use the PAGE_SIZE constant on darwin and to always use the sysconf fallback. Notes: Merged: https://github.com/ruby/ruby/pull/4494 commit 2420119f47a6c5d478c721b2f30565d5a074dd32 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-05-13 18:18:08 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-05-13 18:19:28 +0900 skip rb_bug for inconsistent zombies count It seems a bug but it takes more time to debug. To stop CI failures, skip this rb_bug on `RGENGC_CHECK_MODE=2` temporarily. commit 110f242ef9b495037f59e4972ee102a8b8b372d5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-13 12:30:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-13 12:54:56 +0900 Also `\U` after control/meta is invalid [Bug #17861] As well as `\u`, `\U` should be invalid there too. And highlight including `u`/`U` not only the backslash before it. commit 9ce29c94d82c6bf278b1be088435726a9c47e225 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-13 07:06:12 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-05-13 11:30:05 +0900 Avoid improper optimization of case statements mixed integer/rational/complex Fixes [Bug #17857] Notes: Merged: https://github.com/ruby/ruby/pull/4496 commit 11ae581a4a7f5d5f5ec6378872eab8f25381b1b9 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-13 04:37:55 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-05-13 10:55:43 +0900 Fix handling of control/meta escapes in literal regexps Ruby uses a recursive algorithm for handling control/meta escapes in strings (read_escape). However, the equivalent code for regexps (tokadd_escape) in did not use a recursive algorithm. Due to this, Handling of control/meta escapes in regexp did not have the same behavior as in strings, leading to behavior such as the following returning nil: ```ruby /\c\xFF/ =~ "\c\xFF" ``` Switch the code for handling \c, \C and \M in literal regexps to use the same code as for strings (read_escape), to keep behavior consistent between the two. Fixes [Bug #14367] Notes: Merged: https://github.com/ruby/ruby/pull/4495 commit 9484f9ebdf675f71811a5583c1af2415b26c932f Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-12 23:31:24 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-13 09:26:13 +0900 [rubygems/rubygems] Use `Time.stub :now` to avoid a random failure Essentially this reverts 45464bfcbdf9f9cfb440950bc57a27d237627a17. The commit removed a mock of Time.now, which caused a random failure. http://rubyci.s3.amazonaws.com/ubuntu1804/ruby-master/log/20210512T123004Z.fail.html.gz ``` 1) Failure: TestGemPackageTarWriter#test_add_file_signer [/home/chkbuild/chkbuild/tmp/build/20210512T123004Z/ruby/test/rubygems/test_gem_package_tar_writer.rb:117]: Field mtime of the tar header differs.. <"14046746312\u0000"> expected but was <"14046746311\x00">. ``` Object#stub is defined at f1af59fe02ef2cc58f13e2742e4cc6cf8c2a1a20, so now `Time.stub :now` works. https://github.com/rubygems/rubygems/commit/85f60a9ed0 commit 9225352bf1b6f66578f848180ead23bc3eb3e219 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-13 00:17:34 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-13 00:17:34 +0900 * 2021-05-13 [ci skip] commit 31794d2e733e081e4e221f27aff6380393981681 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-13 00:14:50 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-13 00:14:50 +0900 parse.y: Allow "command" syntax in endless method definition This change allows `def hello = puts "Hello"` without parentheses. Note that `private def hello = puts "Hello"` does not parse for technical reason. [Feature #17398] commit 81513c9dab75fa26e02e16945c8886eb6bb9413c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-12 17:40:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-12 17:40:52 +0900 * remove trailing spaces. [ci skip] commit 523a6998dd45eb910ccd3fe6a8d9d008f7a12cf2 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-05-12 17:35:57 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-05-12 17:40:31 +0900 Use another class for the comparison. `memsize_of(Object.new)` can be changed with past ivar creation history for Object instances (another Object instance has 4 or more ivars, next created Object instance has the area for the ivars). So use antoher class for the comparison. commit 81720b947ac1ee8ed5dba551d38014810f9c129b Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-12 16:01:49 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 Use assert_raise instead of assert_raises Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit cdcfe1082c54830de810c22095635a31405c043b Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 13:48:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 Revert 924ce2c5ba4d1c1dc781a6a06682204d358421bb Because test-unit didn't provide the benchmark test. And This test is fragile with the several environments. Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit bef49e6e8d03a34b95f3e69ef7d23395027a44d2 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 21:00:54 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Added begin-end block for java platform Because pend of test-unit raises exception. https://github.com/rubygems/rubygems/commit/b5e2d0855a Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit b314885af0dad39cad1d556c574a41eb785d8703 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 20:27:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Update the link of minitest code with the commit hash. https://github.com/rubygems/rubygems/commit/e7280f8d30 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 32d25660b9935a04f33a7e7635b571260d634caf Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 20:24:43 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Removed the related code for minitest-bisect https://github.com/rubygems/rubygems/commit/83ebdec27a Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 9620a30b1b327faef9740e39967fa13da8bed42e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 20:23:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Fixed an intentional blank-line https://github.com/rubygems/rubygems/commit/795b572ac2 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 655727ee1b9e5fa2f0e1c6e6ad2b12a596c0c4b6 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 18:31:47 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Added comment for Minitest::Mock https://github.com/rubygems/rubygems/commit/ae44b68d57 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit d33888bf9656818e74401a28dc4725fc8b43ea03 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 18:21:00 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Replace skip to pend https://github.com/rubygems/rubygems/commit/0b145135c7 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 129bc04ab7fb36f8a9e89cbe0264918bd7cc1d02 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 16:45:31 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] util/rubocop -a https://github.com/rubygems/rubygems/commit/a10ff97830 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 00f5b4b54614d28941fd31f93eaf36357bd8c099 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 16:31:18 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Don't use Minitest::Mock https://github.com/rubygems/rubygems/commit/d3fa893597 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 3456335a9c624cd5f475fc71cc65e72d97acb86e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 16:31:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Removed minitest/mock from test/rubygems/test_gem_remote_fetcher.rb https://github.com/rubygems/rubygems/commit/f1af59fe02 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit ff3f990499d041d39bc4ad2ca3244be8f6f1d552 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 13:59:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Removed minitest/mock from test_gem_package_tar_writer.rb https://github.com/rubygems/rubygems/commit/45464bfcbd Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 7b3b48549b189315a307703f93facb603339179e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 13:12:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] capture_output will return empty string, not nil https://github.com/rubygems/rubygems/commit/3fa93f6144 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 9b5e4ce611de214eea08a23eddc14dc97e5f2cd3 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 13:11:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Fixed variable scope at test_silent_system https://github.com/rubygems/rubygems/commit/bfcdf79657 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit d5237c5d10013e81baab5a78ab74c5b0f2c05825 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 13:04:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Import capture_subprocess_io from minitest https://github.com/rubygems/rubygems/commit/8b2ca6df3a Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit cd375e455e21e19d966c6cee86714a41cac67878 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 13:04:12 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Rewrite with capture_output https://github.com/rubygems/rubygems/commit/a091004ded Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 5ed9d3f16f0b6fd9a93816740f8b41c69d03734a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 12:34:03 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Use capture_output instead of capture_io https://github.com/rubygems/rubygems/commit/c46185abe3 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit c30594bb0c23b5b23c3d3ca490e3cac34d09c1f9 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 12:25:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Use assert_raise instead of assert_raises https://github.com/rubygems/rubygems/commit/769e87f011 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 2c0072dec58cb5f99a072a3b2dd341974ec84887 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-05-27 12:00:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Use dummy assertion for assert_https https://github.com/rubygems/rubygems/commit/64d843fe17 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit a1c416460b2cda7df6810ef8e9619d1903242de4 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-05-25 22:11:47 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Use capture_output instead of assert_silent https://github.com/rubygems/rubygems/commit/3225aab7f8 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 958f9d425a67678bfb1d20c11e0abf8f2d8d2144 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-05-25 21:58:27 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Use capture_output instead of capture_io for test-unit https://github.com/rubygems/rubygems/commit/ab9c80d4cb Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 3948be350312b908ea3ecf32ecf1adf420fe74ca Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-05-25 21:05:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Use assert_path_exist and assert_path_not_exist instead of assert_path_exists and refute_path_exists https://github.com/rubygems/rubygems/commit/a7c93558c3 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 81d793a9216303f70143b13a88c924c22ce4af6d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-03-18 17:56:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Extract assert_output to assert_empty and assert_equal with capture_output https://github.com/rubygems/rubygems/commit/f6759440a4 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 183174475c9cd51148f72668605390912339bcef Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-02-19 15:10:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Use Regexp with refute_match https://github.com/rubygems/rubygems/commit/51fdbe53bc Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 3c9633acfc5be293d27829c5a1f24a5efa2a5169 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-02-19 15:00:24 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Also use capture_output instead of capture_io https://github.com/rubygems/rubygems/commit/229858ea56 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 26cbda8dc903d5d663f6c759be073df3346c6874 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2019-06-29 20:16:49 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Use capture_output instead of capture_io. https://github.com/rubygems/rubygems/commit/ad9206d4d0 Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit cddeee21e992f1659ff9cb24d99e154aaba9daad Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2019-06-29 20:16:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-12 17:24:43 +0900 [rubygems/rubygems] Use test-unit instead of minitest https://github.com/rubygems/rubygems/commit/a8571524ad Notes: Merged: https://github.com/ruby/ruby/pull/4491 commit 5a6af44e204ed03616c0b0f43a7aeeeb79f4d0ce Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-05-12 12:57:53 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-05-12 12:57:53 +0900 skip test for debug. test_memsize_of_iseq fails on repeat tests and it seems to difficult to solve immediately. Now this test is skipped. It seems that the result of `memsize_of(Object.new)` are increased. Why...? commit 3df7c967bb5fca8767f384374710b1a1529ee37a Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-05-12 12:53:14 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-05-12 12:53:14 +0900 suppress warnings on repeat tests. Constant definitions are affect on outer namespace of an anonymous module. To define constants on the anonymous module, this patch uses Module#class_eval(str). commit 6911b4bc82889860ff7da4ecf975504cdc3e5314 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-10 10:02:12 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-05-12 10:30:46 +0900 test_cdhash: refactor change class It is now strange to test Complex in a class named Rational_Test. Notes: Merged: https://github.com/ruby/ruby/pull/4469 commit 0ab0b86c8491d639b9ff1335ddf35e341ecd867e Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-10 09:59:10 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-05-12 10:30:46 +0900 cdhash_cmp: should use || cf: https://github.com/ruby/ruby/pull/4469#discussion_r628386707 commit e1eff837cf12a8e813de9d4ff2db50c9b68b86b5 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-07 13:31:15 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-05-12 10:30:46 +0900 cdhash_cmp: recursively apply For instance a rational's numerator can be a bignum. Comparison using C's == can be insufficient. Notes: Merged: https://github.com/ruby/ruby/pull/4469 commit cc0dc67bbbe1951ff90004bc987f78545625d772 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-07 12:49:32 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-05-12 10:30:46 +0900 cdhash_cmp: can also take complex There are complex literals `123i`, which can also be a case condition. Notes: Merged: https://github.com/ruby/ruby/pull/4469 commit d0e6c6e682b9ba2b0309a5177933a0628e8ef316 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-07 11:07:11 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-05-12 10:30:46 +0900 cdhash_cmp: rational literals with fractions Nobu kindly pointed out that rational literals can have fractions. Notes: Merged: https://github.com/ruby/ruby/pull/4469 commit 2bc293e899c9d32dcd794a73de8925c49ecf8f15 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-07 10:04:08 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-05-12 10:30:46 +0900 cdhash_cmp: can take rational literals Rational literals are those integers suffixed with `r`. They tend to be a part of more complex expressions like `123/456r`, but in theory they can live alone. When such "bare" rational literals are passed to case-when branch, we have to take care of them. Fixes [Bug #17854] Notes: Merged: https://github.com/ruby/ruby/pull/4469 commit 773c690f2553db31a9cc83a037f5449e0c1ea456 Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-05-11 09:45:48 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-05-12 09:20:41 +0900 [ruby/net-ftp] Bump version to 0.1.2 https://github.com/ruby/net-ftp/commit/895ba44b3c commit ee1725cecb1c87ec10a8962ef8317610c5f989e4 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-12 07:45:52 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-05-12 07:45:52 +0900 Update keyword argument description in method syntax guide Remove discussion of Ruby 2.7 specific handling of keyword argument separation. Add a small example of keyword to positional hash conversion for methods not accepting keyword arguments. commit cc1ea6e0238a36c08a6255a6ac7a68c54ccafa4a Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-12 07:18:44 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-12 07:18:44 +0900 Run nmake check on Actions (#4487) * Run nmake check on Actions * Skip tests not working in mswin GitHub Actions * Override TEMP * Revert "Skip tests not working in mswin GitHub Actions" This reverts commit 544d2575fcdf23ae63cd25aa03fce10c28b259f2. * Revert "Revert "Skip tests not working in mswin GitHub Actions"" This reverts commit e1f8ad7862c9c4be52dc6e1031a004621eb07e6e. * Fix timeouts * Skip some more broken tests * Update windows.yml * Add a guard for rbasic_spec * Revert "Update windows.yml" This reverts commit bc9694b6b3b9594d406378d15ca11723fb052bc8. * Skip the ensure clause * Simplify the ensure Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 07f055bb132f21fd71af2720382ad8d2e8f69e47 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-05-12 05:30:40 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-05-12 05:31:00 +0900 Revert "Filling cache values on cvar write" This reverts commit 08de37f9fa3469365e6b5c964689ae2bae0eb9f3. This reverts commit e8ae922b62adb00a80d3d4c49f7d7b0e6026eaba. commit 08de37f9fa3469365e6b5c964689ae2bae0eb9f3 Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-04-24 02:59:16 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-05-12 04:04:27 +0900 Filling cache values on cvar write Instead of on read. Once it's in the inline cache we never have to make one again. We want to eventually put the value into the cache, and the best opportunity to do that is when you write the value. Notes: Merged: https://github.com/ruby/ruby/pull/4340 commit e8ae922b62adb00a80d3d4c49f7d7b0e6026eaba Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-01-08 03:28:04 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-05-12 04:04:27 +0900 Add a cache for class variables This change implements a cache for class variables. Previously there was no cache for cvars. Cvar access is slow due to needing to travel all the way up th ancestor tree before returning the cvar value. The deeper the ancestor tree the slower cvar access will be. The benefits of the cache are more visible with a higher number of included modules due to the way Ruby looks up class variables. The benchmark here includes 26 modules and shows with the cache, this branch is 6.5x faster when accessing class variables. ``` compare-ruby: ruby 3.1.0dev (2021-03-15T06:22:34Z master 9e5105ca45) [x86_64-darwin19] built-ruby: ruby 3.1.0dev (2021-03-15T12:12:44Z add-cache-for-clas.. c6be0093ae) [x86_64-darwin19] | |compare-ruby|built-ruby| |:--------|-----------:|---------:| |vm_cvar | 5.681M| 36.980M| | | -| 6.51x| ``` Benchmark.ips calling `ActiveRecord::Base.logger` from within a Rails application. ActiveRecord::Base.logger has 71 ancestors. The more ancestors a tree has, the more clear the speed increase. IE if Base had only one ancestor we'd see no improvement. This benchmark is run on a vanilla Rails application. Benchmark code: ```ruby require "benchmark/ips" require_relative "config/environment" Benchmark.ips do |x| x.report "logger" do ActiveRecord::Base.logger end end ``` Ruby 3.0 master / Rails 6.1: ``` Warming up -------------------------------------- logger 155.251k i/100ms Calculating ------------------------------------- ``` Ruby 3.0 with cvar cache / Rails 6.1: ``` Warming up -------------------------------------- logger 1.546M i/100ms Calculating ------------------------------------- logger 14.857M (± 4.8%) i/s - 74.198M in 5.006202s ``` Lastly we ran a benchmark to demonstrate the difference between master and our cache when the number of modules increases. This benchmark measures 1 ancestor, 30 ancestors, and 100 ancestors. Ruby 3.0 master: ``` Warming up -------------------------------------- 1 module 1.231M i/100ms 30 modules 432.020k i/100ms 100 modules 145.399k i/100ms Calculating ------------------------------------- 1 module 12.210M (± 2.1%) i/s - 61.553M in 5.043400s 30 modules 4.354M (± 2.7%) i/s - 22.033M in 5.063839s 100 modules 1.434M (± 2.9%) i/s - 7.270M in 5.072531s Comparison: 1 module: 12209958.3 i/s 30 modules: 4354217.8 i/s - 2.80x (± 0.00) slower 100 modules: 1434447.3 i/s - 8.51x (± 0.00) slower ``` Ruby 3.0 with cvar cache: ``` Warming up -------------------------------------- 1 module 1.641M i/100ms 30 modules 1.655M i/100ms 100 modules 1.620M i/100ms Calculating ------------------------------------- 1 module 16.279M (± 3.8%) i/s - 82.038M in 5.046923s 30 modules 15.891M (± 3.9%) i/s - 79.459M in 5.007958s 100 modules 16.087M (± 3.6%) i/s - 81.005M in 5.041931s Comparison: 1 module: 16279458.0 i/s 100 modules: 16087484.6 i/s - same-ish: difference falls within error 30 modules: 15891406.2 i/s - same-ish: difference falls within error ``` Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4340 commit c9e02d8919852d4daa4bb063f70c2d9fa7554b37 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-12 01:05:27 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-12 01:05:27 +0900 * 2021-05-12 [ci skip] commit 39a2ba5cc559900c30c3143da32446c2f20a7484 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-05-12 01:05:06 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-12 01:05:06 +0900 Method cache: fix refinement entry handling To invalidate some callable method entries, we replace the entry in the class. Most types of method entries are on the method table of the origin class, but refinement entries without an orig_me are housed in the method table of the class itself. They are there because refinements take priority over prepended methods. By unconditionally inserting a copy of the refinement entry into the origin class, clearing the method cache created situations where there are refinement entry duplicates in the lookup chain, leading to infinite loops and other problems. Update the replacement logic to use the right class that houses the method entry. Also, be more selective about cache invalidation when moving refinement entries for prepend. This avoids calling clear_method_cache_by_id_in_class() before refinement entries are in the place it expects. [Bug #17806] Notes: Merged: https://github.com/ruby/ruby/pull/4386 Merged-By: XrXr commit 010bb0883e67f9f4c8e609266e22c0a12163549a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 20:08:03 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-11 20:08:03 +0900 Workaround for make test-tool commit bb8a759f6b0156cb4752cf8cc0ca506b3e8dccec Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-11 19:46:15 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-11 19:46:15 +0900 Fix a typo of c6a11b865e1f9085c88fe169a1f47680383580c2 It failed to define `refute_path_not_exist` commit 1b61cdd5e0997b18ac63cbb21911d0e286df26d3 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-11 19:37:31 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-11 19:38:06 +0900 test/irb/test_raise_no_backtrace_exception.rb: Set LC_MESSAGES as UTF-8 commit c6a11b865e1f9085c88fe169a1f47680383580c2 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-11 19:32:03 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-11 19:32:35 +0900 Alias assert/refute_path_exists for test-unit gem. It's required at https://github.com/rubygems/rubygems/pull/3141 commit c45f7556b5555114cdaabaa852abb836878c8c6c Author: Koichi ITO <koic.ito@gmail.com> AuthorDate: 2021-05-11 09:44:28 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-11 16:17:17 +0900 [ruby/irb] Fix `Encoding::ConverterNotFoundError` Follow https://github.com/ruby/irb/pull/237. This PR fixes the following `Encoding::ConverterNotFoundError`. ```console % bin/spring stop && bin/rails c Spring stopped. Running via Spring preloader in process 58395 Loading development environment (Rails 6.0.3.7) irb(main):001:0> "こんにちは".do_something Traceback (most recent call last): (snip) 12: from /Users/koic/src/github.com/ruby/irb/lib/irb.rb:547:in `eval_input' 11: from /Users/koic/src/github.com/ruby/irb/lib/irb/ruby-lex.rb:232:in `each_top_level_statement' 10: from /Users/koic/src/github.com/ruby/irb/lib/irb/ruby-lex.rb:232:in `catch' 9: from /Users/koic/src/github.com/ruby/irb/lib/irb/ruby-lex.rb:233:in `block in each_top_level_statement' 8: from /Users/koic/src/github.com/ruby/irb/lib/irb/ruby-lex.rb:233:in `loop' 7: from /Users/koic/src/github.com/ruby/irb/lib/irb/ruby-lex.rb:251:in `block (2 levels) in each_top_level_statement' 6: from /Users/koic/src/github.com/ruby/irb/lib/irb.rb:548:in `block in eval_input' 5: from /Users/koic/src/github.com/ruby/irb/lib/irb.rb:758:in `signal_status' 4: from /Users/koic/src/github.com/ruby/irb/lib/irb.rb:586:in `block (2 levels) in eval_input' 3: from /Users/koic/src/github.com/ruby/irb/lib/irb.rb:650:in `handle_exception' 2: from /Users/koic/src/github.com/ruby/irb/lib/irb.rb:601:in `encode_with_invalid_byte_sequence' 1: from /Users/koic/src/github.com/ruby/irb/lib/irb.rb:601:in `new' /Users/koic/src/github.com/ruby/irb/lib/irb.rb:601:in `initialize': code converter not found (UTF-8 to UTF-8) (Encoding::ConverterNotFoundError) ``` First, this patch skips `Encoding::Converter.new` for the same encoding. https://github.com/ruby/irb/blob/170531df19bce289444afe97360480efed5f27f0/lib/irb.rb#L601 Next, this is a talk about the condition for skipping. `IRB.conf[:LC_MESSAGES].encoding` becomes `"UTF-8"` string when `Reline.encoding_system_needs.name` is set in the below. https://github.com/ruby/irb/blob/170531df19bce289444afe97360480efed5f27f0/lib/irb/input-method.rb#L269 OTOH, `message.encoding` is `Encoding::UTF_8`, so these are compared as a string by this patch. https://github.com/ruby/irb/commit/6df6e76cfc commit 66ca6ede16b675d1d61ff099966235db9d26fd85 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-11 14:45:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-11 14:46:33 +0900 [ruby/irb] Skip test_raise_exception_with_invalid_byte_sequence on Windows for now. It seems like we haven't figured this out yet. https://github.com/ruby/irb/commit/ecf5a1ace1 commit afa70d079f0eebc25fc10afe0ce69dd01bb9132b Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-11 13:41:36 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-05-11 13:41:36 +0900 Explicitly specify encoding for another test as well Same as e2ccc3301e2c69533b9ef2464613781c6c964c3a https://ci.appveyor.com/project/ruby/ruby/builds/39102539/job/k8m1yrrjesxbgvtq commit 7c346e107283a1f6c74ec159f86bc78c20c0ade5 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-11 13:32:55 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-05-11 13:33:56 +0900 Split a Choco-Install command In https://github.com/ruby/ruby/runs/2552065052, while it failed to install winflexbison3, it exited the retry loop because openssl was installed successfully. https://github.com/actions/virtual-environments/blob/a5ee51f72dcbc3879a91a74c63f95737e2d4a292/images/win/scripts/ImageHelpers/ChocoHelpers.ps1 commit e2ccc3301e2c69533b9ef2464613781c6c964c3a Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-11 13:30:28 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-11 13:30:28 +0900 test/irb/test_raise_no_backtrace_exception.rb: UTF-8 is expected ... for the output of assert_in_out_err. This will fix the following failure on many CI machines http://rubyci.s3.amazonaws.com/arch/ruby-master/log/20210511T030005Z.fail.html.gz ``` 1) Failure: TestIRB::TestRaiseNoBacktraceException#test_raise_exception_with_different_encoding_containing_invalid_byte_sequence [/home/chkbuild/chkbuild/tmp/build/20210511T030005Z/ruby/test/irb/test_raise_no_backtrace_exception.rb:41]: pid 221531 exit 0. 1. [1/2] Assertion for "stdout" | invalid byte sequence in US-ASCII. ``` commit 3c9e30aef800c8cf84bb2ac85b430fa108ce25c2 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-11 13:17:33 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-05-11 13:17:36 +0900 Try running Choco-Install with powershell https://github.com/ruby/ruby/runs/2552047430 commit 4ee72f4afd879f9197b3fabb9a875afb02a61150 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-11 13:13:06 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-05-11 13:14:00 +0900 Retry choco install by using a wrapper provided by GitHub Actions https://github.com/actions/virtual-environments/pull/721 to address failures like https://github.com/ruby/ruby/runs/2551980671 commit bb54361057c169e1209d771c189ec662fa4e7395 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-11 13:00:54 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-11 13:01:38 +0900 [ruby/irb] Skip the new IRB test on Windows for now It's not passing from the beginning https://github.com/ruby/ruby/runs/2550929220 https://ci.appveyor.com/project/ruby/ruby/builds/39100747 https://github.com/ruby/irb/commit/71fc180018 commit 9edc162583a4f685332239f6249745ad9b518cbe Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-03-26 18:16:07 +0900 Commit: Tanaka Akira <akr@fsij.org> CommitDate: 2021-05-11 12:37:34 +0900 [ruby/resolv] Fix confusion of received response message This is a follow up for commit 33fb966197f1 ("Remove sender/message_id pair after response received in resolv", 2020-09-11). As the @senders instance variable is also used for tracking transaction ID allocation, simply removing an entry without releasing the ID would eventually deplete the ID space and cause Resolv::DNS.allocate_request_id to hang. It seems the intention of the code was to check that the received DNS message is actually the response for the question made within the method earlier. Let's have it actually do so. [Bug #12838] https://bugs.ruby-lang.org/issues/12838 [Bug #17748] https://bugs.ruby-lang.org/issues/17748 https://github.com/ruby/resolv/commit/53ca9c9209 commit 5b0abba9317f206913cf2e599d0dac7e9dbd0baa Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-04-21 20:54:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-11 11:29:41 +0900 Sync bundler & rubygems Notes: Merged: https://github.com/ruby/ruby/pull/4367 commit 15160e9b4feba5d531601a4f626b3132d4749629 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-05-10 18:58:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-11 11:29:41 +0900 Sync bundler & rubygems at the same time Notes: Merged: https://github.com/ruby/ruby/pull/4367 commit 7dccc4ef8aeb7b07280ba92ba34ef04bfbf7148d Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-04-21 20:53:07 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-11 11:29:41 +0900 Properly synchronize bundler gemspec too By making the necessary modifications automatically. Notes: Merged: https://github.com/ruby/ruby/pull/4367 commit cc4d8d037cd49ff338cc32969295c32ce188e384 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-04-08 17:40:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-11 11:29:41 +0900 Simplify syncing bundler These files no longer exist upstream, so they don't need to be synced. Notes: Merged: https://github.com/ruby/ruby/pull/4367 commit 774cc32b4d4962ef685fb852a2dbf1897f64a8f7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-05-09 12:12:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-11 09:32:08 +0900 [ruby/irb] Treat encodings in exception correctly https://github.com/ruby/irb/commit/4452adbe04 commit 4785d6087aa77a0ee28881ff9fb0737e8d5a97c5 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-10 12:15:41 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-05-11 09:07:33 +0900 .github/compilers/workflows.yml: support GCC-11 GCC 11.1 was released. https://gcc.gnu.org/pipermail/gcc/2021-April/235922.html See also https://github.com/ruby/ruby-ci-image/pull/1 Notes: Merged: https://github.com/ruby/ruby/pull/4484 commit d6d38d9099b1780febf5cbe50431421e84162536 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-11 04:00:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-11 04:00:55 +0900 * 2021-05-11 [ci skip] commit d2d443efc100fb4e981e9c7caa0f56f0cc368d7b Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-05-11 04:00:36 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-11 04:00:36 +0900 Enhanced RDoc for Enumerable (#4479) Methods treated: #count #find #find_index #select #filter_map #reject #map #flat_map Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 73136ebbde4faee648420e13a7edf7cfd092a6ea Author: Ryuta Kamizono <kamipo@gmail.com> AuthorDate: 2021-04-26 02:25:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 19:19:35 +0900 [ruby/psych] Fix some typos [ci skip] https://github.com/ruby/psych/commit/98617e55a1 commit b7250026dd03de457cf7d36b6918e540ca2ca1c8 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-25 02:29:49 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 19:19:35 +0900 [ruby/psych] bump version https://github.com/ruby/psych/commit/091cd46b1f commit 954970162c4b912dde9d0cca68f10e2ff0b12936 Author: Tim Gates <tim.gates@iress.com> AuthorDate: 2020-12-18 21:08:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 19:19:35 +0900 [ruby/psych] docs: fix simple typo, expessed -> expressed There is a small typo in ext/psych/yaml/yaml.h. Should read `expressed` rather than `expessed`. https://github.com/ruby/psych/commit/1150d669cb commit 1563de599780da71a744ba504f4dea6ac0bda192 Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-02-24 07:18:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 19:19:35 +0900 [ruby/psych] Update to latest SnakeYAML Fixes jruby/jruby#6365 https://github.com/ruby/psych/commit/a88ff77f02 commit c110ade0d235391c2fbfe9291250f744b735a1a8 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-02-12 02:30:58 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 19:17:32 +0900 [ruby/psych] Fix custom marshalization with symbolize_names: true https://github.com/ruby/psych/commit/ee26f26ab5 commit 155cd7fd2a4d5d3a732f73d42385048e16dfbc23 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-01-30 21:43:50 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 19:17:32 +0900 [ruby/psych] Cache dispatch cache in an instance variable https://github.com/ruby/psych/commit/285c461cd2 commit 3ab41acd3617319588a0010657d0adf1caf74d24 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-01-30 21:41:12 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 19:17:32 +0900 [ruby/psych] Cache access to Psych.load_tags in Visitor::ToRuby https://github.com/ruby/psych/commit/58223f0426 commit ab785b28e2f3cc879906aeaee0358c0de478499e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-10 19:09:17 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 19:09:43 +0900 [ruby/psych] Use assert_raise instead of assert_raises https://github.com/ruby/psych/commit/e6ad12b4e1 commit bae9a21e40a65c0eaacebfd4b3c3a8de08892c74 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-10 17:54:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 18:53:56 +0900 [ruby/psych] Use pend instead of skip https://github.com/ruby/psych/commit/efd2a62c9a commit 53c5a4bbe1851dba0dfcaf81c167290cbca93bac Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-10 17:46:58 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 18:53:49 +0900 [ruby/psych] Fixed test-case for NaN https://github.com/ruby/psych/commit/f85a008263 commit 230d559f6b4e681fab8a540fb49c136100f54b2a Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-10 17:38:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 18:53:41 +0900 [ruby/psych] Use Ractor constant for ignoreing condition https://github.com/ruby/psych/commit/cc5f957327 commit ce67549c503a5f31505fb292c11e40337dcba336 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-10 17:32:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 18:53:33 +0900 [ruby/psych] Use test-unit instead of minitest https://github.com/ruby/psych/commit/01e7310dd3 commit ce5779d8cc30f28031c8d0f42836f8afae75c40b Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-22 21:08:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 16:08:30 +0900 [ruby/set] set is also dual licenses https://github.com/ruby/set/commit/fc24457e53 commit 94d858f81a6c8e23e720b01fb7e24614f9a4d3df Author: Andrei Beliankou <arbox@yandex.ru> AuthorDate: 2021-04-14 03:03:00 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 16:08:29 +0900 Add a space to separate sentences in the error message commit 61e44995457837d30ccc3e2ae0c18aa1cdaf0c89 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-20 05:54:14 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 16:08:29 +0900 [ruby/set] Adding section: What's Here https://github.com/ruby/set/commit/257dc452a7 commit 0a7454794270e96b30d9308f05615939bd3afffa Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-20 03:39:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 16:08:29 +0900 [ruby/set] Adding section: What's Here https://github.com/ruby/set/commit/8f4c62768d commit b8506eb4761953b9f7384aa6dff10e172a7e6a55 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-20 01:16:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 16:08:29 +0900 [ruby/set] Adding section: What's Here https://github.com/ruby/set/commit/254d927c8c commit adc86f7a58fbbd17684bc5f3dea96b298cce77cd Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-15 01:57:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-10 16:08:29 +0900 [ruby/set] Adding section: What's Here https://github.com/ruby/set/commit/ab81354de1 commit 2d670274481647bf3bc9c82a9472bc8500a97a45 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-01 22:07:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-10 15:59:23 +0900 Removed missing/dup2.c This function should be always available, as POSIX-compliant or Windows platform are required since 1.9. Also the code in this file is MT-unsafe. Notes: Merged: https://github.com/ruby/ruby/pull/4483 commit 1d0e670e91a379bb276815014e9879a9aa9b6551 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-10 10:14:10 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-10 10:17:06 +0900 LEGAL: Remove entries that no longer exist lib/bundler.gemspec and man/bundle-*,gemfile.* are now under the directory lib/bundler/. commit 23f935127bccf8bfb7e32e57f7f77a22555821db Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-10 11:18:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-10 11:18:36 +0900 * 2021-05-10 [ci skip] commit 043ac94db663fc4fc33027bc2632e5402f8018c3 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-05-07 15:49:13 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-05-10 11:18:14 +0900 rb_fiber_new_kw: doesn't exist Not against having such thing but currently we lack one. commit 406ae7fb03640e11e200382ef61cd450b952b7aa Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-04-29 05:35:22 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-05-09 06:45:30 +0900 Fix Math.cbrt(0.0) on glibc This should return 0, but on glibc it returned NaN. Fixes [Bug #17804] Notes: Merged: https://github.com/ruby/ruby/pull/4425 commit b7fec2e3e52e29329c0b1539d30ae0951ad6a891 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-09 04:50:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-09 04:50:35 +0900 * 2021-05-09 [ci skip] commit 43380401facc3a7b739609c15cc94a2305bfff9e Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-05-09 04:50:15 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-09 04:50:15 +0900 Enhanced RDoc for Enumerable (#4473) Enhanced RDoc for Enumerable: #grep and #grep_v. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit e3e55967826668dcf6f04c550cab5ef8df71fdb7 Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-05-08 17:04:30 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-05-08 22:41:08 +0900 Fix example code in Array#max doc `[0, 1, 2, 3].max(6)` actually returns `[3, 2, 1, 0]`, but the doc said it returns `[3, 2, 1]`. Notes: Merged: https://github.com/ruby/ruby/pull/4475 commit c7601fb9ed41a6d63829b1f8b637f319e3bea462 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-08 15:22:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-08 15:29:36 +0900 [ruby/irb] Deal with different screen sizes https://github.com/ruby/irb/commit/7118b3322f commit de96ae9b717b51f8914f6f6916c3df0295364762 Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-05-02 17:50:46 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-08 14:00:40 +0900 [ruby/irb] Dump ancestors' methods by ls command https://github.com/ruby/irb/commit/73edff287c commit 30d2d72663adfbce80ee122a2f6763eff6a7674e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-08 11:40:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-08 11:40:20 +0900 Shrink timev.rb iseq size commit 86b4c2fc3fb0ec815e212628f6708c5b777f523e Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-05-08 05:14:08 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-08 05:14:08 +0900 What's Here for class Dir (#4472) What's Here for class Dir Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 111bfc934ccaea1bbfbefc3d798f9f545a4dc8ec Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-08 01:22:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-08 01:22:52 +0900 * 2021-05-08 [ci skip] commit 4337da377e5d2fcebf0da9600f6e09727ea9a624 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-05-08 01:22:32 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-08 01:22:32 +0900 What's Here for class File (#4460) What's Here for class File Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 40612d55c628cb80dc7cb2b98bad8d8cde9c1f75 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-07 18:41:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-07 20:15:05 +0900 Fixed shorten-64-to-32 errors when USE_COMBINATION_EXPLOSION_CHECK commit ff69ef27b06eed1ba750e7d9cab8322f351ed245 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-30 18:54:46 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-07 17:02:15 +0900 compile.c: Pass node instead of nd_line(node) to ADD_INSN* functions ... then, new_insn_core extracts nd_line(node). Also, if a macro "EXPERIMENTAL_ISEQ_NODE_ID" is defined, this changeset keeps nd_node_id(node) for each instruction. This is intended for TypeProf to identify what AST::Node corresponds to each instruction. This patch is originally authored by @yui-knk for showing which column a NoMethodError occurred. https://github.com/ruby/ruby/compare/master...yui-knk:feature/node_id Co-Authored-By: Yuichiro Kaneko <yui-knk@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4470 commit 578e6416e71bcd5401bba63e9f3ef25a28258d9a Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-05-07 00:51:47 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-07 01:54:43 +0900 lldb: convert heap_page_obj_limit from a float to int Notes: Merged: https://github.com/ruby/ruby/pull/4467 commit 550b02e4790c406450008e3bbbf28d8982cc0908 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-07 00:13:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-07 00:13:45 +0900 * 2021-05-07 [ci skip] commit 0bbab1e5151c3396ebe544d09cad997cd9cb5e3b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-07 00:04:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-07 00:04:36 +0900 Protoized old pre-ANSI K&R style declarations and definitions commit 99644514db3768e4fd47d6ff9111091ab1a5a6d2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-06 23:53:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-06 23:53:26 +0900 Conditionally used functions commit b0b7751f3b94e7983d124e43102f76ff598caabd Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-04-28 22:56:02 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-06 22:18:17 +0900 lldb: teach rp about T_PAYLOAD Notes: Merged: https://github.com/ruby/ruby/pull/4391 commit d1bd4e233cd4c06734173d532eb2215140b26357 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-03-30 21:36:58 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-06 22:18:17 +0900 Store rb_classext_t next to RClass slots on the heap Notes: Merged: https://github.com/ruby/ruby/pull/4391 commit 8bbd3198068f5e8335ab01f0b29cdae225b25b5b Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-03-30 21:34:14 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-06 22:18:17 +0900 Allow newobj_of0 and newobj_slowpath to allocate into multiple heap slots Notes: Merged: https://github.com/ruby/ruby/pull/4391 commit ddc29e29890f7f1b29effb84929e6856e45632ee Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-06 22:04:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-06 22:04:14 +0900 net-http no longer requires stringio commit f2d6fa16e116cbb624ccc8df4cbc57422e236d46 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-06 17:19:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 19:02:10 +0900 Use assert_ractor for separating test processes Notes: Merged: https://github.com/ruby/ruby/pull/4464 commit 120b835fae2832ded4a02d3fcfc70749cad9d177 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-04 00:38:54 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 16:51:10 +0900 [ruby/timeout] Only run timeout_after hook on fiber scheduler if scheduler exists https://github.com/ruby/timeout/commit/4893cde0ed commit 44e8575ca6e7749b296366f8e7d8094e4cfd2196 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-04 00:31:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 16:50:31 +0900 [ruby/timeout] Avoid unnecessary object allocation Idea from nobu. https://github.com/ruby/timeout/commit/aecdaa23b3 commit 33b5e179a88e67f1ee12e2e8993121b2f445b54f Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-04-21 02:34:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 16:49:26 +0900 [ruby/timeout] Make Timeout::Error#exception with multiple arguments not ignore arguments This makes: raise(Timeout::Error.new("hello"), "world") raise a TimeoutError instance with "world" as the message instead of "hello", for consistency with other Ruby exception classes. This required some internal changes to keep the tests passing. Fixes [Bug #17812] https://github.com/ruby/timeout/commit/952154dbf9 commit a42b7de436cfceb0d6607651a3a7bf4fbd887416 Author: Gannon McGibbon <gannon.mcgibbon@gmail.com> AuthorDate: 2021-01-21 10:39:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 16:21:14 +0900 [ruby/strscan] Replace "iff" with "if and only if" (#18) iff means if and only if, but readers without that knowledge might assume this to be a spelling mistake. To me, this seems like exclusionary language that is unnecessary. Simply using "if and only if" instead should suffice. https://github.com/ruby/strscan/commit/066451c11e commit 564ccd095a9d7fbe869031dbf666d61dadfdcb03 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-31 14:56:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 16:20:38 +0900 [ruby/strscan] Fix segmentation fault of `StringScanner#charpos` when `String#byteslice` returns non string value [Bug #17756] (#20) https://github.com/ruby/strscan/commit/92961cde2b commit 822eb945635974ba904393cd130071d34e4bdc12 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-14 12:15:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 16:18:58 +0900 Import from https://github.com/ruby/strscan/pull/19 * Use Gemfile instead of Gem::Specification#add_development_dependency. * Use pend instead of skip for test-unit. commit 364044e0909692315bd6c2f0e1d968ede9c2beb8 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-04-29 21:35:57 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:58:41 +0900 [ruby/net-http] Do not require stringio It is not used in net/http library code since commit 15ccd0118c13 (r36473 in ruby svn trunk, 2012). require's in test suite are also cleaned up. https://github.com/ruby/net-http/commit/996d18a43f commit 965719f5eb0e6dbb05a13cfe824fe82f9268e4d5 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-06 15:24:49 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:24:49 +0900 Fixed the file path for net-imap.gemspec commit 5de6f1ab4751f02670239ebe537e599c477dc4bf Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-05-06 14:16:41 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:20:35 +0900 Move net-imap.gemspec to under the lib/net/imap directory. commit 5a02281fab4f2fc328007bd6238448c73b8d029d Author: nicholas a. evans <nicholas.evans@gmail.com> AuthorDate: 2021-05-06 04:01:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:20:35 +0900 [ruby/net-imap] Many documentation improvements * updated obsoleted RFCs to current versions * linked most references to their RFCs * linked extension commands to their RFCs * removed unidiomatic `()` from instance method links * escaped `IMAP` in a few places * converted all response structs to explicit classes: this makes much nicer rdoc output than listing them all under "constants" * grouped flags constants into their own sections https://github.com/ruby/net-imap/commit/9cd562ac84 commit b0de2e7fe96bb689ac4ab6ccdd04fcf6a3b1d08e Author: nicholas a. evans <nicholas.evans@gmail.com> AuthorDate: 2021-05-06 02:15:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:20:35 +0900 [ruby/net-imap] Move send_*_data into net/imap/command_data Partially implements #10. https://github.com/ruby/net-imap/commit/64d1080d63 commit deae61e939fee9e24bace3ee99334e841f663114 Author: nicholas a. evans <nicholas.evans@gmail.com> AuthorDate: 2021-05-05 04:33:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:20:34 +0900 [ruby/net-imap] Move flags to net/imap/flags Partially implements #10. https://github.com/ruby/net-imap/commit/2a9afa83bf commit 337c0e312bc4e8a13ee90b9d7b102664661cf9a7 Author: nicholas a. evans <nicholas.evans@gmail.com> AuthorDate: 2021-05-05 03:52:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:20:34 +0900 [ruby/net-imap] Move UTF7 & datetime formatting to net/imap/data_encoding Partially implements #10. https://github.com/ruby/net-imap/commit/0d43c5e856 commit 4dc7b82427bafab4878f120931ef5b0988778b75 Author: nicholas a. evans <nicholas.evans@gmail.com> AuthorDate: 2021-05-04 06:18:43 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:20:34 +0900 [ruby/net-imap] move command data formatters to net/imap/command_data Partially implements #10. https://github.com/ruby/net-imap/commit/24e929fdd2 commit affb51045cd38306ece58a6cd29f5b868a97dcfc Author: nicholas a. evans <nicholas.evans@gmail.com> AuthorDate: 2021-05-04 06:13:03 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:20:34 +0900 [ruby/net-imap] move response data structs to net/imap/response_data Partially implements #10. https://github.com/ruby/net-imap/commit/746757b936 commit 395a2877364aff662ef0625039c34d85346bfd8b Author: nicholas a. evans <nicholas.evans@gmail.com> AuthorDate: 2021-05-04 06:07:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:20:34 +0900 [ruby/net-imap] move ResponseParser to lib/net/imap/response_parser Partially implements #10. https://github.com/ruby/net-imap/commit/c2408aac9a commit 2fc91da86c06405f836fb040a340c0f76a27f09f Author: nicholas a. evans <nicholas.evans@gmail.com> AuthorDate: 2021-04-29 06:43:34 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:20:34 +0900 [ruby/net-imap] Clean up authenticators rdoc Added RFC links to all SASL mechanism specifications. https://github.com/ruby/net-imap/commit/53ff4b0c09 commit 912f39b2c34103620c414d11bc4e61ca28018226 Author: nicholas a. evans <nicholas.evans@gmail.com> AuthorDate: 2021-04-28 06:49:22 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:20:34 +0900 [ruby/net-imap] Update AUTH=PLAIN to be a little closer to RFC4616 * Add authzid support * must not contain NULL chars * improve rdoc https://github.com/ruby/net-imap/commit/a587fc71b7 commit 331005812fc288fb27bef542ecfbb2c061d86999 Author: nicholas a. evans <nicholas.evans@gmail.com> AuthorDate: 2021-04-28 05:33:27 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-05-06 15:20:33 +0900 [ruby/net-imap] Move each authenticator to its own file Also updates rdoc with SASL specifications and deprecations. Of these four, only `PLAIN` isn't deprecated! +@@authenticators+ was changed to a class instance var +@authenticators+. No one should have been using the class variable directly, so that should be fine. https://github.com/ruby/net-imap/commit/23f241b081 commit a7f7479872cc70678b5f8374347c509945c04e82 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-05-06 15:13:26 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-05-06 15:13:27 +0900 [ruby/erb] Document that `<% #` doesn't work [Bug #17846] https://github.com/ruby/erb/commit/b58b188028fbb403f75d48d62717373fc0908f7a commit f941dd5a9f80616fc1461625bead4774da8ab9ae Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-06 12:09:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-06 12:10:58 +0900 Reuse sysconf result commit 0dd9ac7721fe2754670b7b30aaed33e95f6ca7d1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-06 11:38:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-06 11:39:58 +0900 Revised PAGE_MAX_SIZE case commit a1fdc5f71cf0ad8254282e34b2a8b7dce11722ba Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-06 11:15:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-06 11:30:37 +0900 Check only whether PAGE_SIZE is compile-time const commit 921d8ac99d264fec26e15b75ea4fbe024aef281b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-06 09:39:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-06 09:39:47 +0900 Get rid of including sys/user.h on macOS LIST_HEAD in ccan/list conflicts with sys/queue.h. ``` ./ccan/list/list.h:75:9: warning: 'LIST_HEAD' macro redefined [-Wmacro-redefined] ^ /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/queue.h:465:9: note: previous definition is here ^ ``` commit b655a3fa5b8d1a30565e19425c28a1cfd8631165 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-05-06 06:06:56 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-06 06:54:26 +0900 Fall back to sysconf to determine page size during runtime On some platforms the PAGE_SIZE macro does not exist so we can fall back to `sysconf` to determine the page size at runtime. Notes: Merged: https://github.com/ruby/ruby/pull/4462 commit 23a98237df28ad01d17b163eb650dfbd321b13ba Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-05-06 01:20:40 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-06 04:31:30 +0900 Fix PAGE_SIZE macro detection in autoconf The current fix for PAGE_SIZE macro detection in autoconf does not work correctly. I see the following output with running configure on Linux: ``` checking PAGE_SIZE is defined... no ``` Linux has PAGE_SIZE macro. This is happening because the macro exists in sys/user.h and not in the malloc headers. Notes: Merged: https://github.com/ruby/ruby/pull/4461 commit 192150051144c0242ee44df26952dfe31b83cac2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-06 00:29:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-06 01:01:48 +0900 PAGE_SIZE is used only when mmap is available commit d2afb03287f0fab26af2f9dd7311f97e7a89ada9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-06 00:03:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-06 00:03:00 +0900 * 2021-05-06 [ci skip] commit 3d5b6ddff8def49e59fb9a9ddd28a653498ae861 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-05 23:54:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-05 23:54:36 +0900 Fix compilation on M1 Mac As PAGE_SIZE may not be a preprocessor constant, dispatch at runtime in that case. commit e71c9ca529f1dce2c3816653cd974ce786eea7d8 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-05 12:58:12 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-05 12:58:12 +0900 configure.ac: check if __builtin_expect is available or not include/ruby/internal/has/builtin.h uses HAVE_BUILTIN___BUILTIN_EXPECT for icc but previously it was not defined. This is a follow up of 8b32de2ec9b72d4c9ede19b70ec9497718fb25a6 and this will fix the following failures: http://rubyci.s3.amazonaws.com/icc-x64/ruby-master/log/20210505T030003Z.fail.html.gz ``` 1) Failure: TestMkmf::TestConvertible#test_typeof_builtin [/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/test/mkmf/test_convertible.rb:9]: convertible_int: checking for convertible type of short... -------------------- short -------------------- convertible_int: checking for convertible type of int... -------------------- int -------------------- convertible_int: checking for convertible type of long... -------------------- long -------------------- convertible_int: checking for convertible type of signed short... -------------------- failed "icc -std=gnu99 -o conftest -I. -I/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/.ext/include/x86_64-linux -I/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/include -I./test -O3 -ggdb -Wall -Wextra -Wdeprecated-declarations -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-unused-parameter -Wunused-variable -diag-disable=175,188,1684,2259,2312 -Wextra-tokens -Wundef conftest.c -L. -L/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby -Wl,-rpath,/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/lib -L/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/lib -lruby-static -lz -lpthread -lrt -lrt -ldl -lcrypt -lm -lm -lc" In file included from /home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/include/ruby/defines.h(72), from /home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/include/ruby/ruby.h(23), from /home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/include/ruby.h(39), from conftest.c(1): /home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/include/ruby/backward/2/assume.h(34): warning #193: zero used for undefined preprocessing identifier "HAVE_BUILTIN___BUILTIN_EXPECT" #if RBIMPL_HAS_BUILTIN(__builtin_expect) ... ``` commit 5bde2e61db8148cd5a7974f640aee38be60bf368 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-05 09:41:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-05 10:10:59 +0900 Workaround for gcc-4 bug False positive `-Wundef` in `#elif` after `#if defined`. Notes: Merged: https://github.com/ruby/ruby/pull/4459 commit 44cff500a0ad565952e84935bc98523c36a91b06 Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-05-05 07:45:23 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-05 09:38:25 +0900 `_MSC_VER` may not be defined Notes: Merged: https://github.com/ruby/ruby/pull/4453 commit 46dd295a53640a5ccf21688a5539ac50e17008f6 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-05-05 08:57:24 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-05 09:38:03 +0900 Fix compilation error in thread_win32.c USE_WIN32_MUTEX flag may not be defined. Notes: Merged: https://github.com/ruby/ruby/pull/4457 commit 3d2e7e2ab5b08625efaa4d1b2b3b127d87e8dad5 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-05-05 06:33:30 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-05 09:38:03 +0900 Fix compilation errors in FreeBSD __FreeBSD_version is defined in sys/param.h. Notes: Merged: https://github.com/ruby/ruby/pull/4457 commit 45bcab3c84c406dc4d0a1e34aa858aa925a71c97 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-05-05 06:31:29 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-05 09:38:03 +0900 Fix compilation error in mingw __LITTLE_ENDIAN is not defined. Notes: Merged: https://github.com/ruby/ruby/pull/4457 commit b57c7be6a98a4739569f5ddc45095c8c59fa7512 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-05-05 06:29:20 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-05 09:38:03 +0900 Fix compilation errors for c99 ENUM_OVER_INT is sometimes not defined. Use #ifdef instead if #if. Notes: Merged: https://github.com/ruby/ruby/pull/4457 commit 370949aad60e992c26037241c07489c056554ea3 Author: MSP-Greg <Greg.mpls@gmail.com> AuthorDate: 2021-05-05 00:31:19 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-05-05 05:49:16 +0900 test/net/ftp/test_ftp.rb - fix intermittent MinGW failure Fixes intermittent error as below: [242/838] 5316=test_ftp #<Thread:0x0000020aa8733f20 D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:2532 run> terminated with exception (report_on_exception is true): D:/a/ruby/ruby/src/tool/lib/minitest/unit.rb:199:in `assert': Expected #<Errno::ECONNRESET: An existing connection was forcibly closed by the remote host.> to be nil. (MiniTest::Assertion) from D:/a/ruby/ruby/src/tool/lib/test/unit/core_assertions.rb:504:in `assert' from D:/a/ruby/ruby/src/tool/lib/minitest/unit.rb:299:in `assert_nil' from D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:430:in `ensure in block in test_list_read_timeout_exceeded' from D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:431:in `block in test_list_read_timeout_exceeded' from D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:2539:in `block in create_ftp_server' D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:426:in `write': An existing connection was forcibly closed by the remote host. (Errno::ECONNRESET) from D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:426:in `print' from D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:426:in `block (2 levels) in test_list_read_timeout_exceeded' from D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:420:in `each' from D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:420:in `each_with_index' from D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:420:in `block in test_list_read_timeout_exceeded' from D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:2539:in `block in create_ftp_server' Notes: Merged: https://github.com/ruby/ruby/pull/4449 commit fd3a20348edfad3903eac6b5d2f1ccd03830429f Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-05-05 03:59:33 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-05-05 03:59:33 +0900 What's Here for class IO (#4440) * What's Here for class IO Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit c809a8cae8c2c8e64fd2d1b0fe8571faf443b8cd Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-05-05 03:10:39 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-05-05 03:23:57 +0900 Fix documentation for IO#unget{byte,c} Fixes [Bug #14400] commit 14c932e52d5591370521177f6ff6ae1ec3cecd3e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-05 00:46:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-05 00:46:40 +0900 * 2021-05-05 [ci skip] commit 3ca291c9ae1b6de09cce76e17aa3f08e92e1a2bf Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-05-04 22:37:02 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-05-05 00:46:23 +0900 Correctly update array capacity after realloc Reallocating to a smaller size in the transient heap may result in no change in the actual capacity but the capacity of the array is still updated to the smaller value. This commit changes `ary_heap_realloc` to return the new capacity which can be used by the caller to correctly update the capacity. Notes: Merged: https://github.com/ruby/ruby/pull/4448 commit d09988502ed75cae65b787865465361b675cf1ee Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-04-29 22:30:31 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-04 21:56:55 +0900 Fix -Wundef warnings for RBIMPL_HAS_BUILTIN * See [Feature #17752] * Defining explicitly to 0 seems the best solution, see https://github.com/ruby/ruby/pull/4428 * For example: ./include/ruby/internal/has/builtin.h:49:33: error: "RBIMPL_HAS_BUILTIN___builtin_assume" is not defined, evaluates to 0 [-Werror=undef] 49 | # define RBIMPL_HAS_BUILTIN(_) (RBIMPL_HAS_BUILTIN_ ## _) | ^~~~~~~~~~~~~~~~~~~ ./include/ruby/internal/assume.h:75:7: note: in expansion of macro ‘RBIMPL_HAS_BUILTIN’ 75 | #elif RBIMPL_HAS_BUILTIN(__builtin_assume) | ^~~~~~~~~~~~~~~~~~ commit f108bc32af99b0802614c680e43013d828a68d29 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-04-29 22:17:49 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-04 21:56:55 +0900 HAVE_* macros should not be defined with value 0 * See [Feature #17752] Notes: Merged: https://github.com/ruby/ruby/pull/4428 commit 0764d323d8908c1682f3ab654c48783438a88a54 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-04-29 22:12:44 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-04 21:56:55 +0900 Fix -Wundef warnings for patterns `#if HAVE` * See [Feature #17752] * Using this to detect them: git grep -P 'if\s+HAVE' | grep -Pv 'HAVE_LONG_LONG|/ChangeLog|HAVE_TYPEOF' Notes: Merged: https://github.com/ruby/ruby/pull/4428 commit fa7a712d460dc904f8a836bb22b54d457d95ba8e Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-04-29 22:03:46 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-04 21:56:55 +0900 Fix -Wundef warnings for HAVE_RB_EXT_RACTOR_SAFE * See [Feature #17752] Notes: Merged: https://github.com/ruby/ruby/pull/4428 commit 59a92a84c8145c3dffd9f2a0e570dbc61211c86c Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-04-29 22:02:19 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-04 21:56:55 +0900 Fix -Wundef warnings in core extensions * See [Feature #17752] Notes: Merged: https://github.com/ruby/ruby/pull/4428 commit f1dcc3da5d89b0a03cbc280e7eafb845d63a1f6a Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-04-29 21:28:08 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-04 21:56:55 +0900 Add RBIMPL_RVALUE_EMBED_LEN_MAX neeeded by internal/bignum.h * It evaluated to 0 before, revealed by -Wundef * See [Feature #17752] Co-authored-by: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4428 commit 68d6bd0873557c12bec6f8e0f8db622f1499d8a7 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-04-29 21:31:05 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-04 21:56:55 +0900 Fix trivial -Wundef warnings * See [Feature #17752] Co-authored-by: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4428 commit 229cbeba8c928dc6ee5eb21951e00c43a6e5225c Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-04-29 21:29:57 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-04 21:56:55 +0900 Fix -Wundef warnings in coroutine/*/Context.h * See [Feature #17752] Co-authored-by: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4428 commit 9e2483ee0b2cee0f8f8cc0b0fdfbe8abef462c00 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-04-29 20:15:19 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-04 21:56:55 +0900 vm_dump.c: rename HAVE_BACKTRACE to USE_BACKTRACE * HAVE_ macros should only be defined or undefined, not used for their value. * See [Feature #17752] Co-authored-by: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4428 commit 8b32de2ec9b72d4c9ede19b70ec9497718fb25a6 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-04-29 21:14:52 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-05-04 21:56:55 +0900 Add -Werror=undef to default warnflags for core * See [Feature #17752] * For external extensions it's transformed to just warn and not error (-Wundef) like other other -Werror in warnflags. Notes: Merged: https://github.com/ruby/ruby/pull/4428 commit 113ddf4d1d112ddd4611df654e6131ef73eeb77b Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-05-04 19:03:26 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-05-04 19:03:26 +0900 test/net/imap/test_imap.rb: wait a moment before socket is closed to try to suppress a failure on Solaris. This is the same as 19504d115dc09558255fcb5213f80dd8454ab189 http://rubyci.s3.amazonaws.com/solaris11-sunc/ruby-master/log/20210504T070007Z.fail.html.gz ``` 1) Error: IMAPTest#test_idle_done_not_during_idle: Errno::EINVAL: Invalid argument - connect(2) for [::1]:33839 /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/.ext/common/socket.rb:1214:in `__connect_nonblock' /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/.ext/common/socket.rb:1214:in `connect_nonblock' /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/.ext/common/socket.rb:56:in `connect_internal' /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/.ext/common/socket.rb:137:in `connect' /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/.ext/common/socket.rb:642:in `block in tcp' /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/.ext/common/socket.rb:227:in `each' /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/.ext/common/socket.rb:227:in `foreach' /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/.ext/common/socket.rb:632:in `tcp' /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/lib/net/imap.rb:1223:in `tcp_socket' /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/lib/net/imap.rb:1180:in `initialize' /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/test/net/imap/test_imap.rb:289:in `new' /export/home/chkbuild/chkbuild-sunc/tmp/build/20210504T070007Z/ruby/test/net/imap/test_imap.rb:289:in `test_idle_done_not_during_idle' ``` commit ef406a6c215d70139364c62a2b4c94dc65e101a4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-04 10:08:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-04 10:08:23 +0900 Suppress maybe-uninitialized warning by mingw gcc 11 commit 7a3dd05e21078ccc62c70a5047fcf6c128754fc7 Author: MSP-Greg <Greg.mpls@gmail.com> AuthorDate: 2021-04-29 02:26:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-04 08:53:58 +0900 spec/ruby/library/net/http/http/fixtures/http_server.rb host naming for Windows Notes: Merged: https://github.com/ruby/ruby/pull/4424 commit 5a42ef496a473da6a380539d3d944880c2410bc3 Author: MSP-Greg <Greg.mpls@gmail.com> AuthorDate: 2021-04-29 00:55:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-04 08:53:58 +0900 Fix test/net/http/test_https.rb host naming for Windows Notes: Merged: https://github.com/ruby/ruby/pull/4424 commit 9a6226c61ea8a8ae7b3516b693a0d6e73526a99f Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-23 09:18:10 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-05-04 06:11:48 +0900 Eagerly allocate instance variable tables along with object This allows us to allocate the right size for the object in advance, meaning that we don't have to pay the cost of ivar table extension later. The idea is that if an object type ever became "extended" at some point, then it is very likely it will become extended again. So we may as well allocate the ivar table up front. Notes: Merged: https://github.com/ruby/ruby/pull/4216 commit a6ff1dc6f98b29661fd1147d84bc3b928bed618f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-04 01:00:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-04 01:00:57 +0900 * 2021-05-04 [ci skip] commit 14ee2635054860e94e402c9f1f5fd536c886b3e2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-05-04 00:59:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-04 00:59:29 +0900 Workaround failures on Windows commit a029644845249198d3cdafad4fe5db1e7fdfd770 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-03 08:17:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-03 08:17:35 +0900 * 2021-05-03 [ci skip] commit 511b2f300f996f4f4ea3420953eb3ded8e575016 Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-05-01 22:26:55 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-05-03 08:17:14 +0900 Get rid of misleading indentation Notes: Merged: https://github.com/ruby/ruby/pull/4443 commit 121fa24a3451b45c41ac0a661b64e9fc8600e589 Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-04-30 21:35:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-05-01 11:04:17 +0900 Adjust struct member offset for i386 Cygwin Fixes [Bug #17606] Notes: Merged: https://github.com/ruby/ruby/pull/4437 commit f64d7674f6c03834754ec92054300eae7bac3015 Author: Adam Daniels <adam@mediadrive.ca> AuthorDate: 2021-03-03 02:33:20 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-05-01 09:13:04 +0900 Fix example for custom warn method Regexp has a match? method. [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4236 commit a867d55279971a45188f1d64c9f94008c450eea0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-05-01 07:46:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-05-01 07:46:35 +0900 * 2021-05-01 [ci skip] commit a9824a3113ee5342e7ac90387de9f3b9d5ec9e0a Author: Nick Kelley <nick@nickkelley.dev> AuthorDate: 2021-05-01 07:12:34 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-05-01 07:46:19 +0900 Correct documentation example on Hash#dig Fixes [Misc #17842]. The current documentation suggests that: {foo: {bar: {baz: 2}}}.dig(:foo, :bar) # => {:bar=>{:baz=>2}} when it should be: {foo: {bar: {baz: 2}}}.dig(:foo, :bar) # => {:baz=>2} Notes: Merged: https://github.com/ruby/ruby/pull/4441 commit 1f255adda93bd7958afc7405026326f630ba4748 Author: xtkoba <69125751+xtkoba@users.noreply.github.com> AuthorDate: 2021-04-30 10:09:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-30 20:56:16 +0900 Silence GCC 11 warnings ``` ../strftime.c: In function 'rb_strftime_with_timespec': ../strftime.c:392:39: warning: comparison is always false due to limited range of data type [-Wtype-limits] 392 | if (vtm->wday < 0 || vtm->wday > 6) | ^ ../strftime.c:403:39: warning: comparison is always false due to limited range of data type [-Wtype-limits] 403 | if (vtm->wday < 0 || vtm->wday > 6) | ^ ``` Notes: Merged: https://github.com/ruby/ruby/pull/4435 commit b2c54f5395ff569e40d36b0f7b344e8323ef83fc Author: ima1zumi <mariimaizumi5@gmail.com> AuthorDate: 2021-04-26 22:47:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-30 20:46:50 +0900 [ruby/irb] Need reline >= 0.1.6 irb 1.3.5 need reline >= 0.1.6 because irb use `Reline::IOGate.in_pasting?`. This method defined after reline 0.1.6. fix https://github.com/ruby/irb/pull/228. https://github.com/ruby/irb/commit/6b7b8fc324 commit 6ee55455a88d0f3542497b429d496abaf01fd353 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-26 05:51:31 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-04-30 11:58:15 +0900 Update Time documentation commit 5a451c4b1f7f7bbd6607cb3f32f3ddd98e064971 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-04-30 01:02:02 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-04-30 04:13:34 +0900 lldb: Warn when attempting to dump invalid pages Notes: Merged: https://github.com/ruby/ruby/pull/4431 commit dfca24af82e7d06adcb57f625573b0e558d9e5dc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-30 01:40:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-30 01:40:10 +0900 * 2021-04-30 [ci skip] commit 19504d115dc09558255fcb5213f80dd8454ab189 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-30 01:36:04 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-30 01:36:04 +0900 test/net/smtp/test_smtp.rb: wait a moment before socket is closed On Solaris, Socket.tcp seems to fail with EINVAL if the server closes the connection immediately after accepted. I think this is a bug of Socket.tcp, but seems difficult to fix soon. http://rubyci.s3.amazonaws.com/solaris11-sunc/ruby-master/log/20210429T100007Z.fail.html.gz ``` 1) Failure: Net::TestSMTP#test_eof_error_backtrace [/export/home/chkbuild/chkbuild-sunc/tmp/build/20210429T100007Z/ruby/test/net/smtp/test_smtp.rb:193]: [ruby-core:78550] [Bug #13018]. [EOFError] exception expected, not #<Net::ReadTimeout: Net::ReadTimeout>. ``` commit b0b5a4e86ef2740c427f9356a4173a1debf4f79c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-29 03:50:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-29 03:50:15 +0900 * 2021-04-29 [ci skip] commit 9f8a50723f8a84b3e4755b418570148f422d1b28 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-04-29 03:49:55 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-04-29 03:49:55 +0900 Specify -c to emit pch with clang (#4423) [Bug #17836] Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 96fd1e1f22ddea943adf5e222beb8a00ae48a70f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-28 18:16:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-28 18:48:08 +0900 Removed unused macro HAVE_CONFIG_H It seems like a vestige of ext/md5. commit 795fb51f80e0cda19d39480bdaa26ecdab3557a9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-28 18:40:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-28 18:48:08 +0900 NDEBUG is ignored since Ruby 3.0 commit f985dafee7548faad2b35efeda5e844a8e13d336 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-28 17:58:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 17:58:12 +0900 Guard for < Ruby 3.0 commit 7f1323c3bd7d957740bbc5d2c7c0e1c9f167e501 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2020-09-03 05:05:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 17:48:05 +0900 [ruby/ostruct] Add compatibility for to_h with block in Ruby 2.5 https://github.com/ruby/ostruct/commit/da45de5068 commit 37b445eaeb9fdb5c717a32253d0d00c50a650b93 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2020-10-01 07:21:27 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 17:33:59 +0900 [ruby/ostruct] Compatibility with Ruby 2.5 https://github.com/ruby/ostruct/commit/ecd9fafdf8 commit 2afbe7113aceb5e3e1c63fe2778c875e975bacf3 Author: Alexander Popov <alex.wayfer@gmail.com> AuthorDate: 2021-03-18 06:24:10 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 11:56:15 +0900 [ruby/optparse] Add EditorConfig file More info here: https://editorconfig.org/ For example, `ruby/ruby` has it: https://github.com/ruby/ruby/blob/05ebaee/.editorconfig Also fix some offenses. https://github.com/ruby/optparse/commit/29402e7e0e commit 908785ef6d4f8503a027f5ba829f8acf394d4eda Author: Ryuta Kamizono <kamipo@gmail.com> AuthorDate: 2021-04-26 03:12:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 11:10:52 +0900 [ruby/net-imap] Fix typo intentionaly -> intentionally [ci skip] https://github.com/ruby/net-imap/commit/4057c662e7 commit 0296a64450019bf0d2c5b342a1d988ca3ace3d66 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2020-10-28 06:48:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 11:03:12 +0900 [ruby/net-http] Initialize OpenSSL early before creating TCPSocket OpenSSL make take some time to initialize, and it would be best to take that time before connecting instead of after. From joshc on Redmine. Fixes Ruby Bug #9459 https://github.com/ruby/net-http/commit/14e09fba24 commit 1229ad0528d28e38f031f1301e1c5331cfd03a90 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-03-19 06:05:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 11:01:41 +0900 [ruby/net-http] Fix the regexp used to clean the host Introduced in https://github.com/ruby/ruby/commit/c1652035644 `/s` marks the regexp as encoded with Windows-31J which makes little sense. Nurse thinks the intent was to use `/m` for a multi-line regexp. https://github.com/ruby/net-http/commit/6c15342cdf commit 842f00f45212019a3b07f8d8dac269d35beb9efa Author: Lukas Eipert <leipert@gitlab.com> AuthorDate: 2020-12-31 05:24:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 11:01:23 +0900 [ruby/net-http] Decode user and password from env configured proxy If someone sets an env variable defining a http_proxy, containing a username / password with percent-encoded characters, then the resulting base64 encoded auth header will be wrong. For example, suppose a username is `Y\X` and the password is `R%S] ?X`. Properly URL encoded the proxy url would be: http://Y%5CX:R%25S%5D%20%3FX@proxy.example:8000 The resulting proxy auth header should be: `WVxYOlIlU10gP1g=`, but the getters defined by ruby StdLib `URI` return a username `Y%5CX` and password `R%25S%5D%20%3FX`, resulting in `WSU1Q1g6UiUyNVMlNUQlMjAlM0ZY`. As a result the proxy will deny the request. Please note that this is my first contribution to the ruby ecosystem, to standard lib especially and I am not a ruby developer. References: - https://gitlab.com/gitlab-org/gitlab/-/issues/289836 - https://bugs.ruby-lang.org/projects/ruby-master/repository/trunk/revisions/58461 - https://bugs.ruby-lang.org/issues/17542 https://github.com/ruby/net-http/commit/e57d4f38aa commit 8a2b7b79ee8a1ba487c0b5064c0730b98f5ba438 Author: mohamed <mohamed.m.m.hafez@gmail.com> AuthorDate: 2021-01-14 07:03:14 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 10:58:13 +0900 [ruby/net-http] Replace Timeout.timeout in Net:HTTP#connect Use Socket.tcp's connect_timeout option instead https://github.com/ruby/net-http/commit/753cae3bbc commit e22626f08e17c7a1f74b4e31c180d57da7865f4a Author: Tom Freudenberg <tom.freudenberg@4commerce.de> AuthorDate: 2021-03-10 15:35:43 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 10:51:10 +0900 [ruby/net-smtp] mod: bump to a new VERSION that could be checked for testings >0.2.1 https://github.com/ruby/net-smtp/commit/8f2c9323e2 commit eebecdf1c4c631bcccd39fb5c08311ea4e632699 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-28 12:32:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 10:48:13 +0900 [ruby/net-smtp] Removed needless files from Gem::Specification#files https://github.com/ruby/net-smtp/commit/69bba6b125 commit ff931d03366e7d07d4974d4bff51128ddbc5e1d6 Author: mohamed <mohamed.m.m.hafez@gmail.com> AuthorDate: 2021-02-16 02:36:50 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 10:47:29 +0900 [ruby/net-smtp] Replace Timeout.timeout with socket timeout Timeout.timeout is inefficient since it spins up a new thread for each invocation, use Socket.tcp's connect_timeout option instead https://github.com/ruby/net-smtp/commit/6ae4a59f05 commit 4c8cce5b8a5eef73c08d26e17f6d0b55772131d6 Author: Tom Freudenberg <tom.freudenberg@4commerce.de> AuthorDate: 2021-03-09 02:03:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-28 10:46:38 +0900 [ruby/net-smtp] Net::SMTP.start() and #start() accepts ssl_context_params keyword argument Additional params are passed to OpenSSL::SSL::SSLContext#set_params. For example, `Net::SMTP#start(ssl_context_params: { cert_store: my_store, timeout: 123 })` calls `set_params({ cert_store: my_store, timeout: 123 })`. https://github.com/ruby/net-smtp/commit/4213389c21 commit 734557498f2e5e135605945d60a56bab256de769 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-28 09:10:58 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-28 09:10:58 +0900 test/net/ftp/test_ftp.rb: Use RubyVM::JIT instead of RubyVM::MJIT commit 8e2ac2140d1cd9c163c1556df58c020dc22ab269 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-28 03:12:48 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-28 03:12:48 +0900 test/net/ftp/test_ftp.rb: reduce the size of a long response "9" * 999999999 (about 1 GB) was too large for some CI servers. This commit changes the size to 999999 (about 1 MB). http://rubyci.s3.amazonaws.com/scw-9d6766/ruby-master/log/20210427T141707Z.fail.html.gz http://rubyci.s3.amazonaws.com/raspbian10-aarch64/ruby-master/log/20210427T145408Z.fail.html.gz commit fe11031b677f301fa011202f3d27e8eb73064264 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-28 02:27:58 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-28 02:27:58 +0900 test/net/ftp/test_ftp.rb: remove unused variable commit 99eebf8260f2e6644333c795d200fef215f0006e Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-28 02:11:32 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-28 02:13:32 +0900 test/ruby/test_fiber.rb: reduce the count of object creation to cause GC ... on Solaris. This is the same as 547887138f19959f649b1c0dbcde5659ae3878ed. http://rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20210427T160003Z.fail.html.gz ``` [ 7667/20965] TestFiber#test_fork_from_fiber/export/home/users/chkbuild/cb-gcc/tmp/build/20210427T160003Z/ruby/test/ruby/test_fiber.rb:397:in `transfer': can't alloc machine stack to fiber (1 x 139264 bytes): Not enough space (FiberError) from /export/home/users/chkbuild/cb-gcc/tmp/build/20210427T160003Z/ruby/test/ruby/test_fiber.rb:397:in `block (6 levels) in test_fork_from_fiber' from /export/home/users/chkbuild/cb-gcc/tmp/build/20210427T160003Z/ruby/test/ruby/test_fiber.rb:396:in `times' from /export/home/users/chkbuild/cb-gcc/tmp/build/20210427T160003Z/ruby/test/ruby/test_fiber.rb:396:in `block (5 levels) in test_fork_from_fiber' from /export/home/users/chkbuild/cb-gcc/tmp/build/20210427T160003Z/ruby/test/ruby/test_fiber.rb:392:in `fork' from /export/home/users/chkbuild/cb-gcc/tmp/build/20210427T160003Z/ruby/test/ruby/test_fiber.rb:392:in `block (4 levels) in test_fork_from_fiber' = 0.88 s ... 1) Failure: TestFiber#test_fork_from_fiber [/export/home/users/chkbuild/cb-gcc/tmp/build/20210427T160003Z/ruby/test/ruby/test_fiber.rb:409]: [ruby-core:41456]. <0> expected but was <1>. ``` commit 72eacd739d9bbbf1ddfd9ff2c3ce6bf4bb23b3b3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-28 01:47:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-28 01:47:16 +0900 * 2021-04-28 [ci skip] commit 3a3b19b2bba49e5d6f1cf13764eb6dd701397be9 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-04-28 01:42:50 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-04-28 01:42:50 +0900 Fix Monitor to lock per Fiber, like Mutex [Bug #17827] commit 1c1c91535c4f8ebc2d1ccfb63076632d53604401 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-04-27 20:21:24 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-04-27 23:58:49 +0900 lldb: highlight the slot when using dump_page_rvalue Notes: Merged: https://github.com/ruby/ruby/pull/4420 commit f64bb9fc848814c3ad1f559fc3e1e0043a905b72 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-04-27 20:17:55 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-04-27 23:58:49 +0900 lldb: dump_page_rvalue - dump a heap page containing an RVALUE rather than having to do this in a two step process: 1. heap_page obj 2. dump_page $2 (or whatever lldb variable heap_page set) we can now just dump_page_rvalue obj Notes: Merged: https://github.com/ruby/ruby/pull/4420 commit c752a35816c64c0eef3324a860ad4a535fb8ff2b Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-04-27 20:13:29 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-04-27 23:58:49 +0900 lldb: Add Freelist Index to dump_page output Notes: Merged: https://github.com/ruby/ruby/pull/4420 commit 1b2abb6590a653cb7b31d73c42edbaf2d0617b27 Author: Gannon McGibbon <gannon.mcgibbon@gmail.com> AuthorDate: 2021-01-21 10:09:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 21:22:56 +0900 [ruby/net-ftp] Replace "iff" with "if and only if" iff means if and only if, but readers without that knowledge might assume this to be a spelling mistake. To me, this seems like exclusionary language that is unnecessary. Simply using "if and only if" instead should suffice. https://github.com/ruby/net-ftp/commit/e920473618 commit 2670509ebba5ba31a5bf34cf906943075446e005 Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-04-21 10:10:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 21:22:42 +0900 [ruby/net-ftp] Add test cases https://github.com/ruby/net-ftp/commit/865232bb2a commit 4ae27d8075b2d138d13cb2b112f0ee50934b3017 Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-04-21 09:43:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 21:21:33 +0900 [ruby/net-ftp] Reduce resource cosumption of Net::FTP::TIME_PARSER Reported by Alexandr Savca as a DoS vulnerability, but Net::FTP is a client library and the impact of the issue is low, so I have decided to fix it as a normal issue. Based on patch by nobu. https://github.com/ruby/net-ftp/commit/a93af636f8 commit 990baec41174a0b4cf7e285cf3185b4ab444437e Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-26 04:15:48 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 21:21:00 +0900 [ruby/net-ftp] Close the passive connection data socket if there is an error setting up the transfer Previously, the connection leaked in this case. This uses begin/ensure and checking for an error in the ensure block. An alternative approach would be to not even perform the connection until after the RETR (or other) command has been sent. However, I'm not sure all FTP servers support that. The current behavior is: * Send (PASV/EPSV) * Connect to the host/port returned in 227/229 reply * Send (RETR/other command) Changing it to connect after the RETR could break things. FTP servers might expect that the client has already connected before sending the RETR. The alternative approach is more likely to introduce backwards compatibility issues, compared to the begin/ensure approach taken here. Fixes Ruby Bug 17027 https://github.com/ruby/net-ftp/commit/6e8535f076 commit a86c6cb34df0c44973efe6578ba1cd9150af22cf Author: mohamed <mohamed.m.m.hafez@gmail.com> AuthorDate: 2021-02-16 03:25:59 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 21:20:48 +0900 [ruby/net-ftp] Replace Timeout.timeout with socket timeout Timeout.timeout is inefficient since it spins up a new thread for each invocation, use Socket.tcp's connect_timeout option instead when we aren't using SOCKS (we can't replace Timeout.timeout for SOCKS yet since SOCKSSocket doesn't have a connect_timeout option). https://github.com/ruby/net-ftp/commit/d65910132f commit fb819d93316b4d17543a491752ec3a2984c69d70 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-27 21:17:43 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 21:19:14 +0900 [ruby/net-ftp] Re-apply 827e471d438fdec1ae329afb5912b8e06d534823 https://github.com/ruby/net-ftp/commit/3ca80368c4 commit ac739f42eb85c86efe7a777f5ac6ef9c6cac0011 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-27 21:06:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 21:07:17 +0900 [ruby/matrix] Guard for < Ruby 3.0 https://github.com/ruby/matrix/commit/1ef660c627 commit 3af2e8927a50fdb8fda72cf695be6c38aea63257 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-01-22 03:23:10 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 21:01:42 +0900 [ruby/matrix] v0.4.1 https://github.com/ruby/matrix/commit/f7c9981907 commit c57ba9b9578b82d1fb88e460b6b4a964aa69bdb0 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-01-16 12:29:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 21:01:08 +0900 [ruby/matrix] v0.4.0 https://github.com/ruby/matrix/commit/baea4b90d4 commit acf599e67ccc3d667d457f22479bcdcb5421fe92 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-02-15 18:53:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 20:57:54 +0900 [ruby/matrix] Use Gemfile instead of Gem::Specification#add_development_dependency. https://github.com/ruby/matrix/commit/1381fde5c1 commit 22d36c463f5db313a25431150f21c610f4bd6a39 Author: Lars Kanis <kanis@comcard.de> AuthorDate: 2019-12-13 18:38:44 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 20:54:07 +0900 [ruby/gdbm] Add dependency to gdbm package on mingw RubyInstaller2 supports metadata tags for installation of dependent MSYS2/MINGW libraries. The openssl gem requires the mingw-openssl package to be installed on the system, which the gem installer takes care about, when this tag is set. The feature is documented here: https://github.com/oneclick/rubyinstaller2/wiki/For-gem-developers#msys2-library-dependency Fixes https://github.com/oneclick/rubyinstaller2/issues/163 https://github.com/ruby/gdbm/commit/d95eed3e86 commit ad3f4c07d9eb0931d164276471636d04748726f0 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-22 19:09:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-27 20:52:48 +0900 [ruby/pathname] gemspec: Explicitly list 0 executables This gem exposes no executables. https://github.com/ruby/pathname/commit/c401d97d58 commit ea88f49a76912fe0e5f0e125544356ed5b17482b Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-27 17:06:51 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-27 17:07:44 +0900 test/ruby/test_exception.rb: suppress "warning: statement not reached" commit d405b1a878ebaf57f2374d557239d87c8065260a Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-27 15:32:42 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-27 17:05:19 +0900 Make imemo_ast WB-protected again by firing the write barrier of imemo_ast after nd_lit is modified. This will fix the issue of https://github.com/ruby/ruby/pull/4416 more gracefully. Notes: Merged: https://github.com/ruby/ruby/pull/4419 commit e48109d86fa06584a79610ecd5cb16f0bbd64e8c Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-27 15:31:19 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-27 17:05:19 +0900 Partially revert 2c7d3b3a722c4636ab1e9d289cbca47ddd168d3e to make imemo_ast WB-protected again. Only the test is kept. Notes: Merged: https://github.com/ruby/ruby/pull/4419 commit ede26169904a5fbca2e4fd8484dbf80db431f5a7 Author: ebrohman <ericbrohman@gmail.com> AuthorDate: 2021-04-27 05:59:59 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-04-27 08:27:19 +0900 Fix type-o in insns.def "redefine" -> "redefined" Notes: Merged: https://github.com/ruby/ruby/pull/4418 commit 4f88acc8333218429fddbff2fbbba5152bf00eb7 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-04-27 04:14:57 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-04-27 08:26:50 +0900 Fix compiler warnings in objspace_dump.c when assertions are turned on Example: ``` In file included from ../../../include/ruby/defines.h:72, from ../../../include/ruby/ruby.h:23, from ../../../gc.h:3, from ../../../ext/objspace/objspace_dump.c:15: ../../../ext/objspace/objspace_dump.c: In function ‘dump_append_ld’: ../../../ext/objspace/objspace_dump.c:95:26: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘int’ [-Wsign-compare] 95 | RUBY_ASSERT(required <= width); | ^~ ``` Notes: Merged: https://github.com/ruby/ruby/pull/4417 commit 6c1e9650893a855fadba456ca15feaaec4c43c6f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-27 07:25:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-27 07:25:43 +0900 * 2021-04-27 [ci skip] commit d585799d7303abeb1b0ca6fc868f0b2d76a26250 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-04-27 07:21:52 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-04-27 07:21:52 +0900 Document binding behavior for C call/return events for TracePoint/set_trace_func C methods do not have bindings, so binding returns the binding of the nearest C method. Fixes [Bug #9009] commit 203eeeefddb3ae6c0e129ad9cd99da804c2cbaba Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-26 20:00:20 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-26 22:46:51 +0900 Revert "disable shareable_constant_value for CI" This reverts commit c647205c3eb1f17409a859149bb7d2ea38b43bed. Maybe the root issue was fixed by 7ac078e5b67ba752a755d6bd9c3a99999767fd3a Notes: Merged: https://github.com/ruby/ruby/pull/4416 commit 2c7d3b3a722c4636ab1e9d289cbca47ddd168d3e Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-26 18:11:46 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-26 22:46:51 +0900 node.c (rb_ast_new): imemo_ast is WB-unprotected Previously imemo_ast was handled as WB-protected which caused a segfault of the following code: # shareable_constant_value: literal M0 = {} M1 = {} ... M100000 = {} My analysis is here: `shareable_constant_value: literal` creates many Hash instances during parsing, and add them to node_buffer of imemo_ast. However, the contents are missed because imemo_ast is incorrectly WB-protected. This changeset makes imemo_ast as WB-unprotected. Notes: Merged: https://github.com/ruby/ruby/pull/4416 commit 5219b4ddb4b89dfe8a951da75f5ab78431781d7f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-15 22:24:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-26 21:15:06 +0900 [ruby/irb] Added setup and teardown to TestIRB::TestInit Not to be affected by existing rc files in all tests. https://github.com/ruby/irb/commit/bf434892b4 commit 8fdc45c8941da7559eb61666284c38b7f72ccfbf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-08 01:01:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-26 21:14:52 +0900 [ruby/irb] Added `colorable` keyword option Currently `IRB::Color.colorize` and `IRB::Color.colorize_code` refer `$stdin.tty?` internally. This patch adds `colorable` keyword option which overrides it. https://github.com/ruby/irb/commit/402e3f1907 commit 687ab5dcad7bb8069776330ca6a62640290d14f5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-08 00:20:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-26 21:14:44 +0900 [ruby/irb] Assertions on non-tty https://github.com/ruby/irb/commit/ede12890d2 commit 75f1ad8cb33171662e3248a1fe8ded2eda0a9cef Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-08 01:00:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-26 21:14:37 +0900 [ruby/irb] Added test_colorize https://github.com/ruby/irb/commit/10e290fc3a commit 6ddaad606e99aab254288ef14fffbd34a2e54e16 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-08 00:09:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-26 21:14:31 +0900 [ruby/irb] Added assert_equal_with_term https://github.com/ruby/irb/commit/b690da96d8 commit fc24b0736ea8c0c2b31e5c2dccd2714d08d8c486 Author: Ryuta Kamizono <kamipo@gmail.com> AuthorDate: 2021-04-26 03:09:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-26 21:13:42 +0900 [ruby/irb] Fix typo ture -> true [ci skip] https://github.com/ruby/irb/commit/783a0569e8 commit c647205c3eb1f17409a859149bb7d2ea38b43bed Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-04-26 11:31:58 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-04-26 11:33:07 +0900 disable shareable_constant_value for CI To debug CI failures on FreeBSD, disable `shareable_constant_value`. commit 4ca271909d51a692a97363f41d2372a108ef771a Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-26 11:21:15 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-26 11:21:15 +0900 spec/ruby/core/file/shared/read.rb: The behavior of FreeBSD was changed http://rubyci.s3.amazonaws.com/freebsd12/ruby-master/log/20210426T003001Z.fail.html.gz#rubyspec commit 2b487d36f0e917146189f3c403a42f9f1293b8df Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-04-26 11:06:53 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-04-26 11:07:53 +0900 Remove test of removed reverse VM instruction since 5512353d97250e85c13bf10b9b32e750478cf474 commit fcc6f6de868b12cfaacb1313b874120455ce31ca Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-26 10:07:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-26 10:07:58 +0900 * 2021-04-26 [ci skip] commit 33f2ff3babb7054f3df1efa25c1285e09613d7b8 Author: Ryuta Kamizono <kamipo@gmail.com> AuthorDate: 2021-04-26 00:10:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-26 10:07:41 +0900 Fix some typos by spell checker Notes: Merged: https://github.com/ruby/ruby/pull/4414 commit f9b62b5cc04fa87f0970c9ca3d1cbbc9be8bf8fe Author: wonda-tea-coffee <lagrange.resolvent@gmail.com> AuthorDate: 2021-04-25 18:59:43 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-04-25 23:52:29 +0900 [Doc] Fix a typo s/algorthm/algorithm/ Notes: Merged: https://github.com/ruby/ruby/pull/4412 commit ca5816e2759654c001fc5ddc3bbcc90854b16379 Author: wonda-tea-coffee <lagrange.resolvent@gmail.com> AuthorDate: 2021-04-25 19:16:19 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-04-25 23:51:45 +0900 [ci skip] Fix a typo s/certificiate/certificate/ Notes: Merged: https://github.com/ruby/ruby/pull/4413 commit 04e6383f40eab6880283aef94705175c2ff39074 Author: wonda-tea-coffee <lagrange.resolvent@gmail.com> AuthorDate: 2021-04-25 18:51:54 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-04-25 23:51:23 +0900 [Doc] Fix a typo s/daguten/dakuten/ Notes: Merged: https://github.com/ruby/ruby/pull/4411 commit 532c775e221da65370029cb46a20456d30126dab Author: wonda-tea-coffee <lagrange.resolvent@gmail.com> AuthorDate: 2021-04-25 18:43:45 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-04-25 23:50:12 +0900 [Doc] Fix a typo s/arround/around/ Notes: Merged: https://github.com/ruby/ruby/pull/4410 commit cc5bab80e4b1124e30a8dc220bdcb80aaa539486 Author: wonda-tea-coffee <rikita.ishikawa@crowdworks.co.jp> AuthorDate: 2021-04-25 11:21:56 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-04-25 16:46:37 +0900 [Doc] Fix a typo s/visilibity/visibility/ Notes: Merged: https://github.com/ruby/ruby/pull/4406 commit ad108e63e35d571de5cdd195b4bb9b36dd4ad013 Author: wonda-tea-coffee <rikita.ishikawa@crowdworks.co.jp> AuthorDate: 2021-04-25 13:48:50 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-04-25 16:46:00 +0900 [Doc] Fix a typo s/oher/other/ Notes: Merged: https://github.com/ruby/ruby/pull/4407 commit e71bc56efe899a49af0b062f6beb8bfbd4063216 Author: wonda-tea-coffee <rikita.ishikawa@crowdworks.co.jp> AuthorDate: 2021-04-25 13:57:03 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-04-25 16:45:42 +0900 [Doc] Fix a typo s/evel/eval/ Notes: Merged: https://github.com/ruby/ruby/pull/4408 commit 4d5f15a5566d780b33b8894738efe21822b19f76 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-25 16:45:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-25 16:45:23 +0900 * 2021-04-25 [ci skip] commit fc84e6679d98ebb83a02609e8ba2f588e99565eb Author: wonda-tea-coffee <rikita.ishikawa@crowdworks.co.jp> AuthorDate: 2021-04-25 14:02:33 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-04-25 16:45:01 +0900 [Doc] Fix a typo s/invokations/invocations/ Notes: Merged: https://github.com/ruby/ruby/pull/4409 commit dee58d7ae7b75971f349f2217007fdf45d1ea23d Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-24 11:17:20 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-04-24 11:17:20 +0900 Add back checks for empty kw splat with tests (#4405) This reverts commit a224ce8150f2bc687cf79eb415c931d87a4cd247. Turns out the checks are needed to handle splatting an array with an empty ruby2 keywords hash. Notes: Merged-By: XrXr commit 1f2b5c6dfe86e8ea2bbcd9a70d7a129da7e64a4a Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-04-24 08:43:00 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-04-24 08:44:01 +0900 Remove part of comment that is no longer accurate In Ruby 2.7, empty keyword splats could be added back for backwards compatibility. However, that stopped in Ruby 3.0. commit a224ce8150f2bc687cf79eb415c931d87a4cd247 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-24 08:37:03 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-04-24 08:37:03 +0900 Remove unnecessary checks for empty kw splat These two checks are surrounded by an if that ensures the call site is not a kw splat call site. Notes: Merged: https://github.com/ruby/ruby/pull/4404 Merged-By: XrXr commit 4b36a597f48c857aa5eb9ed80fec0d02f6284646 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-04-06 08:01:46 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-04-24 08:31:18 +0900 Fix setting method visibility for a refinement without an origin class If a class has been refined but does not have an origin class, there is a single method entry marked with VM_METHOD_TYPE_REFINED, but it contains the original method entry. If the original method entry is present, we shouldn't skip the method when searching even when skipping refined methods. Fixes [Bug #17519] Notes: Merged: https://github.com/ruby/ruby/pull/4357 commit cb78aaededb09eff2f5c38ae0f8ec0f65011a2cc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-24 01:25:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-24 01:25:24 +0900 * 2021-04-24 [ci skip] commit 7de7d096e77ddcc6789ddea3e8aeecfaa684dccb Author: romainsalles <romainsalles@users.noreply.github.com> AuthorDate: 2021-04-23 21:25:42 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-04-24 01:25:00 +0900 Fix wrong documentation It doesn't return `nil` but raises an exception, as explained a few lines after Notes: Merged: https://github.com/ruby/ruby/pull/4403 commit 71ee05c9363935d0c6db01cb22edfdb2b128af4f Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-23 22:11:01 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-23 22:11:01 +0900 test/ruby/test_assignment.rb: Avoid "assigned but unused variable" commit cf7b33d5a2e64fa96f43decf603c452ccbf37654 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-04-23 12:20:37 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-04-23 12:53:36 +0900 Remove unneeded comment Notes: Merged: https://github.com/ruby/ruby/pull/4402 commit 5a4b3354f23398283ba6184b63a49427cdace49a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-23 10:35:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-23 10:35:53 +0900 * 2021-04-23 [ci skip] commit 3ea2a407130332892083ce053d54b5ea3bc0ce0c Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-23 10:35:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-23 10:35:29 +0900 Suppress warnings for unsued variable commit e628058c1a39f279629f89b57ee224aff8d0dc62 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-04-22 20:55:52 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-04-22 20:55:52 +0900 Update bundled_gems commit bbee6968f82137645f2029379906f5b5d3911ead Author: Steven Harman <steven@harmanly.com> AuthorDate: 2020-08-19 02:49:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 14:55:44 +0900 [ruby/uri] Use Regexp#match? to avoid extra allocations `#=~` builds `MatchData`, requiring extra allocations as compared to `#match?`, which returns a boolean w/o having to build the `MatchData`. https://github.com/ruby/uri/commit/158f58a9cc commit 291cfa7125b86d3a14d477effd0e58bdc1723141 Author: Felix Wong <felix@waf.hk> AuthorDate: 2021-04-22 03:32:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 14:55:05 +0900 [ruby/uri] remove comment about URI::escape as it is removed https://github.com/ruby/uri/commit/0f0057e1b2 commit d4a490f26a60e861ca6525723f4b44f6fb88dcc1 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-03-05 08:20:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 14:54:56 +0900 [ruby/uri] Set required_ruby_version to 2.4 in gemspec Tests pass on Ruby 2.4, but not on Ruby 2.3. https://github.com/ruby/uri/commit/594418079a commit 10ad81eb2d4bf44b5d5350e3ea28e6248f550128 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-03-05 08:19:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 14:54:47 +0900 [ruby/uri] Only use UnboundMethod#bind_call if it is available This allows tests to pass on Ruby 2.4-2.6. Fixes https://github.com/ruby/uri/pull/19 https://github.com/ruby/uri/commit/67ca99ca87 commit 3e27ca60470cbd73dd82ca6b8007a3b8362d576e Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-03-05 08:18:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 14:54:37 +0900 [ruby/uri] Add tests for URI::RFC{2396,3986}_Parser#inspect https://github.com/ruby/uri/commit/d47dae2f8e commit c46a4b8c7f434110c30c9587e02387283076579f Author: Lukas Zapletal <lzap+git@redhat.com> AuthorDate: 2020-10-07 20:23:00 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 14:54:28 +0900 [ruby/uri] Optimize URI#hostname and URI#hostname= https://github.com/ruby/uri/commit/3b7ccfd835 commit 6e06c980dace26ff2f06eb4ac1e2d06291101ee7 Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-03-05 07:44:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 14:54:19 +0900 [ruby/uri] Upstream Java proxy property checks from JRuby These Java properties, retrieved from JRuby's "Java env" ENV_JAVA, allow JRuby users to use the same proxy properties the rest of the Java platform uses. This resolves https://bugs.ruby-lang.org/issues/11194 https://github.com/ruby/uri/commit/3bd2bcc95a commit a9fe00c3baf26b94d924149e99334f4d587e125e Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-03-17 09:17:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 14:38:32 +0900 [ruby/net-imap] Bump version to 0.2.1 https://github.com/ruby/net-imap/commit/31f96ea884 commit d785c5b8b2ed31202045d29f5981afc43b430dff Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-03-16 14:54:32 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 14:38:23 +0900 [ruby/net-imap] Set timeout for IDLE responses Fixes https://github.com/ruby/net-imap/pull/14 https://github.com/ruby/net-imap/commit/39d39ff9bb commit 674760316ce5b68aa182c1b3b25665de250341b3 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-22 14:35:52 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 14:37:45 +0900 Merge net-imap-0.2.0 commit 01f131457ffac39f018b342fbd5f7598171d10fa Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-22 13:35:30 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 13:35:30 +0900 Separate test used by test_ractor for Ractor in test_time.rb commit 270b16e70c6b9f3e4b497d481a00941e13a1f056 Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-02-04 04:53:28 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 11:53:13 +0900 [ruby/io-console] Move FFI console under lib Having the separate dir makes testing difficult and doesn't reflect the structure the gem will eventually have. We can filter these files out if necessary when building the CRuby gem. https://github.com/ruby/io-console/commit/881010447c commit 042860bd65532fea95159774da94adc48bf7b958 Author: Duncan MacGregor <duncan.macgregor@oracle.com> AuthorDate: 2021-02-05 21:03:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 11:51:37 +0900 [ruby/io-console] Enable building the C extension on TruffleRuby. https://github.com/ruby/io-console/commit/c17b8cf3a9 commit 537fc3ad5c5ed48a28d6cdd898ff6f41e9376b0e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-22 11:49:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 11:51:37 +0900 Ignore JRuby files on io-console commit b18aab24b69e94b2e39017434f40cdfade18155e Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-01 23:02:48 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 11:51:37 +0900 [ruby/benchmark] gemspec: Explicitly have 0 executables This gem exposes no executables. https://github.com/ruby/benchmark/commit/ff1ef7ae06 commit 4f39a35b60de7fe80ace6978aae3346f0d76ced4 Author: Keith Bennett <keithrbennett@gmail.com> AuthorDate: 2021-03-04 05:13:30 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 11:51:37 +0900 [ruby/benchmark] Add comment about terminating newline in captions; fix test method name. https://github.com/ruby/benchmark/commit/02ce298d3e commit 2440d60acb8e8fbcad1f6943892556cf3a529d70 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-03-31 23:14:25 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 11:51:37 +0900 [ruby/cgi] gemspec: Explicitly empty executables list The gem exposes no executables https://github.com/ruby/cgi/commit/cd7106ad97 commit f818b1ed2b2ec16bbc55919082d6cafb99693db8 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-26 02:24:15 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 11:51:36 +0900 [ruby/cgi] Add test for escapeHTML/unescapeHTML invalid encoding fix in pure ruby version Also, remove pointless assert_nothing_raised(ArgumentError) while here. https://github.com/ruby/cgi/commit/c05edf5608 commit 27569383693a04907b50ec9170f9ebf164d01d0f Author: pavel <pavel.rosicky@easy.cz> AuthorDate: 2020-03-14 02:55:55 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 11:51:36 +0900 [ruby/cgi] handle invalid encoding https://github.com/ruby/cgi/commit/2b1c2e21a4 commit 53d153e42c90f48ac35316b9fd69b8819aa4e7d3 Author: Kir Shatrov <shatrov@me.com> AuthorDate: 2021-01-22 14:42:30 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-22 11:51:36 +0900 [ruby/time] Make Time friendly to Ractor https://github.com/ruby/time/commit/c784e4f166 commit 609de71f043e8ba34f22b9993e444e2e5bb05709 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-04-22 10:44:52 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-04-22 11:33:39 +0900 fix raise in exception with jump add_ensure_iseq() adds ensure block to the end of jump such as next/redo/return. However, if the rescue cause are in the body, this rescue catches the exception in ensure clause. iter do next rescue R ensure raise end In this case, R should not be executed, but executed without this patch. Fixes [Bug #13930] Fixes [Bug #16618] A part of tests are written by @jeremyevans https://github.com/ruby/ruby/pull/4291 Notes: Merged: https://github.com/ruby/ruby/pull/4399 commit 5512353d97250e85c13bf10b9b32e750478cf474 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-04-22 04:35:32 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-04-22 08:29:26 +0900 Remove reverse VM instruction This was previously only used by the multiple assignment code, but is no longer needed after the multiple assignment execution order fix. Notes: Merged: https://github.com/ruby/ruby/pull/4398 commit 9dbd0969e71b9b71c9e28bec9ff19697cbd1dd6d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-22 02:49:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-22 02:49:41 +0900 * 2021-04-22 [ci skip] commit 50c54d40a81bb2a4794a6be5f1861152900b4fed Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-04-22 02:49:19 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-04-22 02:49:19 +0900 Evaluate multiple assignment left hand side before right hand side In regular assignment, Ruby evaluates the left hand side before the right hand side. For example: ```ruby foo[0] = bar ``` Calls `foo`, then `bar`, then `[]=` on the result of `foo`. Previously, multiple assignment didn't work this way. If you did: ```ruby abc.def, foo[0] = bar, baz ``` Ruby would previously call `bar`, then `baz`, then `abc`, then `def=` on the result of `abc`, then `foo`, then `[]=` on the result of `foo`. This change makes multiple assignment similar to single assignment, changing the evaluation order of the above multiple assignment code to calling `abc`, then `foo`, then `bar`, then `baz`, then `def=` on the result of `abc`, then `[]=` on the result of `foo`. Implementing this is challenging with the stack-based virtual machine. We need to keep track of all of the left hand side attribute setter receivers and setter arguments, and then keep track of the stack level while handling the assignment processing, so we can issue the appropriate topn instructions to get the receiver. Here's an example of how the multiple assignment is executed, showing the stack and instructions: ``` self # putself abc # send abc, self # putself abc, foo # send abc, foo, 0 # putobject 0 abc, foo, 0, [bar, baz] # evaluate RHS abc, foo, 0, [bar, baz], baz, bar # expandarray abc, foo, 0, [bar, baz], baz, bar, abc # topn 5 abc, foo, 0, [bar, baz], baz, abc, bar # swap abc, foo, 0, [bar, baz], baz, def= # send abc, foo, 0, [bar, baz], baz # pop abc, foo, 0, [bar, baz], baz, foo # topn 3 abc, foo, 0, [bar, baz], baz, foo, 0 # topn 3 abc, foo, 0, [bar, baz], baz, foo, 0, baz # topn 2 abc, foo, 0, [bar, baz], baz, []= # send abc, foo, 0, [bar, baz], baz # pop abc, foo, 0, [bar, baz] # pop [bar, baz], foo, 0, [bar, baz] # setn 3 [bar, baz], foo, 0 # pop [bar, baz], foo # pop [bar, baz] # pop ``` As multiple assignment must deal with splats, post args, and any level of nesting, it gets quite a bit more complex than this in non-trivial cases. To handle this, struct masgn_state is added to keep track of the overall state of the mass assignment, which stores a linked list of struct masgn_attrasgn, one for each assigned attribute. This adds a new optimization that replaces a topn 1/pop instruction combination with a single swap instruction for multiple assignment to non-aref attributes. This new approach isn't compatible with one of the optimizations previously used, in the case where the multiple assignment return value was not needed, there was no lhs splat, and one of the left hand side used an attribute setter. This removes that optimization. Removing the optimization allowed for removing the POP_ELEMENT and adjust_stack functions. This adds a benchmark to measure how much slower multiple assignment is with the correct evaluation order. This benchmark shows: * 4-9% decrease for attribute sets * 14-23% decrease for array member sets * Basically same speed for local variable sets Importantly, it shows no significant difference between the popped (where return value of the multiple assignment is not needed) and !popped (where return value of the multiple assignment is needed) cases for attribute and array member sets. This indicates the previous optimization, which was dropped in the evaluation order fix and only affected the popped case, is not important to performance. Fixes [Bug #4443] Notes: Merged: https://github.com/ruby/ruby/pull/4390 Merged-By: jeremyevans <code@jeremyevans.net> commit 3c8a67e8a5f51f337cf95b4038ed97bf8ca8b696 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-23 12:33:51 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-21 20:45:23 +0900 [ruby/pp] Bump version to 0.2.0 https://github.com/ruby/pp/commit/a202dd2c9b commit 17441a6b1bb258d0d67f75c5642db642e10f74ca Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-28 13:37:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-21 20:44:55 +0900 [ruby/pp] Support < Ruby 3.0 https://github.com/ruby/pp/commit/3ee131ae92 commit 2229fc8b57f8af931bb1c5301423b5d2208ca0df Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-06 18:48:30 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-21 20:43:18 +0900 [ruby/resolv] gemspec: Explicitly list 0 executables This gem exposes no executables, and this makes that clearer. https://github.com/ruby/resolv/commit/8797a9d3ce commit c27e8f1caf77050d4b89a2e9f7278d8db711ba1f Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-03-31 23:04:08 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-21 20:41:52 +0900 [ruby/forwardable] gemspec: Explicitly empty the executables list This gem exposes no executables. https://github.com/ruby/forwardable/commit/374b685927 commit b68a4c199c8b00efa9671debf83ba0bd3a4539a1 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-03-31 23:10:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-21 20:41:26 +0900 [ruby/base64] gemspec: Use an explicit file list This avoids shelling out to git. https://github.com/ruby/base64/commit/f45f06f93f commit fa00bf92bab7f5cd48ea6fb687eb7d30ab403882 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-03-31 23:08:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-21 20:41:17 +0900 [ruby/base64] gemspec: Explicitly empty executables list This gem exposes no executables. https://github.com/ruby/base64/commit/9d2c49cb19 commit 855997a4d4b7cf9e7e72212cc02d593871dd3887 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-03-31 23:18:29 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-21 20:39:04 +0900 [ruby/abbrev] gemspec: Explicitly empty executables list https://github.com/ruby/abbrev/commit/f28839e7b8 commit 4ac72d37d79354a2bf036b2f6dd9c3ae1b523376 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-06 19:42:40 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-21 20:38:00 +0900 [ruby/io-wait] gemspec: Explicitly list 0 executables This gem exposes no executables, and this clarifies this. https://github.com/ruby/io-wait/commit/f491c6cc64 commit 347c3b30836304416a97f04f3cb2feb8f9c202c2 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-21 20:34:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-21 20:34:46 +0900 Fix the regexp list for ignore list commit 7c0c1c3e4683cf4569b29e6a2d9eb44358268d14 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-21 17:38:33 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-21 17:38:33 +0900 This change broke the some files like date.gemspec and lib/logger.rb. Revert "sync_default_gems.rb: merge only files named as each gem" This reverts commit 37b96d6773a2151fb3193cab6b9e3f7328915844. commit fb04c69418ceee696a114fe31279cf3a5ea16d30 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-21 13:02:29 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-04-21 13:02:29 +0900 array.c (rb_ary_zip): take only as many as needed from an Enumerator (#4389) [Bug #17814] Notes: Merged-By: mame <mame@ruby-lang.org> commit d427e3cd6f1b39624c9935ade25b4dcb334bee36 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-04-21 08:37:34 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-04-21 08:39:44 +0900 [ci skip] Remove badge for Travis CI from README.md Travis CI was removed in 6b978d542704a5614af5e9375c4b31b8d2618652. Notes: Merged: https://github.com/ruby/ruby/pull/4396 commit eb4e3206810adf2aa4edff2fa4c7583a4ff39aae Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-04-21 07:32:13 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-04-21 08:26:15 +0900 Man page: correct defaults for RUBY_THREAD_VM_STACK_SIZE See RUBY_VM_THREAD_VM_STACK_SIZE in vm_core.h. Notes: Merged: https://github.com/ruby/ruby/pull/4395 commit d92f09a5eea009fa28cd046e9d0eb698e3d94c5c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-21 01:54:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-21 01:54:32 +0900 * 2021-04-21 [ci skip] commit 32643cfb1d6b0eeb70df43f3ae90d1f1fadfa879 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-04-21 00:17:56 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-04-21 01:54:09 +0900 check ep during compaction because it can be null This commit adds a check on the ep just like in the mark function. The env can contain null bytes if allocation tracing is enabled. We're seeing errors during autocompaction like this: ``` (lldb) bt 40 * thread #1, name = 'ruby', stop reason = signal SIGABRT frame #0: 0x00007f7d64b6018b libc.so.6`raise + 203 frame #1: 0x00007f7d64b3f859 libc.so.6`abort + 299 frame #2: 0x000055af5f2fefc9 ruby`die at error.c:764:5 frame #3: 0x000055af5f2ff1ac ruby`rb_bug_for_fatal_signal(default_sighandler=0x0000000000000000, sig=11, ctx=0x000055af60bc3340, fmt="") at error.c:804:5 frame #4: 0x000055af5f4bd08f ruby`sigsegv(sig=11, info=0x000055af60bc3470, ctx=0x000055af60bc3340) at signal.c:960:5 frame #5: 0x00007f7d64ebe3c0 libpthread.so.0`__restore_rt frame #6: 0x000055af5f339b0a ruby`gc_ref_update_imemo(objspace=0x000055af60b2b040, obj=0x00007f7d5b513fd0) at gc.c:9046:13 frame #7: 0x000055af5f339172 ruby`gc_update_object_references(objspace=0x000055af60b2b040, obj=0x00007f7d5b513fd0) at gc.c:9307:9 frame #8: 0x000055af5f338e79 ruby`gc_ref_update(vstart=0x00007f7d5b510010, vend=0x00007f7d5b513ff8, stride=40, objspace=0x000055af60b2b040, page=0x000055af62577aa0) at gc.c:9452:21 frame #9: 0x000055af5f337846 ruby`gc_update_references(objspace=0x000055af60b2b040, heap=0x000055af60b2b068) at gc.c:9481:9 frame #10: 0x000055af5f336569 ruby`gc_compact_finish(objspace=0x000055af60b2b040, heap=0x000055af60b2b068) at gc.c:4840:5 frame #11: 0x000055af5f335efb ruby`gc_page_sweep(objspace=0x000055af60b2b040, heap=0x000055af60b2b068, sweep_page=0x000055af63a1eb30) at gc.c:5046:13 frame #12: 0x000055af5f3355c5 ruby`gc_sweep_step(objspace=0x000055af60b2b040, heap=0x000055af60b2b068) at gc.c:5214:19 frame #13: 0x000055af5f33daf6 ruby`gc_sweep_rest(objspace=0x000055af60b2b040) at gc.c:5271:2 frame #14: 0x000055af5f33cacd ruby`gc_sweep(objspace=0x000055af60b2b040) at gc.c:5389:2 frame #15: 0x000055af5f33c21d ruby`gc_marks_rest(objspace=0x000055af60b2b040) at gc.c:7555:5 frame #16: 0x000055af5f324d41 ruby`gc_rest(objspace=0x000055af60b2b040) at gc.c:8457:13 frame #17: 0x000055af5f3297d8 ruby`garbage_collect(objspace=0x000055af60b2b040, reason=45568) at gc.c:8318:9 frame #18: 0x000055af5f344ece ruby`garbage_collect_with_gvl(objspace=0x000055af60b2b040, reason=45568) at gc.c:8632:9 frame #19: 0x000055af5f344e61 ruby`objspace_malloc_gc_stress(objspace=0x000055af60b2b040) at gc.c:10592:9 frame #20: 0x000055af5f32ced1 ruby`objspace_xmalloc0(objspace=0x000055af60b2b040, size=64) at gc.c:10767:5 frame #21: 0x000055af5f32ce11 ruby`ruby_xmalloc0(size=64) at gc.c:10988:12 frame #22: 0x000055af5f32cdac ruby`ruby_xmalloc_body(size=64) at gc.c:10997:12 frame #23: 0x000055af5f329415 ruby`ruby_xmalloc(size=64) at gc.c:12942:12 frame #24: 0x00007f7d611c4fe5 objspace.so`newobj_i(tpval=0x00007f7d5b553770, data=0x000055af639031a0) at object_tracing.c:101:35 frame #25: 0x000055af5f5b283f ruby`tp_call_trace(tpval=0x00007f7d5b553770, trace_arg=0x00007fff1016d398) at vm_trace.c:1115:2 frame #26: 0x000055af5f5b50ec ruby`exec_hooks_body(ec=0x000055af60b2b700, list=0x000055af60b2b920, trace_arg=0x00007fff1016d398) at vm_trace.c:304:3 frame #27: 0x000055af5f5b0f24 ruby`exec_hooks_unprotected(ec=0x000055af60b2b700, list=0x000055af60b2b920, trace_arg=0x00007fff1016d398) at vm_trace.c:333:5 frame #28: 0x000055af5f5b0da8 ruby`rb_exec_event_hooks(trace_arg=0x00007fff1016d398, hooks=0x000055af60b2b920, pop_p=0) at vm_trace.c:378:13 frame #29: 0x000055af5f33f8e2 ruby`rb_exec_event_hook_orig(ec=0x000055af60b2b700, hooks=0x000055af60b2b920, flag=1048576, self=0x00007f7d5b5c08c0, id=0, called_id=0, klass=0x0000000000000000, data=0x00007f7d5b513fd0, pop_p=0) at vm_core.h:1989:5 frame #30: 0x000055af5f334975 ruby`gc_event_hook_body(ec=0x000055af60b2b700, objspace=0x000055af60b2b040, event=1048576, data=0x00007f7d5b513fd0) at gc.c:2083:5 * frame #31: 0x000055af5f3342df ruby`newobj_slowpath_wb_protected [inlined] newobj_slowpath(klass=0x00007f7d5b9d19c8, flags=0x000000000000001a, objspace=0x000055af60b2b040, cr=0x000055af60b2b910, wb_protected=1) at gc.c:2284:9 frame #32: 0x000055af5f33410f ruby`newobj_slowpath_wb_protected(klass=0x00007f7d5b9d19c8, flags=0x000000000000001a, objspace=0x000055af60b2b040, cr=0x000055af60b2b910) at gc.c:2299 frame #33: 0x000055af5f333de9 ruby`newobj_of0(klass=0x00007f7d5b9d19c8, flags=0x000000000000001a, wb_protected=1, cr=0x000055af60b2b910) at gc.c:2338:11 frame #34: 0x000055af5f3227ae ruby`newobj_of(klass=0x00007f7d5b9d19c8, flags=0x000000000000001a, v1=0x000055af657d88a0, v2=0x000055af657d8890, v3=0x0000000000000000, wb_protected=1) at gc.c:2348:17 frame #35: 0x000055af5f322c5b ruby`rb_imemo_new(type=imemo_env, v1=0x000055af657d88a0, v2=0x000055af657d8890, v3=0x0000000000000000, v0=0x00007f7d5b9d19c8) at gc.c:2434:12 frame #36: 0x000055af5f5a3925 ruby`vm_env_new(env_ep=0x000055af657d88a0, env_body=0x000055af657d8890, env_size=4, iseq=0x00007f7d5b9d19c8) at vm_core.h:1363:33 frame #37: 0x000055af5f5a3808 ruby`vm_make_env_each(ec=0x000055af60b2b700, cfp=0x00007f7d6482fc90) at vm.c:801:11 frame #38: 0x000055af5f5a368d ruby`vm_make_env_each(ec=0x000055af60b2b700, cfp=0x00007f7d6482fc20) at vm.c:752:13 frame #39: 0x000055af5f5a368d ruby`vm_make_env_each(ec=0x000055af60b2b700, cfp=0x00007f7d6482fbb0) at vm.c:752:13 (lldb) f 31 frame #31: 0x000055af5f3342df ruby`newobj_slowpath_wb_protected [inlined] newobj_slowpath(klass=0x00007f7d5b9d19c8, flags=0x000000000000001a, objspace=0x000055af60b2b040, cr=0x000055af60b2b910, wb_protected=1) at gc.c:2284:9 2281 } 2282 GC_ASSERT(obj != 0); 2283 newobj_init(klass, flags, wb_protected, objspace, obj); -> 2284 gc_event_hook_prep(objspace, RUBY_INTERNAL_EVENT_NEWOBJ, obj, newobj_fill(obj, 0, 0, 0)); 2285 } 2286 RB_VM_LOCK_LEAVE_CR_LEV(cr, &lev); 2287 (lldb) p obj (VALUE) $3 = 0x00007f7d5b513fd0 (lldb) f 6 frame #6: 0x000055af5f339b0a ruby`gc_ref_update_imemo(objspace=0x000055af60b2b040, obj=0x00007f7d5b513fd0) at gc.c:9046:13 9043 { 9044 rb_env_t *env = (rb_env_t *)obj; 9045 TYPED_UPDATE_IF_MOVED(objspace, rb_iseq_t *, env->iseq); -> 9046 UPDATE_IF_MOVED(objspace, env->ep[VM_ENV_DATA_INDEX_ENV]); 9047 gc_update_values(objspace, (long)env->env_size, (VALUE *)env->env); 9048 } 9049 break; (lldb) p obj (VALUE) $4 = 0x00007f7d5b513fd0 (lldb) ``` Notes: Merged: https://github.com/ruby/ruby/pull/4392 commit 59411b0b363de80a10c3a8f1bdd1ae110d34ac28 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-03-31 22:40:39 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-20 21:19:41 +0900 [ruby/zlib] gemspec: Remove unused files Remove the list of executables. https://github.com/ruby/zlib/commit/6a70725b8e commit 749aad280f67973e8b4793b72285cc94861a12f9 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-03-31 22:53:46 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-20 21:19:41 +0900 [ruby/gdbm] gemspec: Set executables to the empty list This gem exposes zero executables. https://github.com/ruby/gdbm/commit/d51cf47f65 commit cc8d0e7cbf33611b1cd4d6e0dbaa3522387af717 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-01 22:58:27 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-20 21:19:41 +0900 [ruby/dbm] gemspec: add README & LICENSE https://github.com/ruby/dbm/commit/c86b94b781 commit b56c8f814e656e6a680acf2e5c96812e84af238d Author: Gannon McGibbon <gannon.mcgibbon@gmail.com> AuthorDate: 2021-01-20 07:13:53 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-20 21:19:41 +0900 [ruby/logger] Replace "iff" with "if and only if" iff means if and only if, but readers without that knowledge might assume this to be a spelling mistake. To me, this seems like exclusionary language that is unnecessary. Simply using "if and only if" instead should suffice. https://github.com/ruby/logger/commit/4fa0c28e00 commit 3fdc58c08b24eaef42bd9db4ede02c2269d5d6f2 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-23 18:18:05 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-20 20:46:03 +0900 [ruby/date] Bump version to 3.1.1 https://github.com/ruby/date/commit/e574cc9048 commit a31a9c74711f670ef644e6a692c84dfb5adcc580 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-20 19:22:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-20 19:22:49 +0900 * 2021-04-20 [ci skip] commit 4c68c825d29ad703c0a5a2feeb9bffb6b4718144 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-04-20 19:22:15 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-04-20 19:22:15 +0900 Update bundled_gems commit 50f17241a32d837403fae68dc1ed0f046506d3e8 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-04-19 21:37:21 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-04-19 21:40:29 +0900 Try to fix other failures of writing XDG_CONFIG_HOME https://github.com/ruby/actions/actions/runs/756591173 https://github.com/ruby/actions/actions/runs/759073690 https://github.com/ruby/actions/actions/runs/761341026 ``` Errno::EACCES: Permission denied @ dir_s_mkdir - /home/runner/.config/irb ``` commit 93420d34aaf8c30f11a66dd08eb186da922c831d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-19 18:19:09 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-19 18:19:09 +0900 Added the specific files to the default gems like net-http and optparse commit 39c01aef66796897d7eff7b2f7904018e5a28ac3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-19 13:45:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-19 13:45:41 +0900 * 2021-04-19 [ci skip] commit 5d710d7e41ef3a9877426c87de121be3bf770e34 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-19 13:44:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-19 13:44:38 +0900 Fix the wrong file detection for net-*.gemspec [Bug #17476][ruby-core:101724] commit aae812d65d0759dd05816949427965978f3f484b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-18 13:49:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-18 13:49:12 +0900 * 2021-04-18 [ci skip] commit 6943ffc3d55d17160183f955bc6247a79885a34b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-18 13:47:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-18 13:47:43 +0900 Split revision.h rule GNU-make specific rule is defined in defs/gmake.mk. commit 1f56238032482ab55db2a7cbf5c156b5ccc17526 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-17 19:14:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-17 19:14:21 +0900 Remove comments in tool/m4 from the generated configure commit 17c3014bb7012793553c275f1509b2bb6f82cd50 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-17 19:08:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-17 19:08:53 +0900 Prefer positive condition to double negative Autoconf 2.70 seems to omit the check for the given CC, `AC_COMPILE_IFELSE` does not know which is the cause of the failure. commit ed9ac0391725f616f101cf9311a43f6161d4c7d9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-17 11:54:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-17 11:54:39 +0900 * 2021-04-17 [ci skip] commit d953ac11394729ef66a4fb44f2eb1383b0ef2e00 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-04-17 11:54:10 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-04-17 11:54:10 +0900 Fix writing XDG_CONFIG_HOME in test-bundler https://github.com/ruby/actions/actions/runs/756591173 ``` Errno::EACCES: Permission denied @ dir_s_mkdir - /home/runner/.config/irb ``` commit b6bb4623ebcf1335cf0a81d279cde24a9e97bcce Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-16 16:12:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-16 16:12:10 +0900 NEWS for [Feature #15198] [ci skip] commit 55d91a096a840aaff1e08a4286c216da56b6e968 Author: Travis Hunter <travis.hunter@blueapron.com> AuthorDate: 2018-10-04 04:19:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-16 16:06:36 +0900 Add Array#intersect? Notes: Merged: https://github.com/ruby/ruby/pull/1972 commit 97cee1cba6c966e9eb390902f42941daf6f0d1fd Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-04-16 14:41:35 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-04-16 14:41:35 +0900 rb_hash_free(): has never existed. This is just a hoax. Nobody have ever implemented a function named as such. Also the functionality implied by the name must not be a public API if any. commit dd3eca64778d88891ba8e8b66224ac84aa0378a8 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-16 11:05:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-16 11:05:36 +0900 * 2021-04-16 [ci skip] commit 6268fdc662c75c61091b2ab0b476ec15df023328 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-16 11:04:23 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-16 11:04:23 +0900 spec/ruby/core/hash/transform_keys_spec.rb: Fix the failure of ruby_3_0 https://github.com/ruby/spec/pull/833 https://github.com/ruby/spec/commit/8290e5ad8952b14ee9a5069651d9864c66681112 commit f1f08f5b691230840d6ea5dc4ac3f5cf113e8120 Author: Peter Zhu <peter.zhu@shopify.com> AuthorDate: 2021-04-15 11:00:34 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-04-15 23:10:23 +0900 Remove useless attribute set in init_mark_stack init_mark_stack already clears the mark stack so we do not need to set the attribute cache_size to zero. Notes: Merged: https://github.com/ruby/ruby/pull/4382 commit 26888d5e032202328e10881550477fd036c8e805 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-15 18:07:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-15 18:07:23 +0900 Workaround for installation failures on macOS commit 7af7a539bc34fa630ab4dfd178d67cfebbc8699f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-15 13:36:06 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-15 15:36:15 +0900 Also merge tool/bundler/*.rb for testing of Bundler Notes: Merged: https://github.com/ruby/ruby/pull/4383 commit 96741765d880b700933526a97a67345dfcd90c47 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-15 12:47:18 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-15 15:36:15 +0900 Merge the master branch of RubyGems Notes: Merged: https://github.com/ruby/ruby/pull/4383 commit ed149dbf46d1a8b16e6de9c3dbbcc10f72c9c019 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-15 12:47:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-15 15:36:15 +0900 Merge the master branch of Bundler Notes: Merged: https://github.com/ruby/ruby/pull/4383 commit 0d9496f924d36534bd524791554d49dc0026b0e0 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-15 12:45:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-15 15:36:15 +0900 Restore bundler.gemspec from ruby/ruby repository with sync_default_gems.rb Notes: Merged: https://github.com/ruby/ruby/pull/4383 commit fd978621ccbc9519afc05ad031ba2518e9a6f379 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-15 12:49:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-15 14:55:22 +0900 mkconfig.rb: Update around SDKROOT c.f. https://opensource.apple.com/source/ruby/ruby-145.40.1/patches/tool_mkconfig.rb.diff * moved to "includedir" from "oldincludedir". * honor "$(prefix)/include" if exists, otherwise fallback to `xcrun`. commit df0f60b690b131810de3dd1603e5bebc7f438903 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-15 13:38:45 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-15 13:40:16 +0900 spec/ruby/library/matrix/: Change the version guard to 3.1.0 [Bug #17521] won't be backported until 3.1.0. https://github.com/ruby/spec/pull/832 commit 92545977de0664bd2f37455dd4c4ac4e716a8be2 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-04-15 11:14:43 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-04-15 11:14:43 +0900 [Doc] Add Hash#value? into call-seq (#4293) Notes: Merged-By: zzak commit d9a5281363f2ffb024fbce9d647f5aa2362b5477 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-15 02:51:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-15 02:51:49 +0900 * 2021-04-15 [ci skip] commit b190f6ef137c192b69103918864ddb242626edf7 Author: universato <universato@gmail.com> AuthorDate: 2021-04-15 02:13:42 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-04-15 02:51:14 +0900 [ruby/matrix] Fix a typo in a error message commit 4eefb057257b169c50715e7b38865421380f619b Author: Peter Zhu <peter.zhu@shopify.com> AuthorDate: 2021-04-13 03:20:55 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-04-13 22:37:50 +0900 Add RSymbol struct back into RVALUE Commit 0ca714fa1aa3fbe4fb60ae1e5b730e544dabc27b removed RSymbol from RVALUE. This commit adds RSymbol back into RVALUE. Notes: Merged: https://github.com/ruby/ruby/pull/4378 commit 393923b50d472468c078c08a4b6f90e7186deb4a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-13 14:49:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-13 14:50:13 +0900 Inline LONG_LONG conversions Not only NUM2LL, also LL2NUM, ULL2NUM and NUM2ULL. commit f8e1bf283d328dda6334ecca5170b72b870f0da2 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-04-12 11:37:01 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-04-13 14:30:21 +0900 workaround MSVC error Previous code failed to compile on MSVC. Log: https://github.com/ruby/ruby/pull/4371/checks?check_run_id=2304484466 This is possibly due to the fact that: 1. `Data_Wrap_Struct(...)` appears in a source code 2. which expands to `rb_data_object_wrap(...)` 3. which expands to `RUBY_MACRO_SELECT(rb_data_object_wrap_, RUBY_UNTYPED_DATA_WARNING)` 4. which expands to `rb_data_object_wrap_0` 5. which expands to `rb_data_object_wrap`, so far so good, but 6. this is a recursive macro expansion (see step 2). Everybody stops expanding... - in step 4 for MSVC, and - in step 5 for GCC etc. I have no idea why but this proposed changeset prevents MSVC from stopping at step 4. commit 6413dc27dca1347d95f0b37527a794b182e4f7b9 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-04-09 18:01:15 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-04-13 14:30:21 +0900 dependency updates Notes: Merged: https://github.com/ruby/ruby/pull/4371 commit f411fcd14587cfbf1efb86944134b993c04b050e Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-04-09 17:56:43 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-04-13 14:30:21 +0900 get rid of #pragma GCC diagnostic ignored "-Wundef" Use of TOKEN_PASTE was a bad idea at the first place. Just use ## everywhere. Nobody practically lacks token pasting. Notes: Merged: https://github.com/ruby/ruby/pull/4371 commit 6878d51731c596fa4dc375b997c1c883d585db02 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-13 13:12:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-13 13:12:52 +0900 * 2021-04-13 [ci skip] commit 12f7ba5ed4a07855d6a9429aa627211db3655ca7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-12 22:56:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-13 12:05:31 +0900 Make String#crypt ractor-safe commit df7efdcb6b7fd4286fe7d1fe853fb679aa6a5120 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-12 22:47:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-12 22:47:07 +0900 Get rid of LONG_LONG redefinition commit 59171378fb1b22d66daf9a028bc07812cabbdfcc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-12 15:58:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-12 15:58:32 +0900 * 2021-04-12 [ci skip] commit a5688b5ce6e87a5b881a4d52d4e59b6fe807e807 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-12 14:42:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-12 15:32:49 +0900 Support non-standard `struct stat` [Bug #17793] On 32-bit Android: * `st_dev`/`st_rdev` are not `dev_t` * `st_mode` is not `mode_t` commit 799ea1d1540aca03542ee31647052343507a4b41 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-11 20:15:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 21:59:45 +0900 mkmf.rb: convert also arch_hdrdir [Bug #16651] commit 9f9045123efefbd11dd397b4d59596290765feec Author: tompng (tomoya ishida) <tomoyapenguin@gmail.com> AuthorDate: 2021-04-11 19:04:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 19:05:26 +0900 st.c: skip all deleted entries [Bug #17779] Update the start entry skipping all already deleted entries. Fixes performance issue of `Hash#first` in a certain case. commit 60bdf03b6d982777656acc11bdeb2ca4b4c3f1ef Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-11 13:21:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 13:21:33 +0900 [DOC] Adjusted spacing [ci skip] commit 37b96d6773a2151fb3193cab6b9e3f7328915844 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-11 13:18:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 13:18:47 +0900 sync_default_gems.rb: merge only files named as each gem commit dbdd8c2dfe229023daed4e00147229a3c7acdad1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-11 09:59:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 09:59:01 +0900 sync_default_gems.rb: ignore rakelib [ci skip] commit ec0158782729756021671fdbbd391ef56e7cd7cf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-11 09:05:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 09:06:51 +0900 Revert "[ruby/optparse] No document in rakelib" [ci skip] This reverts commit bd7430c7aacd135419609eec72e3889cd00a6f73. No rakelib in ruby itself. commit f89486965b64bc04ed49073fd5ef48390e0026d2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-11 09:03:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 09:03:36 +0900 [ruby/optparse] Moved rdoc files to doc/optparse https://github.com/ruby/optparse/commit/cccb28e0de commit cb01437c24ce3f819ef15947748e3c723b9c52c6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-11 08:49:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 08:52:58 +0900 [ruby/optparse] Fix relative paths https://github.com/ruby/optparse/commit/8be031b539 commit bd7430c7aacd135419609eec72e3889cd00a6f73 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-09 23:20:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 08:52:55 +0900 [ruby/optparse] No document in rakelib https://github.com/ruby/optparse/commit/4ff48f24c9 commit 1bad4bdf524fc07be8ece1dc784fdbedc07d8a97 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-11 06:30:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 08:52:54 +0900 [ruby/optparse] More on tutorial (#16) - Added example in "Argument Converters"; it doesn't seem right for a tutorial to have no example in one of its topics (and instead just linking elsewhere). - Added section "Command-Line Abbreviations." - Added section "Keyword Argument into," showing how to: - Collect options. - Check for missing options. - Provide option defaults. https://github.com/ruby/optparse/commit/39d39676c4 commit ff0dac184902e42fac148940cd6c026679a0ee21 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-11 00:05:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 08:52:52 +0900 [ruby/optparse] Rdoc (#15) * Resolve shared mixed_names.rb * Add long option with negation * Show --help for all examples * Table of contents for tutorial * Move argument converters to separate rdoc * Add references to argument_converters.rdoc * Tune up argument converters * Change explicit links to auto-links https://github.com/ruby/optparse/commit/c91ed8d33d commit c795f30ef00e5d428b4ffaf95e91d61f4a26a505 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-09 22:21:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-11 08:52:50 +0900 [ruby/optparse] Reorganize Ruby example files for sharing (#14) https://github.com/ruby/optparse/commit/9a2352c1c9 commit 97abd0f6afeeab287b371e9ccc5dd28a33d13a83 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-11 08:40:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-11 08:40:42 +0900 * 2021-04-11 [ci skip] commit f60fba03bf86d5639ac3ad1e1c7dbd1e3407ae11 Author: Zachary Scott <zzakscott@gmail.com> AuthorDate: 2021-04-11 08:37:39 +0900 Commit: Zachary Scott <zzakscott@gmail.com> CommitDate: 2021-04-11 08:37:39 +0900 Make sure to mention ext/Setup is optional This step confused me when trying to compile Ruby after 5 years, so it should be avoided unless you need static linking. commit 4a6c7f8696f3a5df36fb752990f037b8ba9b5937 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-09 17:51:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-10 16:05:01 +0900 configure: always check for atomic/sync builtins [Bug #17787] Non-gcc compilers tend to have this intrinsic these days, e.g. xlc has `__sync` builtins. Notes: Merged: https://github.com/ruby/ruby/pull/4372 commit 8b7cab70ebf10b252c62bbc7931d0927fb9c25ad Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-09 17:37:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-10 16:05:01 +0900 configure: try `-fdeclspec` option by linking [Bug #17787] A workaround for `-f` option of AIX xlc compiler which works only on linking. Notes: Merged: https://github.com/ruby/ruby/pull/4372 commit c569c298fe7bf0ff7d51ae26193b00592e65ab8c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-09 14:49:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-10 16:05:01 +0900 just redirect preprocessed vm.c to mjit header [Bug #17787] Not all preprocessors work with output option. Notes: Merged: https://github.com/ruby/ruby/pull/4372 commit 3a3033c138c0951ad5edbf02b5c233b58a190d2f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-09 13:52:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-10 16:05:01 +0900 get rid of using `__builtin_unreachable` directly [Bug #17787] As it is an independent feature from `clz`, `ctz` and `popcount`, it might be unavailable even if the latters are built in. Notes: Merged: https://github.com/ruby/ruby/pull/4372 commit 6c7d39aabed9b70b6bf13cc27c2bff086cd99bda Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-10 12:41:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-10 12:41:36 +0900 rbinstall.rb: record default gem files commit af8ac97fcc2c6d43655fa3b9cc650a5400ee4910 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-10 11:59:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-10 11:59:09 +0900 rbinstall.rb: append "/" to directory names commit 68a6f6c4abbd554c20ccd85a538dc4576aad87f0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-10 11:57:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-10 11:57:45 +0900 mac: ignore SDKROOT at installation commit 0a93a3f4c63f025c47caf02c62f3d684ec456603 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-10 11:39:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-10 11:54:40 +0900 win32: fix RUBY_RELEASE_DATE in Makefile As it is overridden by the definition in common.mk, instead define YEAR, MONTH and DAY which are used there. This macro is useful for daily build&installation by the combination with "relative-load", for example: ```sh $ ./configure --prefix=/. --enable-load-relative \ --with-destdir='$(HOME)/.rbenv/versions/$(RUBY_RELEASE_DATE)' ``` This can install images usable by rbenv per days. commit 836da24e97d9443ffb75abbb35ced3ce52e8242f Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-04-10 06:00:05 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-04-10 06:10:08 +0900 Fix symbol export. Notes: Merged: https://github.com/ruby/ruby/pull/4374 commit ff43ecc0c1f5e1b2e475268f0f012d2081bf00bc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-10 02:48:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-10 02:48:12 +0900 * 2021-04-10 [ci skip] commit 9c31fb61148c28153ca084149b7e887abdfa408a Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-04-10 02:44:07 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-04-10 02:44:07 +0900 Fix documentation for Enumerator::Lazy#with_index If a block is given, it returns a lazy enumerator that will iterate over the block, it doesn't iterate over the block immediately. Fixes [Bug #17789] commit 582f4bc1889c3161f47a76b46b60d5b9c6fb0bde Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-09 13:59:46 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-09 13:59:46 +0900 test/ruby/test_gc_compact.rb: Use assert_separately for debugging ... the following timeout failure. http://rubyci.s3.amazonaws.com/rhel_zlinux/ruby-master/log/20210408T213303Z.fail.html.gz ``` [ 8871/21204] TestGCCompact#test_ast_compactstimeout: output interval exceeds 600.0 seconds. timeout: the process group 28416 is alive. PSOUT PGID PID ELAPSED %CPU VSZ COMMAND COMMAND PSOUT 28416 28416 12:46 0.0 108120 gmake gmake TESTS=--hide-skip -v RUBYOPT=-w test-all PSOUT 28416 28423 12:46 88.2 1446124 ruby ./test/runner.rb: TestGCCompact#test_ast_compacts timeout: INT signal sent. timeout: INT signal sent. timeout: TERM signal sent. timeout: TERM signal sent. timeout: KILL signal sent. ``` This error repeatedly occurs on RHEL s390x. This change sends SEGV when timeout occurs so that it should dump the backtrace. commit 6496c76d2a4cc3d6c4870454280d66dc399e11db Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-09 11:57:23 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-09 11:57:28 +0900 [ruby/reline] Add calling Reline::Config#reset_default_key_bindings to #reset, which is forgot to call commit a6ae593ca059491cd2787b119a5ec2769bda933b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-09 00:01:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-09 00:01:08 +0900 * 2021-04-09 [ci skip] commit 5c4ff3f00c6bd84ef0721c1077ee9c525daa68f8 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-04-08 23:53:06 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-04-08 23:53:06 +0900 Document how to handle kill/terminate interrupts in Thread.handle_interrupt The kill/terminate interrupts are internally handled not as Exception instances, but as integers. So using Exception doesn't handle these interrupts, but Object does. You can use Integer if you only want to handle kill/terminate interrupts, but that's probably more of an implementation detail, while handling Object should work regardless of the implementation. Fixes [Bug #15735] commit 0395aa6bbb23c2a4c92fbbec87803a9670174d2c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-08 21:26:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 21:41:00 +0900 Make the return type of rb_char_next the same as CharNext commit b0b3022f95b9ad4f19098b461e461dbb96f8e906 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-07 11:56:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 21:41:00 +0900 [ruby/reline] Moved development dependencies to Gemfile As expressions in a gemspec file are evaluated at the build time, but not the run time, the conditional in the gemspec will not work as intended. https://github.com/ruby/reline/commit/c09b7c454a commit 5543695a19faccea325f91c9791d06dc4d29e132 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-05 16:03:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 21:41:00 +0900 [ruby/reline] Separate keystrokes each editing mode https://github.com/ruby/reline/commit/ee23e6f3f8 commit 16f31da92e0c8722cb1f708d1a6938c386d477cf Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-04 02:44:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 21:41:00 +0900 [ruby/reline] Check WITH_VTERM env to add vterm gem as dependency https://github.com/ruby/reline/commit/27b689a7e2 commit 9e940eae604f886f48fa10e667ceb40c35924b91 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-07 12:12:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 21:41:00 +0900 [ruby/irb] Moved development dependencies to Gemfile As expressions in a gemspec file are evaluated at the build time, but not the run time, the conditional in the gemspec will not work as intended. https://github.com/ruby/irb/commit/42f364ea23 commit 3816157e5d955da422d717f278bd3d4551447348 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-07 12:07:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-08 20:42:14 +0900 [ruby/irb] Ripper::Lexer::Elem#state is defined since Ruby 2.5 And the required ruby version is 2.5 or later. https://github.com/ruby/irb/commit/ac496d4c78 commit d825e34962540d345eb3c5a70eb264b415e915a5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-08 20:36:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 20:36:58 +0900 Use autogen.sh commit ee372aa8735b8836d074b90a41bf69269292a977 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-08 14:22:59 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-08 14:26:42 +0900 test/zlib/test_zlib.rb: Set binmode to test output file Seems like the test `TestZlibGzipFile#test_gzip_reader_zcat` fails when the timestamp has `\n\n`. https://ci.appveyor.com/project/ruby/ruby/builds/38597932 ``` 1) Error: TestZlibGzipFile#test_gzip_reader_zcat: Zlib::DataError: invalid distance too far back C:/projects/ruby/test/zlib/test_zlib.rb:522:in `initialize' C:/projects/ruby/test/zlib/test_zlib.rb:522:in `new' C:/projects/ruby/test/zlib/test_zlib.rb:522:in `zcat' C:/projects/ruby/test/zlib/test_zlib.rb:522:in `block (2 levels) in test_gzip_reader_zcat' C:/projects/ruby/test/zlib/test_zlib.rb:521:in `open' C:/projects/ruby/test/zlib/test_zlib.rb:521:in `block in test_gzip_reader_zcat' C:/projects/ruby/lib/tempfile.rb:358:in `create' C:/projects/ruby/test/zlib/test_zlib.rb:510:in `test_gzip_reader_zcat' ``` The test time is around 2021-04-08 04:40 +0900. Maybe the following time should trigger the bug. ``` irb(main):001:0> Time.at(1617824266) => 2021-04-08 04:37:46 +0900 irb(main):002:0> [1617824266].pack("V") => "\n\nn`" ``` commit ec355813b08d0371024f91eab33195d8c7891805 Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-08 12:33:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 12:37:24 +0900 [ruby/optparse] gemspec: Explicit files list [ci skip] This avoid shelling out, and includes a narrower list of files. https://github.com/ruby/optparse/commit/f3ca83caff Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> commit a5ecce9187a275497895eca3fdb080ca60297931 Author: BurdetteLamar <burdettelamar@yahoo.com> AuthorDate: 2021-04-08 01:58:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 12:11:42 +0900 [ruby/optparse] Make use of option_params.rdoc https://github.com/ruby/optparse/commit/d55d9284c3 commit 5891159f9608f058b3fb2ba96a9874fc81f3d7b3 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-07 23:01:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 12:11:42 +0900 [ruby/optparse] Enhanced doc for option parameters (#11) https://github.com/ruby/optparse/commit/5618eeb49e commit fe72cff487283dbaadb9757e74f00291d772cb6f Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-04-07 03:55:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 12:11:32 +0900 [ruby/optparse] More on tutorial (#9) * More on tutorial: clearer example output https://github.com/ruby/optparse/commit/84dfd92d2a commit 2b66b224793915adb8ed27308e9db26fc273635b Author: Olle Jonsson <olle.jonsson@gmail.com> AuthorDate: 2021-04-06 17:01:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 12:09:30 +0900 [ruby/optparse] gemspec: Explicitly list 0 executables This gem exposes no executable files. https://github.com/ruby/optparse/commit/d14bf83007 commit 0d1d779c239c4e4d98c42a7e97a9f43e3c5e53ff Author: BurdetteLamar <burdettelamar@yahoo.com> AuthorDate: 2021-03-30 04:03:04 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 12:09:29 +0900 [ruby/optparse] Beginnings of tutorial https://github.com/ruby/optparse/commit/f209276f79 commit 956056db37c6d1ff0ba17746f81f83729c0fbb6b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-08 12:04:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-08 12:04:25 +0900 sync_default_gems.rb: do not reset the whole directory [ci skip] If no files to be ignored, resetting with no argument means resetting the whole directory. commit cdc0cdc77f51462b466c627efda0ec4344155c22 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-08 04:17:17 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-08 04:17:17 +0900 * 2021-04-08 [ci skip] commit d8a13e504992a45d52063f7c925408d7aad3595a Author: Peter Zhu <peter.zhu@shopify.com> AuthorDate: 2021-04-08 03:25:16 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-04-08 04:16:58 +0900 [Bug #17780] Fix Method#super_method for module alias Method#super_method crashes for aliased module methods because they are not defined on a class. This bug was introduced in c60aaed1856b2b6f90de0992c34771830019e021 as part of bug #17130. Notes: Merged: https://github.com/ruby/ruby/pull/4364 commit 587e6800086764a1b7c959976acef33e230dccc2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-07 16:43:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-07 16:43:58 +0900 * 2021-04-07 [ci skip] commit fbbc37dc1d5b329777e6d9716118db528ab70730 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-07 16:34:19 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-07 16:34:19 +0900 test/drb/test_drb.rb: Specify the host of DRbServer to try fixing the following error. http://rubyci.s3.amazonaws.com/opensuseleap/ruby-master/log/20210407T063004Z.log.html.gz ``` [ 605/21105] DRbTests::TestDRbSSLAry#test_06_next/home/chkbuild/chkbuild/tmp/build/20210407T063004Z/ruby/lib/drb/drb.rb:1138:in `method_missing': undefined method `regist' for [1, 2, "III", 4, "five", 6]:Array (NoMethodError) from /home/chkbuild/chkbuild/tmp/build/20210407T063004Z/ruby/lib/drb/extserv.rb:21:in `block in initialize' from /home/chkbuild/chkbuild/tmp/build/20210407T063004Z/ruby/.ext/common/monitor.rb:202:in `synchronize' from /home/chkbuild/chkbuild/tmp/build/20210407T063004Z/ruby/.ext/common/monitor.rb:202:in `mon_synchronize' from /home/chkbuild/chkbuild/tmp/build/20210407T063004Z/ruby/lib/drb/extserv.rb:20:in `initialize' from /home/chkbuild/chkbuild/tmp/build/20210407T063004Z/ruby/test/drb/ut_array_drbssl.rb:35:in `new' from /home/chkbuild/chkbuild/tmp/build/20210407T063004Z/ruby/test/drb/ut_array_drbssl.rb:35:in `<main>' = 100.05 s ``` Here is my analysis: The test of drb used both `druby://:0` and `druby://localhost:0` for DRbServer. However, the former listens on IPv4, and the latter does on IPv6, depending on environments. The port 0 is automatically assigned, but sometimes the same port is used to both because they are different protocols (IPv4 and IPv6). In this case, their URIs are resolved to the completely same one (`druby://localhost:port`), which confuses the method `DRb.here?` which determines the DRbObject is remote or local. This changeset uses `druby://localhost:0` consistently. commit 31ba81788729944705e9f666b52c5ca4990c311d Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-04-06 16:02:24 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-04-06 16:03:20 +0900 Try to fix Leaked file descriptor https://github.com/ruby/ruby/runs/2274767991?check_suite_focus=true#step:15:118 ``` Leaked file descriptor: DRbTests::TestDRbTCP#test_immediate_close: 7 : #<TCPServer:fd 7, AF_INET, 0.0.0.0, 42451> Leaked file descriptor: DRbTests::TestDRbTCP#test_immediate_close: 9 : #<IO:fd 9> Leaked file descriptor: DRbTests::TestDRbTCP#test_immediate_close: 10 : #<IO:fd 10> ``` commit 93c73ab8982b23faed6d19b82c0f17de9338ff13 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-06 15:19:23 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-06 15:19:23 +0900 spec/ruby/library/matrix/: Change the version guard to 3.0.2 [Bug #17521] is not backported to 3.0.1. commit ff91b97c83c5e9aa67bc4032d70f0ed19b334f44 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-04-06 11:25:10 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-04-06 12:02:46 +0900 The guard is to alert patchlevel of X.Y.0 commit 3e5b69141036bcedc07b488613f87c154e921d1b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-06 09:34:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-06 09:34:48 +0900 * 2021-04-06 [ci skip] commit d235dd446175ab15b16644ba50a705e24ed4faf5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-06 09:33:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-06 09:33:53 +0900 update-deps: prepare to run if not yet done commit e0bd293855d0062a895233e7735b9c65db7c5500 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-05 23:19:44 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-05 23:19:44 +0900 Update tool/format-release * remove bz2 entries for Ruby 3 series * remove stats information except "X.X.0" release commit 856a9701fd13edbb9d5f0fa773082d312195df90 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-05 21:20:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-05 21:20:51 +0900 Get rid of multibyte prefix to tmpdir Notes: Merged: https://github.com/ruby/ruby/pull/4354 commit a00d92326c5b7431592d29b408be332f65ec8dc2 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-04-05 21:06:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-05 21:08:58 +0900 [ruby/tmpdir] Bump version to 0.1.2 https://github.com/ruby/tmpdir/commit/c79bc7adf6 commit 4b6fa03a72b23fa03a8f37cbfdcad3f0251832cf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-01 01:17:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-05 21:08:57 +0900 [ruby/tmpdir] Make usable chars more strict Remove other than alphanumeric and some punctuations considered filesystem-safe, instead of removing some unsafe chars only. https://hackerone.com/reports/1131465 https://github.com/ruby/tmpdir/commit/adf294bc2d commit 2f992272f20d29fe20e70555ffabe09cf80d8655 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-05 21:07:19 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-04-05 21:07:19 +0900 Update REXML to 3.2.5 (#4353) Notes: Merged-By: mame <mame@ruby-lang.org> commit 4b926330430738a61c4f4307b1ead2232c2e22c1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-05 12:17:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-05 14:00:21 +0900 [ruby/irb] Suppress verbose messages in the parallel test `:VERBOSE` flag needs to be set prior to `IRB::Irb.new`. https://github.com/ruby/irb/commit/0dbe292979 commit d30d1e648dc21109ed84083dc1c8d38c556d4255 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-05 11:48:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-05 11:48:02 +0900 * 2021-04-05 [ci skip] commit 52fb0a293228b6236cfc49195028b944f8b12c25 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-24 23:14:10 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-04-05 11:47:42 +0900 [Doc] Drop signature around removed IO#codepoints Follow 43b95bafd57d04c8fb401d3a9b52aca3f5b4b0be Notes: Merged: https://github.com/ruby/ruby/pull/4320 commit 3cd3d25dde87b5afec30881ec72cedf92216155f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-04 21:52:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-04 23:29:16 +0900 Unify code by word sizes commit bacb646169bf33ee6a317fa647ddd67853fbe62d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-04 02:50:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-04 22:39:16 +0900 [ruby/irb] Check WITH_VTERM env to add vterm gem as dependency https://github.com/ruby/irb/commit/23c8b73cb1 commit 2fcae4f90ab08ae06c28c4aa0989ee06d97f0536 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-04-04 15:26:09 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-04-04 15:26:09 +0900 test/ruby/test_lambda.rb: Remove "warning: assigned but unused variable" commit ffaaa2e65dc841d54674e3414d744aa2b98e652c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-04 11:35:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-04 11:35:14 +0900 * 2021-04-04 [ci skip] commit be343946c76f00393ddbd12a7d7dabb575af0053 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-04-04 11:34:51 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-04-04 11:34:51 +0900 Refactor rb_obj_call_init and rb_obj_call_init_kw (#4351) Notes: Merged-By: nobu <nobu@ruby-lang.org> commit 47abb70234867bd7dbc2f324ebcae7873fc4625e Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-03 20:17:34 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-03 20:22:56 +0900 [ruby/reline] Use vterm 0.0.5 or newer on Unix like OSes because suppresses SEGV https://github.com/ruby/reline/commit/7562cf3b5f commit 281c6f505580d31baa747ecb6cb189f02782c5ab Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-03 20:21:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-03 20:21:09 +0900 [ruby/irb] Use vterm 0.0.5 or newer on Unix like OSes because suppresses SEGV https://github.com/ruby/irb/commit/b034bd22b0 commit f07931818710b4d681db2678f87951bedbce014b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-03 20:20:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-03 20:21:02 +0900 [ruby/irb] Use yamatanooroti gem for tests https://github.com/ruby/irb/commit/f053f49c29 commit 6b906ad5643fc6bcd595863ba40b2a283db8de8f Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-04-03 14:45:18 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-04-03 14:45:18 +0900 [Doc] Link to doc/contributing.rdoc from CONTRIBUTING.md (#4266) * [Doc] Link to doc/contributing.rdoc from CONTRIBUTING.md [ci skip] * [Doc] Add path prefix `doc/` https://github.com/ruby/ruby/pull/4266#discussion_r598220279 * [Doc] Prefer relative path in CONTRIBUTING.md This patch by nobu (Nobuyoshi Nakada), thank you! ref: https://github.com/ruby/ruby/pull/4266#discussion_r598212402 Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged-By: nobu <nobu@ruby-lang.org> commit 8a4472fb6d2df0f6407cef24df6a038be90d1462 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-03 01:25:34 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-03 01:28:42 +0900 [ruby/reline] Version 0.2.5 https://github.com/ruby/reline/commit/22ce5651e5 commit 3ffb04474ab3af83ca99d58405187b18cd55a248 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-03 01:25:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-03 01:25:58 +0900 [ruby/irb] Version 1.3.5 https://github.com/ruby/irb/commit/22e2ddf715 commit 64b991b0cd98ee8f23266b8cbea0fa34bdaab1ec Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-21 14:36:57 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-03 01:22:09 +0900 [ruby/rdoc] Links to document texts without "rdoc-ref:" prefix While links to generated HTML from RDoc file needs to be prefixed by "rdoc-ref:" currently, in case of explicit references this seems just redundant. Also GitHub RDoc support does not work with this prefix. This patch lets links to such document texts (".rb", ".rdoc" and ".md" now) refer URLs generated by `RDoc::TopLevel#http_url` without the prefix. https://github.com/ruby/rdoc/commit/f18b27b69d commit a6948329f8f89fb390215086fe4a888915fd589e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-21 14:34:46 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-03 01:22:00 +0900 [ruby/rdoc] Clarify that dots in URL are replaced The dots in all path components from the document root are replaced with underscores, not only in the basename. https://github.com/ruby/rdoc/commit/7a3417ea4c commit 61e1cf23ac0d122fba3ad4cbaa402c7c94ad54d3 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-16 19:01:50 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-03 01:21:50 +0900 [ruby/rdoc] Treat emphasis tags as excluding other notations And exclusive notations don't exclude other exclusive notations. https://github.com/ruby/rdoc/commit/b8baa9a435 commit e84d275fe6d0c14ba58ce73b13323879c060b7ae Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-16 18:59:22 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-03 01:21:38 +0900 [ruby/rdoc] Treat other tags as word boundaries https://github.com/ruby/rdoc/commit/8222f85a17 commit 54aa11efa8b1be2c5d20402890d6d2fa90aa19a8 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-14 18:26:19 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-03 01:21:12 +0900 [ruby/rdoc] Disable other notations in <code> tags https://github.com/ruby/rdoc/commit/0cd3b55210 commit ab89c45b906380353d1b399781170cafe1d7b503 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-26 22:46:40 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-03 01:17:08 +0900 [ruby/irb] Evaluate each toplevel statement https://github.com/ruby/irb/commit/bc1b1d8bc3 commit 254cd937c240281b4283bacb61b944eb52120ba5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-03 00:46:01 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-03 01:15:46 +0900 [ruby/irb] Add test for multiline paste https://github.com/ruby/irb/commit/e93c9cb54d commit 0eb14919573379b86efc2cab79f0c2fb1b22923a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-25 18:58:25 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-03 01:14:31 +0900 [ruby/irb] Add yamatanooroti test example https://github.com/ruby/irb/commit/279155fcee commit 9de0086463b9ccdca1ee14f2026d34e9a9ed1e90 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-03 00:49:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-03 00:49:43 +0900 * 2021-04-03 [ci skip] commit 3cab8c087f0093f2d4669c283be30d01f8e17d5d Author: Cody Cutrer <cody@instructure.com> AuthorDate: 2021-03-17 06:45:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-03 00:49:29 +0900 [ruby/irb] process multi-line pastes as a single entity this allows pasting leading-dot chained methods correctly: ```ruby class A def a; self; end def b; true; end end a = A.new a .a .b ``` will properly return `true` instead of erroring on the `.a` line: ``` irb(main):001:1* class A irb(main):002:1* def a; self; end irb(main):003:0> end irb(main):004:0* irb(main):005:0> a = A.new irb(main):006:0* irb(main):007:0> a irb(main):008:0> .a irb(main):009:0> .a => #<A:0x00007f984211fbe8> ``` https://github.com/ruby/irb/commit/45aeb52575 commit 7e93917458cdc67399e82233ff0f13e3c8bd7065 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-04-02 17:18:37 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-04-02 17:33:48 +0900 [ruby/reline] Reset @rest_height when clear screen https://github.com/ruby/reline/commit/3a7019b0d5 commit 9e336f73fb7d37f3b09e360f8204828bbca51cd5 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-04-01 14:49:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-02 16:40:06 +0900 [ruby/irb] Add show_source command https://github.com/ruby/irb/commit/108cb04352 commit 43e0677c6de891c184da4ec66a03005d0824d5d0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-02 09:55:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-02 14:17:33 +0900 Fill the ring-buffer with the fallback value Fill with the pointer to the root position, instead of zero and comparing later. Also suppress a false warning by Visual C++. ``` file.c(4759): warning C4090: 'function': different 'const' qualifiers ``` Notes: Merged: https://github.com/ruby/ruby/pull/4348 commit 79af8ce6d7f46e7e79180dbd6bef6681c1329bd9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-01 21:09:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-02 10:52:53 +0900 [ruby/irb] Colorize `__END__` as keyword https://github.com/ruby/irb/commit/9b84018311 commit ecfa8dcdbaf60cbe878389439de9ac94bc82e034 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-04-02 02:28:00 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-04-02 09:25:33 +0900 fix return from orphan Proc in lambda A "return" statement in a Proc in a lambda like: `lambda{ proc{ return }.call }` should return outer lambda block. However, the inner Proc can become orphan Proc from the lambda block. This "return" escape outer-scope like method, but this behavior was decieded as a bug. [Bug #17105] This patch raises LocalJumpError by checking the proc is orphan or not from lambda blocks before escaping by "return". Most of tests are written by Jeremy Evans https://github.com/ruby/ruby/pull/4223 Notes: Merged: https://github.com/ruby/ruby/pull/4347 commit c080bb2284c06fbc5e8090c27781228d487c4021 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-04-02 01:16:58 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-04-02 02:10:02 +0900 [Doc] Update to FrozenError from RuntimeError in Object#freeze Notes: Merged: https://github.com/ruby/ruby/pull/4346 commit 1ac68bba4ef9e51c383ad9bad21d41a5ec8c0869 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-04-01 19:06:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-02 01:57:44 +0900 [ruby/irb] SIGINT should raise Interrupt after IRB session https://github.com/ruby/irb/commit/5832cfe75b commit 8e636bd0de7ccb7cfd17cc3b9b79f3bd05a857fd Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-02 01:48:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-02 01:48:13 +0900 * 2021-04-02 [ci skip] commit ccb0b7ab7dd8667f9cd6d3d74483ffbc083d9c24 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-01 23:22:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-02 01:47:58 +0900 [ruby/irb] Suppress verbose messages in the parallel test `:VERBOSE` flag needs to be set prior to `IRB::Irb.new`. https://github.com/ruby/irb/commit/78604682d9 commit 9513fcd5bc50deed1d60fa7a26a573d48654d9ec Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-01 22:54:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-04-01 22:54:42 +0900 Suppress a warning Loop variables of `list_for_each` need to be initialized. commit 68a8f611e01c1e43a7362f590316268ccf7865c5 Author: David CARLIER <devnexen@gmail.com> AuthorDate: 2021-04-01 05:28:58 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-04-01 19:51:06 +0900 coroutine: Darwin on ARM64 needs alignment of 2^2 commit e675a7899cde096373130100a5ef799941c71992 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-04-01 12:00:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-04-01 12:00:35 +0900 * 2021-04-01 [ci skip] commit a5567350f706d6c72b2d4e0cdc95ceff80e87bbf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-04-01 12:00:10 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-04-01 12:00:10 +0900 Refactored sub-seconds normalizations * separated argument to `timespec2timew` from `timespec` to seconds and nano-seconds. * unified nano-seconds and micro-seconds normalizations. Notes: Merged: https://github.com/ruby/ruby/pull/4343 Merged-By: nobu <nobu@ruby-lang.org> commit 2a02b61fae2c5dcfaf123f43c08c7c7949c1790c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-31 22:14:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-31 22:14:15 +0900 Use EnvUtil.under_gc_stress commit 1fac99afdae2671a9ca86bead5bde4d0e2eff1b4 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-03-31 17:39:40 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-03-31 19:18:32 +0900 skip marking for uninitialized imemo_env. RUBY_INTERNAL_EVENT_NEWOBJ can expose uninitialized imemo_env objects and marking it will cause critical error. This patch skips marking on uninitialized imemo_env. See: http://rubyci.s3.amazonaws.com/centos7/ruby-master/log/20210329T183003Z.fail.html.gz Shortest repro-code is provided by mame-san. Notes: Merged: https://github.com/ruby/ruby/pull/4342 commit 8b2f2a707de54ad24d787ff0bce67ed8c68cdded Author: Tom Stuart <tom.stuart@shopify.com> AuthorDate: 2021-03-26 02:42:59 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-31 18:05:08 +0900 [ruby/openssl] Use #ifdef consistently for HAVE_RB_EXT_RACTOR_SAFE We previously used a mix of both `#if` and `#ifdef`, but the latter is more reliable because it will still work if the macro is undefined. https://github.com/ruby/openssl/commit/e4a622e67e commit 5ab2625243ddb0aca03febcf61b792ebab4eb4e8 Author: Tom Stuart <tom.stuart@shopify.com> AuthorDate: 2021-03-24 18:32:15 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-31 18:05:08 +0900 [ruby/openssl] Fix OpenSSL::Engine build on Debian On Debian 9 (“stretch”) the `OPENSSL_NO_STATIC_ENGINE` macro is not defined, which causes all the `#if HAVE_ENGINE_LOAD_…` directives to fail with `error: 'HAVE_ENGINE_LOAD_…' is not defined, evaluates to 0 [-Werror,-Wundef]` while building TruffleRuby. We can accomplish the same thing with `#ifdef`, which (of course) works fine when the `HAVE_ENGINE_LOAD…` macros are also undefined. Upstreamed from oracle/truffleruby#2255, which fixed oracle/truffleruby#2254. https://github.com/ruby/openssl/commit/65e2adf1ac commit e2bf3659e184088d00d099a49e3263724f43ece2 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-03-24 13:23:09 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-31 18:05:07 +0900 [ruby/openssl] pkcs7: keep private key when duplicating PKCS7_SIGNER_INFO ASN1_dup() will not copy the 'pkey' field of a PKCS7_SIGNER_INFO object by design; it is a temporary field kept until the PKCS7 structure is finalized. Let's bump reference counter of the pkey in the original object and use it in the new object, too. This commit also removes PKCS7#add_signer's routine to add the content-type attribute as a signed attribute automatically. This behavior was not documented or tested. This change should not break any working user code since the method was completely useless without the change above. https://github.com/ruby/openssl/commit/20ca7a27a8 commit 66d2fc7989d741bf5a73286233139901cecb4fc2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-31 15:18:37 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-03-31 15:18:52 +0900 Enclose the code that was accidentally a link in "tt" commit d977849e1c4fb231247c3178d4d3d971722245f3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-31 00:09:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-31 00:09:39 +0900 * 2021-03-31 [ci skip] commit 94d564077c982aa617e314de622b9391abbd9655 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-30 23:41:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-30 23:41:21 +0900 Text files should end with a newline commit 5cdf99f64e344b8e4638824d55f5caf33be682ca Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-30 23:28:49 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-30 23:28:49 +0900 mkmf: fixed install directories of header files in extension libraries [Bug #17761] When installing an extension library which provides a header, that header should be installed under site_ruby (or vendor_ruby when "--vendor" option was given to extconf.rb). However, currently this file is about to be installed in the core include directory. Notes: Merged: https://github.com/ruby/ruby/pull/4339 Merged-By: nobu <nobu@ruby-lang.org> commit 9713acd731309647b901825ee48af35984a9b4b8 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-30 20:58:34 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-30 20:58:34 +0900 Fix `coroutine_type` variable name commit a9c5c2d614f30a616970245fef3e7ffc151e2ecf Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-03-30 15:11:17 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 19:16:59 +0900 Check errno before invoking scheduler in `rb_io_wait_readable/writable`. See <https://bugs.ruby-lang.org/issues/17527> for more details. Notes: Merged: https://github.com/ruby/ruby/pull/4338 commit 611e711085c7e3984555a79626d025c8b876eced Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-03-30 16:31:19 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 19:16:59 +0900 Test incorrect behaviour of `rb_io_wait_readable/writable`. Notes: Merged: https://github.com/ruby/ruby/pull/4338 commit b507f65d4461757c577a9f90325967e92a895520 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-03-30 14:46:24 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 15:23:17 +0900 Support for native riscv64 coroutines. Notes: Merged: https://github.com/ruby/ruby/pull/4337 commit 3d32c217586a48c709b762865a8abc46f9098455 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-03-30 13:33:15 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 14:38:42 +0900 Disable public interface for now. Notes: Merged: https://github.com/ruby/ruby/pull/4173 commit 92449e0e99ae0e44f0deec5e59a7146824872952 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-02-12 12:54:52 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 14:38:42 +0900 Fix handling of timeout accessing scheduler outside of non-blocking context. Notes: Merged: https://github.com/ruby/ruby/pull/4173 commit af1c587546c34190721bb8b72e86985e9b79bdc6 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-02-12 11:06:07 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 14:38:42 +0900 Improve timeout tests. Notes: Merged: https://github.com/ruby/ruby/pull/4173 commit 511acba4aeb3e35cf025a8a6cde4241b7b5167f3 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2020-12-26 18:09:49 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 14:38:42 +0900 Update method name and add documentation. Notes: Merged: https://github.com/ruby/ruby/pull/4173 commit 09c865d541472366550804ef09bf14e22a193644 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-02-12 10:40:50 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 14:38:42 +0900 Fix native implementation. # Conflicts: # scheduler.c Notes: Merged: https://github.com/ruby/ruby/pull/4173 commit 67f60ebb6494ca6d67d8797625b9c3af9b4135f5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-11 18:16:15 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 14:38:42 +0900 Fixed a compilation error Notes: Merged: https://github.com/ruby/ruby/pull/4173 commit c05dd7dc85311d1a62204aff5f633e758efae949 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-02-11 17:55:31 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 14:38:42 +0900 Prefer `rb_check_funcall`. Notes: Merged: https://github.com/ruby/ruby/pull/4173 commit 9b9bbaec111c34d15d75750e300d94fb5c30c8b1 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-02-11 17:29:17 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 14:38:42 +0900 Update lib/timeout.rb Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4173 commit 4c53dc970bf82e4c5fb237be4b2404bcb07496d2 Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-02-11 15:17:54 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-30 14:38:42 +0900 Add hook for `Timeout.timeout`. Notes: Merged: https://github.com/ruby/ruby/pull/4173 commit 93753d7ee738475f7445e5cfc405756a4fb7f850 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-30 14:28:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-30 14:28:04 +0900 * 2021-03-30 [ci skip] commit d65d661151961d43e6f1c6ad1fe59dcc0b1eb143 Author: Aleksandar Ivanov <aivanov92@gmail.com> AuthorDate: 2021-03-30 02:11:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-30 14:27:51 +0900 [ruby/irb] Prevent the completion from crashing if rdoc is missing There are cases where ruby is installed without rdoc and e.g. lib/irb/cmd/help.rb also handles the LoadError Here is how to replicate the issue: ``` $ docker run -it alpine:3.13.3 sh / # apk add ruby ruby-irb ruby-io-console / # irb irb(main):001:0> Class[TAB][TAB] ``` And you end up with something like: ``` irb(main):001:0> ClassTraceback (most recent call last): 34: from /usr/bin/irb:23:in `<main>' 33: from /usr/bin/irb:23:in `load' 32: from /usr/lib/ruby/gems/2.7.0/gems/irb-1.2.6/exe/irb:11:in `<top (required)>' 31: from /usr/lib/ruby/2.7.0/irb.rb:400:in `start' 30: from /usr/lib/ruby/2.7.0/irb.rb:471:in `run' 29: from /usr/lib/ruby/2.7.0/irb.rb:471:in `catch' 28: from /usr/lib/ruby/2.7.0/irb.rb:472:in `block in run' 27: from /usr/lib/ruby/2.7.0/irb.rb:537:in `eval_input' 26: from /usr/lib/ruby/2.7.0/irb/ruby-lex.rb:150:in `each_top_level_statement' 25: from /usr/lib/ruby/2.7.0/irb/ruby-lex.rb:150:in `catch' 24: from /usr/lib/ruby/2.7.0/irb/ruby-lex.rb:151:in `block in each_top_level_statement' 23: from /usr/lib/ruby/2.7.0/irb/ruby-lex.rb:151:in `loop' 22: from /usr/lib/ruby/2.7.0/irb/ruby-lex.rb:154:in `block (2 levels) in each_top_level_statement' 21: from /usr/lib/ruby/2.7.0/irb/ruby-lex.rb:182:in `lex' 20: from /usr/lib/ruby/2.7.0/irb.rb:518:in `block in eval_input' 19: from /usr/lib/ruby/2.7.0/irb.rb:704:in `signal_status' 18: from /usr/lib/ruby/2.7.0/irb.rb:519:in `block (2 levels) in eval_input' 17: from /usr/lib/ruby/2.7.0/irb/input-method.rb:294:in `gets' 16: from /usr/lib/ruby/2.7.0/forwardable.rb:235:in `readmultiline' 15: from /usr/lib/ruby/2.7.0/forwardable.rb:235:in `readmultiline' 14: from /usr/lib/ruby/2.7.0/reline.rb:175:in `readmultiline' 13: from /usr/lib/ruby/2.7.0/reline.rb:238:in `inner_readline' 12: from /usr/lib/ruby/2.7.0/reline.rb:238:in `loop' 11: from /usr/lib/ruby/2.7.0/reline.rb:239:in `block in inner_readline' 10: from /usr/lib/ruby/2.7.0/reline.rb:270:in `read_io' 9: from /usr/lib/ruby/2.7.0/reline.rb:270:in `loop' 8: from /usr/lib/ruby/2.7.0/reline.rb:311:in `block in read_io' 7: from /usr/lib/ruby/2.7.0/reline.rb:240:in `block (2 levels) in inner_readline' 6: from /usr/lib/ruby/2.7.0/reline.rb:240:in `each' 5: from /usr/lib/ruby/2.7.0/reline.rb:241:in `block (3 levels) in inner_readline' 4: from /usr/lib/ruby/2.7.0/reline/line_editor.rb:820:in `input_key' 3: from /usr/lib/ruby/2.7.0/reline/line_editor.rb:608:in `complete' 2: from /usr/lib/ruby/2.7.0/irb/completion.rb:269:in `block in <module:InputCompletor>' 1: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require' /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require': cannot load such file -- rdoc (LoadError) ``` https://github.com/ruby/irb/commit/a2d299c2ac commit 62e66aedb08745eb7ff95575b5555c72baf1d961 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-24 05:21:41 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-03-29 23:45:15 +0900 Add more tests for defined? with method calls Notes: Merged: https://github.com/ruby/ruby/pull/4213 commit 7b3c5ab8a5825a2b960e639d257f0c8a69c4186c Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-23 07:28:40 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-03-29 23:45:15 +0900 Make defined? cache the results of method calls Previously, defined? could result in many more method calls than the code it was checking. `defined? a.b.c.d.e.f` generated 15 calls, with `a` called 5 times, `b` called 4 times, etc.. This was due to the fact that defined works in a recursive manner, but it previously did not cache results. So for `defined? a.b.c.d.e.f`, the logic was similar to ```ruby return nil unless defined? a return nil unless defined? a.b return nil unless defined? a.b.c return nil unless defined? a.b.c.d return nil unless defined? a.b.c.d.e return nil unless defined? a.b.c.d.e.f "method" ``` With this change, the logic is similar to the following, without the creation of a local variable: ```ruby return nil unless defined? a _ = a return nil unless defined? _.b _ = _.b return nil unless defined? _.c _ = _.c return nil unless defined? _.d _ = _.d return nil unless defined? _.e _ = _.e return nil unless defined? _.f "method" ``` In addition to eliminating redundant method calls for defined statements, this greatly simplifies the instruction sequences by eliminating duplication. Previously: ``` 0000 putnil ( 1)[Li] 0001 putself 0002 defined func, :a, false 0006 branchunless 73 0008 putself 0009 opt_send_without_block <calldata!mid:a, argc:0, FCALL|VCALL|ARGS_SIMPLE> 0011 defined method, :b, false 0015 branchunless 73 0017 putself 0018 opt_send_without_block <calldata!mid:a, argc:0, FCALL|VCALL|ARGS_SIMPLE> 0020 opt_send_without_block <calldata!mid:b, argc:0, ARGS_SIMPLE> 0022 defined method, :c, false 0026 branchunless 73 0028 putself 0029 opt_send_without_block <calldata!mid:a, argc:0, FCALL|VCALL|ARGS_SIMPLE> 0031 opt_send_without_block <calldata!mid:b, argc:0, ARGS_SIMPLE> 0033 opt_send_without_block <calldata!mid:c, argc:0, ARGS_SIMPLE> 0035 defined method, :d, false 0039 branchunless 73 0041 putself 0042 opt_send_without_block <calldata!mid:a, argc:0, FCALL|VCALL|ARGS_SIMPLE> 0044 opt_send_without_block <calldata!mid:b, argc:0, ARGS_SIMPLE> 0046 opt_send_without_block <calldata!mid:c, argc:0, ARGS_SIMPLE> 0048 opt_send_without_block <calldata!mid:d, argc:0, ARGS_SIMPLE> 0050 defined method, :e, false 0054 branchunless 73 0056 putself 0057 opt_send_without_block <calldata!mid:a, argc:0, FCALL|VCALL|ARGS_SIMPLE> 0059 opt_send_without_block <calldata!mid:b, argc:0, ARGS_SIMPLE> 0061 opt_send_without_block <calldata!mid:c, argc:0, ARGS_SIMPLE> 0063 opt_send_without_block <calldata!mid:d, argc:0, ARGS_SIMPLE> 0065 opt_send_without_block <calldata!mid:e, argc:0, ARGS_SIMPLE> 0067 defined method, :f, true 0071 swap 0072 pop 0073 leave ``` After change: ``` 0000 putnil ( 1)[Li] 0001 putself 0002 dup 0003 defined func, :a, false 0007 branchunless 52 0009 opt_send_without_block <calldata!mid:a, argc:0, FCALL|VCALL|ARGS_SIMPLE> 0011 dup 0012 defined method, :b, false 0016 branchunless 52 0018 opt_send_without_block <calldata!mid:b, argc:0, ARGS_SIMPLE> 0020 dup 0021 defined method, :c, false 0025 branchunless 52 0027 opt_send_without_block <calldata!mid:c, argc:0, ARGS_SIMPLE> 0029 dup 0030 defined method, :d, false 0034 branchunless 52 0036 opt_send_without_block <calldata!mid:d, argc:0, ARGS_SIMPLE> 0038 dup 0039 defined method, :e, false 0043 branchunless 52 0045 opt_send_without_block <calldata!mid:e, argc:0, ARGS_SIMPLE> 0047 defined method, :f, true 0051 swap 0052 pop 0053 leave ``` This fixes issues where for pathological small examples, Ruby would generate huge instruction sequences. Unfortunately, implementing this support is kind of a hack. This adds another parameter to compile_call for whether we should assume the receiver is already present on the stack, and has defined? set that parameter for the specific case where it is compiling a method call where the receiver is also a method call. defined_expr0 also takes an additional parameter for whether it should leave the results of the method call on the stack. If that argument is true, in the case where the method isn't defined, we jump to the pop before the leave, so the extra result is not left on the stack. This requires space for an additional label, so lfinish now needs to be able to hold 3 labels. Fixes [Bug #17649] Fixes [Bug #13708] Notes: Merged: https://github.com/ruby/ruby/pull/4213 commit 190a57b16863afce3fb8ea4035aae331cda0868d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-29 15:50:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-29 19:37:25 +0900 [ruby/optparse] bump up to 0.1.1 https://github.com/ruby/optparse/commit/2fe984a603 commit e8317d90b0b102ba270b456cc6cb7c6865c6b448 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-29 16:42:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-29 19:37:24 +0900 [ruby/optparse] Fixed error message of unparsed non-option Close https://github.com/ruby/optparse/issues/3 https://github.com/ruby/optparse/commit/94c5cf4032 commit 2bbae0e91acf1090bbcea49476ef007162ec8e2b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-29 15:36:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-29 18:24:58 +0900 [ruby/optparse] Completion scripts themselves are not executable https://github.com/ruby/optparse/commit/65d8aff935 commit e97f21afcd0abbc1b03a070f9385ec7b765e5a71 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-29 15:26:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-29 18:24:56 +0900 [ruby/optparse] Exclude unnecessary files from the package https://github.com/ruby/optparse/commit/dfd9380231 commit 7846f3201a1381cf07ff7477b8a1d6744a853c78 Author: BurdetteLamar <burdettelamar@yahoo.com> AuthorDate: 2021-03-29 02:24:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-29 15:55:41 +0900 [ruby/optparse] Change *opts to *params, to avoid confusion https://github.com/ruby/optparse/commit/f5f5e202dd commit eca8ffaa0b446db0a1cacc82a2e73155f6fd3fce Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2019-07-02 07:19:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-29 15:55:41 +0900 [ruby/optparse] Add OptionParser#require_exact accessor This allows you to disable allowing abbreviations of long options and using short options for long options. Implements Ruby Feature #11523 https://github.com/ruby/optparse/commit/dfefb2d2e2 commit d474b19b5bcae951817319b821e62e68364767ad Author: Martin Rey <martin.rey@mailbox.org> AuthorDate: 2020-10-12 18:47:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-29 15:55:41 +0900 [ruby/optparse] Use ZDOTDIR env var to locate .zshrc https://github.com/ruby/optparse/commit/c4977674bf commit d87b8ce6477aed054fb52a5ab6041eebef106a9c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-29 15:19:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-29 15:19:37 +0900 sync_default_gems.rb: ignore COPYING file [ci skip] commit f16b9e7f268dc5abd649c95b710c964448982574 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-29 15:14:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-29 15:14:21 +0900 sync_default_gems.rb: IO#puts prints a newline between each argument [ci skip] commit f46bbb2e99b8c1df6a62756967b40de36039916b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-29 11:35:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-29 11:35:38 +0900 [DOC] Improve an example of Array#count comparison [ci skip] commit 875c85a8bdca6cc2c7d0a26291ec4a6b2647b195 Author: David CARLIER <devnexen@gmail.com> AuthorDate: 2021-03-24 03:39:36 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-29 05:32:40 +0900 fiber context update for Mac OS. it is more about memory accounting sake. At allocation time, we make clear we re possibly reusing regions marked as reusable. Noted also calls might not necessarily succeed at first so we do only when necessary. Notes: Merged: https://github.com/ruby/ruby/pull/4313 commit a1938ec308543d1649069bddd3bf0aeb541f3804 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-28 22:47:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-29 05:10:08 +0900 [ruby/irb] Always add input method when calling Irb.new in tests When passes input method as nil to Context.new through Irb.new, ReidlineInputMethod.new is executed and the global internal state of Reline is rewritten, therefore other tests are failed in the Ruby repository. This commit changes to use TestInputMethod. https://github.com/ruby/irb/commit/010dce9210 commit 1cdecb43499a9e821e892fd4edb4ca27b992ab09 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-29 03:18:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-29 03:18:08 +0900 * 2021-03-29 [ci skip] commit 813c3333a9364222523a9fe863df569300ac1ad1 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-29 01:02:21 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-03-29 03:17:52 +0900 [Doc] Fix Array#count comparing strategy Notes: Merged: https://github.com/ruby/ruby/pull/4332 commit 989e22f394c48aae301a0239cad14871dfa96d43 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-28 23:42:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-28 23:42:38 +0900 [ruby/io-console] bump up to 0.5.9 https://github.com/ruby/io-console/commit/302e86a28c https://github.com/ruby/io-console/commit/0690862526 commit f7faac13c6f7776cbdc20d8f59e33d26e30b93d0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-28 23:39:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-28 23:39:27 +0900 sync_default_gems.rb: remove un-committed files [ci skip] As files non-existing in the repository cannot be checked out, remove files to be ignored once, and re-check the status. commit 36bad6f14f30db59f2d51e2acbdd9143230b35c5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-28 22:58:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-28 22:58:43 +0900 sync_default_gems.rb: search the last merge more strictly [ci skip] As tag-only match, `[#{repo}]`, may find unexpected commit, e.g., 5bfca88f760727240902a70d1df0cc516ff31a70 for io-console, match by more exact URL pattern. commit 49c1c2dce35e9f818be396dacbaa9a3ff72b5985 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-28 18:52:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-28 18:52:19 +0900 sync_default_gems.rb: escape filter command [ci skip] commit 603d79952037768723247da12d9b093446446941 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-28 14:07:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-28 14:10:04 +0900 sync_default_gems.rb: message when no commits [ci skip] commit 522d4cd32f7727886f4fcbc28ed29c08d361ee20 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-28 14:09:52 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-28 14:09:52 +0900 Force recycle intermediate collection in Hash#transform_keys! [Bug #17735] * Force recycle intermediate hash * Force recycle intermediate array too https://github.com/ruby/ruby/pull/4329#issuecomment-808840718 Notes: Merged-By: nobu <nobu@ruby-lang.org> commit 9af57eeed61ad53c0a2a92a93a6a6e40704cd6ae Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-27 14:45:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-28 14:04:10 +0900 [ruby/pathname] Fix segfault of Pathname#split Fix segmentation fault of Pathname#split when File.split returns non array value [Bug #17755] https://github.com/ruby/pathname/commit/e29b49e3b1 https://github.com/ruby/pathname/commit/1db7479a74 commit 447e095413557330760558c2b0e1d82c3aa685f1 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-02-10 15:53:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-28 14:03:42 +0900 [ruby/pathname] Support Ruby 3.0 Update test/pathname/test_pathname.rb https://github.com/ruby/pathname/commit/29645187e0 https://github.com/ruby/pathname/commit/78584864de Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> commit 38ea2306d2c3a1a698424f61dabdb42cda1a904b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-28 13:57:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-28 14:02:31 +0900 sync_default_gems.rb: preserve Co-Authored-By: commit fb6ebe55d91187d9635e0183d47dbf38e95b1141 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-28 09:48:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-28 09:48:45 +0900 Hide an intermediate array commit 5e5fb72f99701dc27c66ab148471893f14e6d6f0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-28 09:42:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-28 09:42:26 +0900 Clear an intermediate hash [Bug #17735] commit 31e0382723bfb35cffe3ca485dd0577668cafa07 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-28 09:14:57 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-28 09:14:57 +0900 Keep non evaluated keys in `Hash#transform_keys!` [Bug #17735] Notes: Merged: https://github.com/ruby/ruby/pull/4294 Merged-By: nobu <nobu@ruby-lang.org> commit e398a0e53a7207152fb2139f1e4485968a07f9de Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-03-27 00:46:04 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-28 08:50:25 +0900 Remove unneeded rb_ident_hash_new function declaration Notes: Merged: https://github.com/ruby/ruby/pull/4325 commit cc15ae34314af9dd23857db4c5e2c6433f132813 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-28 08:48:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-28 08:48:06 +0900 * 2021-03-28 [ci skip] commit 0a544c0c35f7445d69402d7c53d825384c728017 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-28 08:47:42 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-28 08:47:42 +0900 Fix segmentation fault when `Module#name` returns non string value [Bug #17754] * Add test for NoMethodError#to_s does not segfault * Ensure no segfault even if Module#name is overridden Notes: Merged: https://github.com/ruby/ruby/pull/4328 Merged-By: nobu <nobu@ruby-lang.org> commit 95d9fe9538441eb57ee6752aa1c5088fc6608e34 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-03-27 21:02:41 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-03-27 21:02:41 +0900 Update to ruby/spec@fd6eddd commit 44736a6b7a2b3475db2d05187f33e3c1a7b4b4e5 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-03-27 21:02:38 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-03-27 21:02:38 +0900 Update to ruby/mspec@d1adf59 commit 31ae931e166825450dcc16d470553e67281951a2 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-27 17:22:57 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-27 17:22:57 +0900 [Doc] Update regex engine to Onigumo in doc/extension.* [ci skip] regex.c has been removed in 8e65234086a15f90585bc09cce82dbad2aa647d7 Notes: Merged: https://github.com/ruby/ruby/pull/4306 Merged-By: nobu <nobu@ruby-lang.org> commit 89fa5b1348400892eaf37083fc6a6eb70d959f63 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-03-27 16:39:01 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-27 16:39:01 +0900 Add rb_exc_exception function `rb_exc_raise` and `rb_fatal` func have similar code(in `eval.c`). I think that better cut out and replace these code like `rb_exc_exception` function. Notes: Merged: https://github.com/ruby/ruby/pull/4319 Merged-By: nobu <nobu@ruby-lang.org> commit aceb8c0b4bf37a65c78f09eaf835db72c7a47c48 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-27 12:55:46 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-27 12:55:46 +0900 Fix Enumerable#tally with some arguments pattern [Feature #17744] * Add test cases for Enumerable#tally with hash argument * Add ruby/spec for Enumerable#tally with hash argument * Fix Enumerable#tally does not update given frozen hash * Add test cases for Enumerable#tally with hash convertible arguments * Fix SEGV when Enumerable#tally takes non Hash convertible * FIx cosmetic damage enum.c Notes: Merged: https://github.com/ruby/ruby/pull/4327 Merged-By: nobu <nobu@ruby-lang.org> commit 785c77d7827677b547fa233deef0b65ec10ecf6b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-27 10:15:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-27 10:15:24 +0900 * 2021-03-27 [ci skip] commit 8a89dd2a6cb2f6b9ede15a9c7f8d3af684fca3f8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-27 10:13:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-27 10:15:01 +0900 No codesign in tests commit 9143d21b1bf2f16b1e847d569a588510726d8860 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-26 16:29:21 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-26 16:29:21 +0900 Enumerable#tally with the resulting hash [Feature #17744] Notes: Merged: https://github.com/ruby/ruby/pull/4318 Merged-By: nobu <nobu@ruby-lang.org> commit 6a352e275bfdad84bec479b84dd2bc6d76697226 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-03-26 12:37:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-26 12:37:37 +0900 [ruby/erb] Version 2.2.3 https://github.com/ruby/erb/commit/03bc4a8274 commit 3789d58c846115ce67a16c2039bf923a57786e03 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-25 18:23:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-26 12:35:52 +0900 [ruby/erb] Clarify supported ruby versions in gemspec https://github.com/ruby/erb/commit/b40db4114a commit 3c0528adf2ab7778d4702d3642b63b01ea64f789 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-26 09:44:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-26 09:44:10 +0900 * 2021-03-26 [ci skip] commit 041a4f9a5e04eb4e6f8f26d143a613a817e18717 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-26 00:38:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-26 00:38:35 +0900 Stop downloading Unicode files twice These files should have been downloaded in update-remote. commit ad8842c06d26ee634f90008efecf1cd4d76342df Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-24 15:33:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-25 18:54:02 +0900 [ruby/irb] Cache completion files to require https://github.com/ruby/irb/commit/612ebcb311 commit f45bed0a6e983abfe616455ced2e50db381ba2dd Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-25 18:06:06 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-25 18:06:06 +0900 Use XRUBY to expand path instead of platform dependent commit e7dc6f2a3cee7e64272988e23e6eb3a4b03a1608 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-25 17:01:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-25 17:10:53 +0900 Generate encoding header before enc.mk As some encodings need the corresponding header. commit cda60ee6d5e63b90412c4be87040602e9293751a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-25 13:51:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-25 15:45:20 +0900 Keep unicode_normalize/tables.rb as-is Define no dependency unless ALWAYS_UPDATE_UNICODE is set to yes, so that `make prog` works in a just-checkedout working directory. commit 12812c2bdf146805fedec79d299c2fa120a117fc Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-25 14:58:19 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-25 14:59:15 +0900 Fix test-bundler-parallel errors when out-of-place build commit b25361f7319cac953145d9d15e2e673e560ec3d9 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-03-13 04:36:58 +0900 Commit: Peter Zhu <peter@peterzhu.ca> CommitDate: 2021-03-25 03:31:10 +0900 Change heap walking to be safe for object allocation Notes: Merged: https://github.com/ruby/ruby/pull/4263 commit f9f13a4f6d8be706b17efc089c28f7bc617ef549 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-03-05 02:59:28 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-03-25 03:15:00 +0900 Ensure that caller respects the start argument Previously, if there were ignored frames (iseq without pc), we could go beyond the requested start frame. This has two changes: 1) Ensure that we don't look beyond the start frame by using last_cfp = RUBY_VM_PREVIOUS_CONTROL_FRAME(last_cfp) until the desired start frame is reached. 2) To fix the failures caused by change 1), which occur when a limited number of frames is requested, scan the VM stack before allocating backtrace frames, looking for ignored frames. This is complicated if there are ignored frames before and after the start, in which case we need to scan until the start frame, and then scan backwards, decrementing the start value until we get to the point where start will result in the number of requested frames. This fixes a Rails test failure. Jean Boussier was able to to produce a failing test case outside of Rails. Co-authored-by: Jean Boussier <jean.boussier@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4237 commit 91ab024de9d1142975f5966d67dc0a6f75394d50 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-25 00:20:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-25 00:20:52 +0900 * 2021-03-25 [ci skip] commit 2c3ac0febeda3c3a6054c42905707f6fc660071d Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-25 00:20:22 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-25 00:20:22 +0900 Update bundled_gems commit 1f08b0d18d9d1178cef1eac91f6ea97cb6b437eb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-24 20:13:55 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-24 20:13:55 +0900 Removed dln_a_out a.out format is considered extinct nowadays. Notes: Merged: https://github.com/ruby/ruby/pull/4317 Merged-By: nobu <nobu@ruby-lang.org> commit 2dcbc6ef966c3bed89a57208812f9b5f6c8fd5de Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-24 16:10:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-24 16:10:27 +0900 [ruby/irb] fix completion test when out-of-place build commit 89caf51d9346343156d5b9f1659131414c055ebd Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-24 14:25:06 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-03-24 15:43:34 +0900 [ruby/reline] Suppress crashing when completer_{quote,word_break}_characters is empty https://github.com/ruby/reline/commit/c6f1164942 commit 758f2b35f93478c481902d9d3f8876216a5dcc4d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-23 21:43:39 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-03-24 15:43:27 +0900 [ruby/reline] Support preposing and postposing for Reline.completion_proc https://github.com/ruby/reline/commit/1f469de90c commit 4b33d860e84f0a5efeefbf8a68324801a0215a08 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-23 00:56:32 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-03-24 15:43:19 +0900 [ruby/reline] Reline.delete_text removes the current line in multiline https://github.com/ruby/reline/commit/da90c094a1 commit b764c8d3c05170214802a947b2fd32c91c6cfd68 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-23 00:49:58 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-03-24 15:43:10 +0900 [ruby/reline] Add Reline.ungetc to control buffer https://github.com/ruby/reline/commit/43ac03c624 commit a5b6baae97a31f24483b2b59744799852bacc7d1 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-24 15:26:49 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-24 15:26:49 +0900 Fix test-bundler failures when XDG_CONFIG_HOME is not writable https://github.com/ruby/actions/runs/2175399707?check_suite_focus=true ``` Errno::EACCES: Permission denied @ dir_s_mkdir - /home/runner/.config/irb ``` commit 0927756e58c7d68517a1468f2327ce50989ff3f2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-24 14:55:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-24 15:11:41 +0900 [ruby/irb] Complete require and require_relative https://github.com/ruby/irb/commit/1c61178b4c commit 0259ee600857729d289959ddf5973c25159209b2 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-24 14:33:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-24 14:39:50 +0900 [ruby/irb] Change ripper_lex_without_warning to a class method https://github.com/ruby/irb/commit/d9f8abc17e commit c9d0053e67e170dce1a05616525481e2ace0b08e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-12 20:01:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-24 13:23:55 +0900 Fixed compilation errors when USE_DLN_A_OUT commit 850448abd588e085673bfde7a8a874182e3e41b8 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-03-24 00:35:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-24 13:02:54 +0900 Fix leaked file descriptor in passwd test Notes: Merged: https://github.com/ruby/ruby/pull/4312 commit 061edf6b051e1e10f388fa92f9ae4f161008864e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-24 05:10:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-24 05:10:41 +0900 * 2021-03-24 [ci skip] commit 417c648f084713e2d6fd8d6d267a7114b711ba70 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-03-24 04:02:27 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-24 05:10:25 +0900 Free iv index table IV index tables weren't being freed. This program would leak memory: ```ruby loop do k = Class.new do def initialize @a = 1 @b = 1 @c = 1 @d = 1 @e = 1 @f = 1 @g = 1 end end k.new end ``` This commit fixes the leak. Notes: Merged: https://github.com/ruby/ruby/pull/4314 commit 607aa11711a7975540e1d71c2616ae5533feb35a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-23 17:20:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-23 17:20:19 +0900 Ignore useless separators preceding a file encoding comment commit a58f9aa3504f4057950fb858ea54b28d954f947f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-23 16:44:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-23 16:44:55 +0900 Assertion for colon-separated encoding pragma commit c83bd2a5ea176f00224bc2b158fb2723af360c9e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-23 16:25:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-23 16:32:55 +0900 Refined failure messages in TestFileExhaustive#test_test commit 81d52978d03d009c9061d6a6ce1fee3dbd800b83 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-23 12:20:58 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-23 12:20:58 +0900 test/zlib/test_zlib.rb: stop a failure on armv7l The platform defines a constant File::TMPFILE, but it seems unavailable (maybe depending on the file system?). http://rubyci.s3.amazonaws.com/scw-9d6766/ruby-master/log/20210322T171707Z.fail.html.gz This change adds some rescue clauses to the test, copied from test/ruby/test_file.rb. commit 17550c6400f7fd1ba9985476abf4c92af5393519 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-23 12:20:44 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-23 12:20:44 +0900 test/ruby/test_fiber.rb: relax timeout on Solaris ... of test_many_fibers_with_threads because the test seems to take about 180 sec. on Solaris. This change extends the limit to 300 sec on Solaris. BTW, 180 sec. is too long for other normal environments, so this reverts Related to 6ab7d439f8d43234004e1760aa88a98c29129006 for them. commit 4bc09c9696a430a24f9c583668e06b4a2976025b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-23 08:20:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-23 08:20:02 +0900 Suppress verbose messages Get rid of warnings in the parallel test. ``` unknown command: "Switch to inspect mode." ``` commit c149708018135595b2c19c5f74baf9475674f394 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-23 01:30:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-23 01:30:43 +0900 * 2021-03-23 [ci skip] commit 37abe1a220d5b8adc61f4405c3d9115dd6114c04 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-23 00:04:44 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-03-23 01:30:27 +0900 [Doc] Standardize wording s/sweeped/swept/ Notes: Merged: https://github.com/ruby/ruby/pull/4307 commit 816a1d97fdcb46cec51f6fa25d191630698106d1 Author: David CARLIER <devnexen@gmail.com> AuthorDate: 2021-03-06 05:47:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-22 23:32:07 +0900 coroutine mac m1 update. using proper link register and frame pointer which equal x30/x29. Notes: Merged: https://github.com/ruby/ruby/pull/4243 commit 35d30c6ac5a882e2d3b34a9a838f39c2f58531df Author: David CARLIER <devnexen@gmail.com> AuthorDate: 2021-03-06 05:40:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-22 23:32:07 +0900 vm dump display return address in the absence of X30 in Mac ARM64. Notes: Merged: https://github.com/ruby/ruby/pull/4243 commit 5e16c3a12a7f7869109fd8b72d7f54db347e5fe5 Author: David Carlier <devnexen@gmail.com> AuthorDate: 2021-03-22 01:46:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-22 22:51:15 +0900 solaris/illumos build fix. Notes: Merged: https://github.com/ruby/ruby/pull/4301 commit 7e8a9af9db42a21f6a1125a29e98c45ff9d5833b Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-03-19 19:29:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-22 21:37:48 +0900 rb_enc_interned_str: handle autoloaded encodings If called with an autoloaded encoding that was not yet initialized, `rb_enc_interned_str` would crash with a NULL pointer exception. See: https://github.com/ruby/ruby/pull/4119#issuecomment-800189841 Notes: Merged: https://github.com/ruby/ruby/pull/4290 commit 5b272a645322c2ffe0f73c523d64832678d0de5f Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-22 02:15:46 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-03-22 21:16:19 +0900 [Doc] Fix a typo around Hash#compare_by_identity Notes: Merged: https://github.com/ruby/ruby/pull/4303 commit ad0fa53203720d52cff2d5c8b293fea5c6889dbb Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-22 18:59:25 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-22 18:59:25 +0900 [DOC] some methods of Fiber do not need to require anymore [Feature #17407] commit ec4a41c4dd40a09e58389a2cb3a956df6046a710 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-22 13:27:37 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-03-22 15:33:32 +0900 [Doc] Fix a typo s/interseting/interesting/ Notes: Merged: https://github.com/ruby/ruby/pull/4304 commit 7d3fdfb27dac456827b004d9e66a44b15f8cd762 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-22 14:10:52 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-22 14:10:52 +0900 Hash#transform_values! ensures receiver modifiable in block [Bug #17736] Notes: Merged: https://github.com/ruby/ruby/pull/4302 Merged-By: nobu <nobu@ruby-lang.org> commit db0ad48309edae28a65e3d18e9b3a15753eda777 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-22 00:20:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-22 00:20:48 +0900 * 2021-03-22 [ci skip] commit 5e2e8ad9a9d7b5b705d755f203d04a76236c5870 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-22 00:20:27 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-22 00:20:27 +0900 Add `RbConfig::CONFIG["platform"]` Means the platform with the actual CPU info on universal binary. The CPU in "arch" is fixed as "universal" to refer the header and library paths. Notes: Merged: https://github.com/ruby/ruby/pull/4300 Merged-By: nobu <nobu@ruby-lang.org> commit cb396d4214f7d1c60a9bb45420ef647468b8da2e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-21 17:53:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-21 17:57:44 +0900 Share variables defined in common GNUmakefile also in cygwin/mingw commit 94254117eef0bafcdc5fd840af46af26060ee5be Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-03-21 16:01:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-21 16:01:29 +0900 [ruby/irb] Have some right padding instead of filling out an entire line https://github.com/ruby/irb/commit/6ac8f45f5f commit 450d1f2c5c476bfd38fe01a2a616a99cd1312caf Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-03-21 15:56:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-21 15:57:10 +0900 [ruby/irb] Deal with different screen sizes e.g. http://rubyci.s3.amazonaws.com/centos8/ruby-master/log/20210321T063003Z.fail.html.gz https://github.com/ruby/irb/commit/ddb3472ba2 commit 75b38f18940764f048ded4a3938407566152cbee Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-03-21 15:48:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-21 15:50:53 +0900 [ruby/irb] Fix step's argument cols.size was calling Integer#size, which returns 8. Fixing a bug of https://github.com/ruby/irb/pull/209 https://github.com/ruby/irb/commit/c93ae4be71 commit d0b044a842ec03525ab839eb79864899ad81bed3 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-03-21 15:15:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-21 15:19:04 +0900 [ruby/irb] Fix column overflow on ls output https://github.com/ruby/irb/commit/6115754623 commit 21863470d965b8cc299b1f82417c70d5d26f8ab2 Author: Kazuki Tsujimoto <kazuki@callcc.net> AuthorDate: 2021-03-21 15:12:54 +0900 Commit: Kazuki Tsujimoto <kazuki@callcc.net> CommitDate: 2021-03-21 15:14:31 +0900 Pattern matching pin operator against expression [Feature #17411] This commit is based on the patch by @nobu. commit 232433f22423fb6a3ff7a610140c711a964d3b3d Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-03-18 17:18:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-21 13:40:21 +0900 [ruby/irb] Add whereami command https://github.com/ruby/irb/commit/bc822e4aac commit 5f72962a0955d62dfbac2f7553b725b9d1e9e60d Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-03-18 16:28:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-21 12:59:51 +0900 [ruby/irb] Implement ls command https://github.com/ruby/irb/commit/19b6c20604 commit d36ac283d188ba6d923c905a85341761fa1305c3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-21 09:42:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-21 10:07:24 +0900 Ensure the receiver hash modifiable before updating [Bug #17736] Close https://github.com/ruby/ruby/pull/4298 Notes: Merged: https://github.com/ruby/ruby/pull/4299 commit d319eb602d3fe9dbc5dab55cb85974a7c22742e5 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-21 01:57:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-21 09:38:35 +0900 Add Hash#{update, merge!} test to ensure receiver modifiable in block Notes: Merged: https://github.com/ruby/ruby/pull/4299 commit 54bfa0570d8dd2da0dbf8c8fc75b34b4cf6831a6 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-03-21 06:57:30 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-21 06:57:30 +0900 Add ins_methods_type_i function Notes: Merged: https://github.com/ruby/ruby/pull/4269 Merged-By: nobu <nobu@ruby-lang.org> commit 2d66f8e011580532aefcf14092ec102d30fc46f2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-21 00:23:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-21 00:23:00 +0900 * 2021-03-21 [ci skip] commit 298edfa4a29d4233fda2b42abdf93a0cd74928b9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-21 00:11:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-21 00:11:08 +0900 Refactor hash aset callback commit cfadbf2fc4a6547f6e0bd47b8103c5b4bbd17b20 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-20 23:53:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-20 23:53:57 +0900 Add write-barrier in tally commit 0b6554e65b902a977012150ba3ae2b170a3c061e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-20 23:41:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-20 23:42:15 +0900 Refactor hash update callbacks commit 71ba09632ba81c91ce22ca900cf01da2d9e0d53f Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-03-20 21:00:29 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-20 21:00:29 +0900 Remove unneeded declarations Notes: Merged: https://github.com/ruby/ruby/pull/4295 Merged-By: nobu <nobu@ruby-lang.org> commit 178a2a1a12bfdb6cee0fbf296ecaf1d630fdf520 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-03-20 20:55:58 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-20 20:55:58 +0900 Remove unneeded declarations in bignum.c Notes: Merged: https://github.com/ruby/ruby/pull/4271 Merged-By: nobu <nobu@ruby-lang.org> commit 7954bb056be30e86c419fe3792064d28990a4999 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-20 19:35:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-20 20:46:15 +0900 Some Hash destructive methods ensure the receiver modifiable [Bug #17736] refs: * https://bugs.ruby-lang.org/issues/17736 * https://github.com/ruby/ruby/pull/4296 This commit aims to cover following methods * Hash#select! * Hash#filter! * Hash#keep_if * Hash#reject! * Hash#delete_if I think these are not all. --- * Ensure the receiver is modifiable or not * Assert the receiver is not modified Notes: Merged: https://github.com/ruby/ruby/pull/4297 commit 278522f0535d081ff6473f210cb45f923ff8810a Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-03-20 11:08:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-20 20:25:32 +0900 [ruby/irb] Don't call Ruby 2.4+'s String#pretty_print https://github.com/ruby/irb/commit/89bcf107be commit e019dd24df4ed7063ad80d4c2e4070141793f598 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-20 19:15:38 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-20 19:15:38 +0900 Ensure the receiver is modifiable before shrinking [Bug #17736] * Ensure the receiver is modifiable before shinking [Bug #17736] * Assert the receivers are not modified Notes: Merged: https://github.com/ruby/ruby/pull/4296 Merged-By: nobu <nobu@ruby-lang.org> commit bf3eaf39df9e0edc02040409b07bdd40b04bf8fa Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-03-20 18:07:54 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-20 18:07:54 +0900 Remove unused rb_ast_parse_array declaration Notes: Merged: https://github.com/ruby/ruby/pull/4270 Merged-By: nobu <nobu@ruby-lang.org> commit 2d6617d32787a7815a699e5d991fc6a445c0c4d4 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-20 11:12:03 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-20 11:12:03 +0900 Fix typos in rhash.h (#4292) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 4ea9df0135d92706c556a58a4f6eb43ee4d08594 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-20 09:12:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-20 09:12:08 +0900 No longer aclocal is used [ci skip] commit f9dc5db38e211a83d05db3e594785357fdcf25f1 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-03-20 00:46:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-20 07:36:21 +0900 [ruby/irb] Add all lib files automatically https://github.com/ruby/irb/commit/ecc82336b7 commit 2b0e5872c7388b67cf6c572c23abc8fc7b8340dc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-20 03:05:35 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-20 03:05:35 +0900 * 2021-03-20 [ci skip] commit 1c6f5ca4d43b3c87c8792daa1602b7d33ea77bb5 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-20 03:04:55 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-20 03:04:55 +0900 configure.ac: enable FORCE_FILESYSTEM for Emscripten commit 0428c2e7df748ff16dfed080d18c8ea06f3b915a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-18 19:06:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-19 23:34:34 +0900 [ruby/irb] Define "measure" command without forced override https://github.com/ruby/irb/commit/9587ba13b5 commit 9e71f1aa4cea42c895a2857c0f9c252865468d53 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-19 18:56:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-19 18:56:41 +0900 Include CommonCrypto/CommonCryptoError.h for old Xcode commit dc7044eb48f475e5ac34e994e89115052574c451 Author: Rick Mark <rick.mark@coinbase.com> AuthorDate: 2021-03-19 15:27:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-19 15:27:42 +0900 Remove unneeded dependencies on macOS [Feature #17730] Notes: Merged: https://github.com/ruby/ruby/pull/4289 commit 4ea96f1d4f8a50c204c4367c994cdbf12cd97b64 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-19 15:23:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-19 15:23:03 +0900 Use CommonRandom if available Notes: Merged: https://github.com/ruby/ruby/pull/4289 commit a85ed626f18d1014d09fb37eb0a703976c3d2b53 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-03-19 12:29:49 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-03-19 13:21:41 +0900 Fix Enumerable#inject with high negative fixnums [Bug #17731] Notes: Merged: https://github.com/ruby/ruby/pull/4288 commit c576e63ee752f2c7ce865b1cb1398d013d55f153 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-19 12:35:48 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-19 12:35:48 +0900 gc.c: Use dedicated APIs for conservative GC in Emscripten Emscripten provides "emscripten_scan_stack" to get the beginning and end pointers of the stack for conservative GC. Also, "emscripten_scan_registers" allows the GC to mark local variables in WASM. commit e79b42c9b21abbd73aa97aec21f817704d37fd7d Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-19 12:32:33 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-19 12:32:33 +0900 configure.ac: don't use pthread_sigmask in emscripten commit d97ed004e8312a7d78e2e09ad8d3e4355b04ebfe Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-19 12:30:59 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-19 12:30:59 +0900 configure.ac: avoid spaces in a LDFLAGS option Seems like it confuses "make ruby" for emscripten. commit f748b911c9157a0bb86f38280ddfba72a55049b6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-18 18:48:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-19 07:15:55 +0900 Fix infinite loop at illegal sequence [Bug #17729] As mblen returns -1 on failure, skip the first byte and try the succeeding bytes in that case. Close https://github.com/ruby/ruby/pull/4281 Notes: Merged: https://github.com/ruby/ruby/pull/4284 commit cc281bd7ace7538527eea98a326d79c91ff48fad Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-03-18 20:43:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-19 07:07:23 +0900 Remove duplicated float_arg declaration Notes: Merged: https://github.com/ruby/ruby/pull/4283 commit dae71be2c8eeaa561de78cdc34ec3ad9f9dc9edd Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-19 04:03:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-19 04:03:33 +0900 * 2021-03-19 [ci skip] commit b9908ea666e9a710adbba10468ded8f20dfa915f Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-03-19 02:03:56 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-03-19 04:03:14 +0900 Make a few functions static Notes: Merged: https://github.com/ruby/ruby/pull/4285 commit 0ef2923c2b9afb76b3a1cebc56ebabc71c9a2ba8 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-03-16 11:15:03 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-03-18 20:34:40 +0900 Avoid rehashing in Hash#replace/dup/initialize_copy [Bug #16996] commit d094c3ef046aba0bb99fd08bcbc72ff87216e736 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-03-16 12:51:13 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-03-18 20:34:40 +0900 Avoid rehashing in Hash#select/reject [Bug #16996] commit 85f99f4b715a5954124d5014002c16652995b128 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-18 18:07:18 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-18 18:07:18 +0900 Try to fix errors in TestIRB::TestHistory too https://github.com/ruby/actions/runs/2137935523?check_suite_focus=true#step:9:562 ``` 1) Error: TestIRB::TestHistory#test_history_concurrent_use: Errno::EACCES: Permission denied @ dir_s_mkdir - /home/runner/.config/irb /home/runner/work/actions/actions/ruby/lib/fileutils.rb:253:in `mkdir' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:253:in `fu_mkdir' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:231:in `block (2 levels) in mkdir_p' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:229:in `reverse_each' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:229:in `block in mkdir_p' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:211:in `each' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:211:in `mkdir_p' /home/runner/work/actions/actions/ruby/lib/irb/init.rb:355:in `rc_file_generators' /home/runner/work/actions/actions/ruby/lib/irb/init.rb:330:in `rc_file' /home/runner/work/actions/actions/ruby/test/irb/test_history.rb:170:in `block in assert_history' /home/runner/work/actions/actions/ruby/lib/tmpdir.rb:96:in `mktmpdir' /home/runner/work/actions/actions/ruby/test/irb/test_history.rb:168:in `assert_history' /home/runner/work/actions/actions/ruby/test/irb/test_history.rb:133:in `test_history_concurrent_use' ``` commit e0dd072978e6c2c8180e75617e7ee37830caefa3 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-18 15:20:41 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-18 15:20:41 +0900 Fix errors when XDG_CONFIG_HOME points to non-writable directory `$HOME/.config` is not writable on CI because I think tests should not corrupt user's data. And GitHub Actions CI sets `XDG_CONFIG_HOME` since `Version: 20210309.1`. https://github.com/ruby/actions/runs/2130811016?check_suite_focus=true#step:16:301 ``` Errno::EACCES: Permission denied @ dir_s_mkdir - /home/runner/.config/irb ``` commit 05ebaee80e97710e895527b74908112a1d77348c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-18 02:55:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-18 02:55:53 +0900 * 2021-03-18 [ci skip] commit 04a814931a1b1f421980f3d0d0451c60ecff8682 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-03-18 01:10:42 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-18 02:55:37 +0900 return bool instead of VALUE Notes: Merged: https://github.com/ruby/ruby/pull/4279 commit 8359821870d756eb75d66c5ddb5d119f6247c35d Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-03-17 07:30:47 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-18 02:55:37 +0900 Use rb_fstring for "defined" strings. We can take advantage of fstrings to de-duplicate the defined strings. This means we don't need to keep the list of defined strings on the VM (or register them as mark objects) Notes: Merged: https://github.com/ruby/ruby/pull/4279 commit ea817c60fcbdc2c4496be045f5bf028b702561ba Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-03-17 07:25:37 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-18 02:55:37 +0900 Refactor vm_defined to return a boolean We just need this function to return whether or not the thing we're looking for is defined. If it's defined, return something true, otherwise false. Notes: Merged: https://github.com/ruby/ruby/pull/4279 commit c3971bea3351e014171910402a220770196ed1cc Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-03-17 07:16:51 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-18 02:55:37 +0900 Stop calling `rb_iseq_defined_string` in vm_defined We already have access to the string from the iseqs, so we can stop calling this function. Notes: Merged: https://github.com/ruby/ruby/pull/4279 commit 17bf478de14d0dd9098df65282f7f419cd792599 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-03-17 07:12:37 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-18 02:55:37 +0900 Store strings for `defined` in the iseqs We can know the string used for "defined" calls at compile time, then store the string in the instruction sequences Notes: Merged: https://github.com/ruby/ruby/pull/4279 commit 366e88e508de7c59d69906ad948cccd7979e932b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-17 23:51:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-17 23:55:03 +0900 [DOC] Update README [ci skip] * Use `autogen.sh`. * The subversion repository is only for old versions, and secondary now. * Moved long links to footnotes. commit 1d80d703141f01383604022f9e8e53e10865197c Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-17 23:13:22 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-17 23:13:22 +0900 autogen.sh: Make it work with sh (not bash) commit 5b54dc9ab26a7c19ddfc2a7d1104ef2e5fdc9f5d Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-17 21:00:46 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-17 21:00:46 +0900 Remove unused DEFAULT_KCODE commit 447feb0aa08e20cc5eeb8b3a6f881de261a2c9a2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-17 19:51:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-17 19:51:13 +0900 Improved autogen.sh * update in the source directory * make symbolic links instead of copies * forward the arguments to autoreconf as-is commit f9e43782995b1f77e7b10c79941bbbda15620e2a Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-17 18:52:53 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-17 18:52:53 +0900 get rid of aclocal (#4280) Notes: Merged-By: mame <mame@ruby-lang.org> commit 83f96642d2d74569cc38319d02d5922fac8f66b8 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-17 17:17:18 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-17 17:17:18 +0900 autogen.sh: Allow AUTORECONF envvar to specify the autoreconf executable commit 4250d7c910fd67c0da07c6213901009330e3cd51 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-17 16:54:22 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-17 16:54:50 +0900 autogen.sh: Added Currently it just runs "autoreconf --install" commit d58daad37bd5fd09c7ff74be17074fc51faac8d3 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-03-17 15:36:05 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-03-17 15:36:05 +0900 [Feature #17684] Declare --disable-gems is for debugging commit 3260602fa3d905ba310b9afbc5365ee52cb53d62 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-17 09:49:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-17 09:49:17 +0900 Adjusted indents [ci skip] commit 58660e943488778563b9e41005a601e9660ce21f Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-19 08:22:37 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-03-17 04:10:11 +0900 Skip refined method when exporting methods with changed visibility Previously, attempting to change the visibility of a method in a singleton class for a class/module that is prepended to and refined would raise a NoMethodError. Fixes [Bug #17519] Notes: Merged: https://github.com/ruby/ruby/pull/4200 commit 756e8a2cf3424b9a3eb9dde4a01325cba21a7e81 Author: Sorah Fukumori <sorah@cookpad.com> AuthorDate: 2021-03-17 02:40:43 +0900 Commit: Sorah Fukumori <her@sorah.jp> CommitDate: 2021-03-17 02:42:31 +0900 test_zlib(test_path_tmpfile): fix Zlib instance leak follow-up: commit cf831f49189c4a890da6845e39199a5dfaf4fb48 commit cf831f49189c4a890da6845e39199a5dfaf4fb48 Author: Sorah Fukumori <sorah@cookpad.com> AuthorDate: 2021-03-17 02:16:27 +0900 Commit: Sorah Fukumori <sorah@cookpad.com> CommitDate: 2021-03-17 02:16:27 +0900 zlib: fix Gzip{Writer,Reader}.new fails with a O_TMPFILE file commit a47697aa4459e8cc0cc4fd336ca31cfea9d734fc Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-03-16 19:47:35 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-17 00:19:37 +0900 LLDB: Introduce dump_page helper This dumps out object type information for every object on a page in the form: bits [LM R ] T_CLASS [389]: Addr: 0x1007ebcf0 (flags: 0x100000062) Notes: Merged: https://github.com/ruby/ruby/pull/4277 commit 1dca33359994271342f81b430f552c3d37de4dba Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-03-16 19:46:07 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-17 00:19:37 +0900 LLDB: Extract a dump_bits function from rp that dumps the heap page bitmaps for a slot Notes: Merged: https://github.com/ruby/ruby/pull/4277 commit d33159a2f13556dd8d2202b3d759dfafece3aed5 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-17 00:01:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-17 00:01:08 +0900 * 2021-03-17 [ci skip] commit 382d3a4516a8177acbd23e8f87e766e38cce36a8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-16 22:14:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-16 23:06:41 +0900 Improve Enumerable#tally performance Iteration per second (i/s) | |compare-ruby|built-ruby| |:------|-----------:|---------:| |tally | 52.814| 114.936| | | -| 2.18x| Notes: Merged: https://github.com/ruby/ruby/pull/4278 commit e61e9bcfb27580ae52b46fc7ca49c38f8fdeb8cd Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-03-16 22:15:46 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 22:30:33 +0900 test/openssl/test_config: skip tests for .include on older OpenSSL The .include directive was initially added by OpenSSL 1.1.1, but the syntax was later modified in 1.1.1b to improve compatibility with the parser in <= 1.1.0. The test case expects 1.1.1b's parser. https://github.com/openssl/openssl/commit/95f59d398c3f28f7ee50f092106c5910d25f9e30 The test case is failing on Ubuntu 18.04 because it still uses the initial 1.1.1 release: http://rubyci.s3.amazonaws.com/graviton2/ruby-master/log/20210316T120003Z.fail.html.gz commit 44d67128a827c65d1a3867c5d8fd190d10aa1dd2 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-03-16 22:05:04 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 22:30:18 +0900 test/openssl/test_cipher: skip AES-CCM tests on OpenSSL <= 1.1.1b AES CCM mode in OpenSSL <= 1.1.1b was overly strict in the parameters assignment order. This has been relaxed by OpenSSL 1.1.1c. https://github.com/openssl/openssl/commit/b48e3be947ddc5da6b5a86db8341081c72b9a4ee The test case is failing on Ubuntu 18.04 because it still uses the initial 1.1.1 release and has the issue: http://rubyci.s3.amazonaws.com/graviton2/ruby-master/log/20210316T120003Z.fail.html.gz commit 6c7cb00c094332a208cf36e5cd723a9ba60c41b8 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-16 21:38:00 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-16 21:40:19 +0900 test/ruby/test_regexp.rb: Avoid "ambiguity between regexp and two divisions" commit 7f0b3fb9060b75b4f15b8e7e5866d2c13c132c29 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-02-25 16:55:40 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:37:06 +0900 [ruby/openssl] sample: update obsolete API use https://github.com/ruby/openssl/commit/dafa851c0d Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit e35d3623de47b1a8d699f431460fbcba36de84f2 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-02-25 16:49:11 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:37:06 +0900 [ruby/openssl] sample: avoid "include OpenSSL" It is not a common practice and should not be done since it causes name clash: for example, Digest and Random are provided by other standard libraries of Ruby. Fixes: https://github.com/ruby/openssl/issues/419 https://github.com/ruby/openssl/commit/6a6444984b Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit a3f97007bbd1012a4b7662b8166118b81b52527a Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-02-25 17:28:23 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:37:06 +0900 [ruby/openssl] test: adjust test cases for LibreSSL 3.2.4 LibreSSL 3.2.4 made the certificate verification logic back closer to pre-3.2.2 one, which is more compatible with OpenSSL. Part of the fixes added by commit a0e98d48c91f ("Enhance TLS 1.3 support on LibreSSL 3.2/3.3", 2020-12-03) is required for 3.2.2 and 3.2.3 only (and ~3.3.1, however 3.3 does not have a stable release yet). Since both releases are security fix, it should be safe to remove those special treatment from our test suite. While we are at it, TestSSL#test_ecdh_curves is split into TLS 1.2 and TLS 1.3 variants for clarity. https://github.com/ruby/openssl/commit/a9954bac22 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 1eb6d8aa63d7ada403adb0db12382d264dea5521 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2021-02-17 22:58:40 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:37:06 +0900 [ruby/openssl] bn: check -1 return from BIGNUM functions Although the manpage says that BIGNUM functions return 0 on error, OpenSSL versions before 1.0.2n and current LibreSSL versions may return -1 instead. Note that the implementation of OpenSSL::BN#mod_inverse is extracted from BIGNUM_2c() macro as it didn't really share the same function signature with others. https://github.com/ruby/openssl/commit/9b59f34345 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 1ad222477344597038d7ec08885a41f547c2a3b4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-14 18:16:06 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:37:06 +0900 [ruby/openssl] Fixed the results of OpenSSL::Timestamp::Response#failure_info Made stored values `Symbol`s instead of `ID`s. Fixes https://bugs.ruby-lang.org/issues/17625 Co-Authored-By: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> https://github.com/ruby/openssl/commit/f2d004679a Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit e2ce3830447b95fbb7d9b8dff80b8c1716688da0 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2020-12-04 02:12:12 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:37:06 +0900 [ruby/openssl] Enhance TLS 1.3 support on LibreSSL 3.2/3.3 This defines TLS1_3_VERSION when using LibreSSL 3.2+. LibreSSL 3.2/3.3 doesn't advertise this by default, even though it will use TLS 1.3 in both client and server modes. Changes between LibreSSL 3.1 and 3.2/3.3 broke a few tests, Defining TLS1_3_VERSION by itself fixes 1 test failure. A few tests now fail on LibreSSL 3.2/3.3 unless TLS 1.2 is set as the maximum version, and this adjusts those tests. The client CA test doesn't work in LibreSSL 3.2+, so I've marked that as pending. For the hostname verification, LibreSSL 3.2.2+ has a new stricter hostname verifier that doesn't like subjectAltName such as c*.example.com and d.*.example.com, so adjust the related tests. With these changes, the tests pass on LibreSSL 3.2/3.3. https://github.com/ruby/openssl/commit/a0e98d48c9 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 4756ac00b7c016dfd85b69720486141a7c78d661 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-06-30 15:46:14 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] pkey/ec: remove OpenSSL::PKey::EC::Group.new(ec_method) form The form created an empty EC_GROUP object with the specified EC_METHOD. However, the feature was unfinished and not useful in any way because OpenSSL::PKey::EC::Group did not implement wrappers for necessary functions to set actual parameters for the group, namely EC_GROUP_set_curve() family. EC_GROUP object creation with EC_METHOD explicitly specified is deprecated in OpenSSL 3.0, as it was apparently not intended for use outside OpenSSL. It is still possible to create EC_GROUP, but without EC_METHOD explicitly specified - OpenSSL chooses the appropriate EC_METHOD for the curve type. The OpenSSL::PKey::EC::Group.new(<:GFp|:GF2m>, p, a, b) form will continue to work. https://github.com/ruby/openssl/commit/df4bec841f Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit d47210b1130ce49c2444628f6da543782b15cadf Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-12 20:57:52 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] ssl: remove SSL::SSLContext#tmp_ecdh_callback The underlying API SSL_CTX_set_tmp_ecdh_callback() was removed by LibreSSL >= 2.6.1 and OpenSSL >= 1.1.0, in other words, it is not supported by any non-EOL versions of OpenSSL. The wrapper was initially implemented in Ruby 2.3 and has been deprecated since Ruby/OpenSSL 2.0 (bundled with Ruby 2.4) with explicit warning with rb_warn(). https://github.com/ruby/openssl/commit/ee037e1460 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 945ed40862393778b1c991b00714dcaf73319c77 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2018-10-22 10:26:33 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] ssl: retry write on EPROTOTYPE on macOS Errno::EPROTOTYPE is not supposed to be raised by SSLSocket#write. However, on macOS, send(2) which is called via SSL_write() can occasionally return EPROTOTYPE. Retry SSL_write() so that we get a proper error, just as ext/socket does. Reference: https://bugs.ruby-lang.org/issues/14713 Reference: https://github.com/ruby/openssl/issues/227 https://github.com/ruby/openssl/commit/2e700c80bf Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 0b1bb1bc32906a07ed0c3cdf3e64bc10663b011d Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-12 00:00:40 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] test/openssl/test_x509store: tidy up tests for X509::Store#add_cert Rename the test case to test_add_cert_duplicate to clarify what it is actually testing. https://github.com/ruby/openssl/commit/4cc3c4110f Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit d4ad1e71ca6c1b58e5ea1b518e406a0251ca812f Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-11 18:52:37 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] test/openssl/test_x509store: break up test_verify The test case is huge and too complex. Break it up into separate test cases for better documentation. https://github.com/ruby/openssl/commit/61012df03b Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit c46b1f0bec3af8c51a9eebc6408a2895eccdff91 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-12 17:45:36 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] x509store: update rdoc for X509::Store and X509::StoreContext Add more details about each method, and add reference to OpenSSL man pages. https://github.com/ruby/openssl/commit/02b6f82c73 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 62d889c857e79001940e52e3fb2f2bf1709f00d8 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-09 00:22:08 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] x509store: fix memory leak in X509::StoreContext.new The certificate passed as the second argument was not properly free'd in the error paths. https://github.com/ruby/openssl/commit/9561199b9f Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 871c61d5d068f85595c04b8d118da1f489bc2d42 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-09 00:04:56 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] x509store: avoid ossl_raise() calls with NULL message Use the OpenSSL function name that caused the error to generate a better error message. https://github.com/ruby/openssl/commit/b31809ba3d Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit be3ba2ee4d4104a36a6dc2a15f16522454db33ae Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-08 23:00:10 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] x509store: refactor X509::StoreContext#chain Use ossl_x509_sk2ary() to create an array of OpenSSL::X509::Certificate from STACK_OF(X509). https://github.com/ruby/openssl/commit/fa1da69f92 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 08c99a4208af1a50e0ee2446ad4bb235edea00e5 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-08 19:28:11 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] x509store: emit warning if arguments are given to X509::Store.new Anything passed to OpenSSL::X509::Store.new was always ignored. Let's emit an explicit warning to not confuse users. https://github.com/ruby/openssl/commit/d173700eeb Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 88b8b3ac15223d65cf4b40cfc7d193b54b6e2f09 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-08-08 19:03:46 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] x509store: let X509::Store#add_file raise TypeError if nil is given Undo special treatment of nil and simply pass the value to StringValueCStr(). nil was never a valid argument for the method; OpenSSL::X509::StoreError with an unhelpful error message "system lib" was raised in that case. https://github.com/ruby/openssl/commit/fb2fcbb137 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 92f19f7bb043908a583f04fb737664c5010a3ec2 Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2020-07-29 12:39:09 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] [DOC] Fix RDoc markup https://github.com/ruby/openssl/commit/f36af95519 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit be1e88a277a76d614070587e9cc3b4bda92a3670 Author: Claus Lensbøl <cmol@cmol.dk> AuthorDate: 2020-07-23 21:52:10 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] Fix typo in documentation The socket is called ssl_connection, not connection https://github.com/ruby/openssl/commit/642783aeda Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 81325db5f8bcd8c3e964ff6285792c2cade29b2c Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-07-18 17:14:55 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] ssl: initialize verify_mode and verify_hostname with default values SSLContext's verify_mode expects an SSL_VERIFY_* constant (an integer) and verify_hostname expects either true or false. However, they are set to nil after calling OpenSSL::SSL::SSLContext.new, which is surprising. Set a proper value to them by default: verify_mode is set to OpenSSL::SSL::VERIFY_NONE and verify_hostname is set to false by default. Note that this does not change the default behavior. The certificate verification was never performed unless verify_mode is set to OpenSSL::SSL::VERIFY_PEER by a user. The same applies to verify_hostname. https://github.com/ruby/openssl/commit/87d869352c Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 3b43e3fa10b160fd86a51b6e09ab157ca7be723a Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-07-18 17:09:37 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] test/openssl/test_ssl: revise verify_mode test cases Add explicit test cases for the behaviors with different verify_mode. If we made a bug in verify_mode, we would notice it by failures of other test cases, but there were no dedicated test cases for verify_mode. https://github.com/ruby/openssl/commit/1ccdc05662 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 57a57e6e561cb7c350dc1953c44cbe65cf4f214c Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-07-18 16:45:01 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] test/openssl/test_ssl: revise a test case for client_cert_cb The current test_client_auth_public_key test case checks that supplying a PKey containing only public components through client_cert_cb will cause handshake to fail. While this is a correct behavior as a whole, the assertions are misleading in the sense that giving a public key is causing the failure. Actually, the handshake fails because a client certificate is not supplied at all, as a result of ArgumentError that is silently ignored. Rename the test case to test_client_cert_cb_ignore_error and simplify it to clarify what it is testing. https://github.com/ruby/openssl/commit/785b5569fc Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit c71afc9db7fd938a71f806bace7a2aed2722c0e9 Author: Colton Jenkins <jenkinscolton7@gmail.com> AuthorDate: 2020-07-06 06:25:54 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] Add compare? method to OpenSSL::PKey that wraps EVP_PKEY_cmp. Explicitly check for type given some conflicting statements within openssl's documentation around EVP_PKEY_cmp and EVP_PKEY_ASN1_METHOD(3). Add documentation with an example for compare? https://github.com/ruby/openssl/commit/0bf51da6e2 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit da6341b70942cf448888471f66dfde2cf614f052 Author: Bart de Water <bartdewater@gmail.com> AuthorDate: 2020-07-08 01:59:11 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] User lower case cipher names for maximum compatibility We ran into some Linux-based systems not accepting the upper case variant https://github.com/ruby/openssl/commit/7bc49121d5 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 13198d4968a6591ec423832c4bf00c56ffdb337a Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-06-29 22:09:35 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] hmac: implement base64digest methods OpenSSL::HMAC implements the similar interface as ::Digest. Let's add base64digest methods to OpenSSL::HMAC, too, for feature parity. https://github.com/ruby/openssl/commit/098bcb68af Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit b91f62f3840582bb3e4fbece15654e1d852c829b Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-18 16:15:07 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] hmac: migrate from the low-level HMAC API to the EVP API Use the EVP API instead of the low-level HMAC API. Use of the HMAC API has been discouraged and is being marked as deprecated starting from OpenSSL 3.0.0. The two singleton methods OpenSSL::HMAC, HMAC.digest and HMAC.hexdigest are now in lib/openssl/hmac.rb. https://github.com/ruby/openssl/commit/0317e2fc02 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit baea36c95500b128869690958262db9538c3162e Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-06-30 14:27:13 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] hmac: add a test case for OpenSSL::HMAC singleton methods https://github.com/ruby/openssl/commit/8253d7c9ce Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit fde9f806cb4fa9145e6eb73406ea4b932ddb8eb7 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-18 15:43:18 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] pkey/ec: deprecate OpenSSL::PKey::EC::Point#mul(ary, ary [, bn]) Deprecate it for future removal. However, I do not expect any application is affected by this. The other form of calling it, PKey::EC::Point#mul(bn [, bn]) remains untouched. PKey::EC::Point#mul calls EC_POINTs_mul(3) when multiple BNs are given as an array. LibreSSL 2.8.0 released on 2018-08 removed the feature and OpenSSL 3.0 which is planned to be released in 2020 will also deprecate the function as there is no real use-case. https://github.com/ruby/openssl/commit/812de4253d Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 15863069c90b1253021981b23d31f154d79f8fe6 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-13 18:15:08 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] digest, hmac, ts, x509: use IO.binread in examples where appropriate IO.read may mangle line separator, which will corrupt binary data including DER-encoded X.509 certificates and such. Fixes: https://github.com/ruby/openssl/issues/243 https://github.com/ruby/openssl/commit/93213b2730 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 9d3ffe09c47a1dfd722693965fbf7dba8571aa88 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-03-18 22:34:19 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] pkey: reimplement PKey::DH#compute_key and PKey::EC#dh_compute_key Use the new OpenSSL::PKey::PKey#derive instead of the raw {EC,}DH_compute_key(), mainly to reduce amount of the C code. https://github.com/ruby/openssl/commit/28edf6bafc Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit fbadb01d6e0881ef6c6e5e105b8ac20fe663c817 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-03-18 21:58:46 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] pkey: add PKey::PKey#derive Add OpenSSL::PKey::PKey#derive as the wrapper for EVP_PKEY_CTX_derive(). This is useful for pkey types that we don't have dedicated classes, such as X25519. https://github.com/ruby/openssl/commit/28f0059bea Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit b2dc4880f5d000c3e0117ecf9c57a273cbd713f9 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-05-15 23:47:47 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] pkey: support 'one-shot' signing and verification OpenSSL 1.1.1 added EVP_DigestSign() and EVP_DigestVerify() functions to the interface. Some EVP_PKEY methods such as PureEdDSA algorithms do not support the streaming mechanism and require us to use them. https://github.com/ruby/openssl/commit/ae19454592 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 5cae289682c6b8fea6324ae8f26dbcc90ebaaa2f Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-05-15 23:47:47 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] pkey: port PKey::PKey#sign and #verify to the EVP_Digest* interface Use EVP_DigestSign*() and EVP_DigestVerify*() interface instead of the old EVP_Sign*() and EVP_Verify*() functions. They were added in OpenSSL 1.0.0. Also, allow the digest to be specified as nil, as certain EVP_PKEY types don't expect a digest algorithm. https://github.com/ruby/openssl/commit/9ff6e5143b Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 1e3590fe221c9631259f6876bfaa896398ac7cfa Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-03-20 23:18:26 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] pkey: add PKey.generate_parameters and .generate_key Add two methods to create a PKey using the generic EVP interface. This is useful for the PKey types we don't have a dedicated class. https://github.com/ruby/openssl/commit/d8e8e57de9 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit d60ab95398ecdb2ae9a78e12244f5019d335b356 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-05-13 16:37:16 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] test/openssl/test_ssl: fix flaky test case Fix test_socket_open_with_local_address_port_context. Often with MinGW, it seems EACCES is returned on bind when the port number is unavailable. Ignore it just as we do for EADDRINUSE and continue searching free port number. Fixes: 98f8787b4687 ("test/openssl/test_ssl: fix random failure in SSLSocket.open test", 2020-02-17) https://github.com/ruby/openssl/commit/413b15526e Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 498c8e8f17d5a06244515db163a714e87a4fce76 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-03-21 18:23:53 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:11 +0900 [ruby/openssl] pkey: assume generic PKeys contain private components The EVP interface cannot tell whether if a pkey contains the private components or not. Assume it does if it does not respond to #private?. This fixes the NoMethodError on calling #sign on a generic PKey. https://github.com/ruby/openssl/commit/f4c717bcb2 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 1f44640677cc92c105a5b624a021cefdfe645f9a Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-06-14 00:25:43 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] pkey: refactor #export/#to_pem and #to_der Add ossl_pkey_export_traditional() and ossl_pkey_export_spki() helper functions, and use them. This reduces code duplication. https://github.com/ruby/openssl/commit/56f0d34d63 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 707e3d49cbd8e648c6e6496daedb98bf17674dc7 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-06-13 23:39:41 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] pkey: refactor DER/PEM-encoded string parsing code Export the flow used by OpenSSL::PKey.read and let the subclasses call it before attempting other formats. https://github.com/ruby/openssl/commit/d963d4e276 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 10d360847baf3394b7d9cd0dca6fa6908a2ce604 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-03-22 03:51:24 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] pkey: prefer PKey.read over PKey::RSA.new in docs https://github.com/ruby/openssl/commit/cf92a3ffba Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit efad0166c660d565d5e80e862cd9ff9457f8ed03 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-03-18 17:26:33 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] pkey: have PKey.read parse PEM-encoded DHParameter Try PEM_read_bio_Parameters(). Only PEM format is supported at the moment since corresponding d2i_* functions are not provided by OpenSSL. https://github.com/ruby/openssl/commit/867e5c021b Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit c157f6e787221bcdbf8b6bb28db1b43578b89d66 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-03-16 16:09:35 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] pkey: inline {rsa,dsa,dh,ec}_instance() Merge the code into the callers so that the wrapping Ruby object is allocated before the raw key object is allocated. This prevents possible memory leak on Ruby object allocation failure, and also reduces the lines of code. https://github.com/ruby/openssl/commit/1eb1366615 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 27859c09a67768b06ad1db11a145cd6c548bbdf3 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2017-03-16 16:06:53 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] pkey: simplify ossl_pkey_new() ossl_{rsa,dsa,dh,ec}_new() called from this function are not used anywhere else. Inline them into pkey_new0() and reduce code duplication. https://github.com/ruby/openssl/commit/94aeab2f26 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 10289e9f229dae499d8f9c4e8252aeb728117d28 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-02-19 14:11:54 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] config: replace DupConfigPtr() with GetConfig() Now that OpenSSL::Config wraps a real CONF object, the caller can just borrow it rather than creating a new temporary CONF object. CONF object is usually treated as immutable. DupConfigPtr() is now removed, and GetConfig() is exported instead. https://github.com/ruby/openssl/commit/d9064190ca Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 22aeb6373e13929e80da1676b1dc79cbfffc38a4 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-02-19 14:06:09 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] config: revert to C implementation of OpenSSL::Config Revert OpenSSL::Config to using the OpenSSL API and remove our own parser implementation for the config file syntax. OpenSSL::Config now wraps a CONF object. Accessor methods deal with the object directly rather than Ruby-level internal state. This work is based on the old C code we used before 2010. https://github.com/ruby/openssl/commit/c891e0ea89 Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 7c13d2b3cc503790d044a6f5a34a61c50bc643c3 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-02-22 04:58:08 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] test/openssl/test_config: skip test_get_value_ENV on LibreSSL LibreSSL has removed the feature to map environment variables onto the "ENV" section. https://github.com/ruby/openssl/commit/b70817faec Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 0c66784602048fb4724e8d37038a0e6799f55d46 Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-04-22 21:46:39 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] test/openssl/test_config: fix non-deterministic test case Sort keys of a section before comparing. The ordering is not part of the API. This can cause a test failure if we use OpenSSL's C implementation. Fixes: 2ad65b5f673f ("config: support .include directive", 2018-08-16) https://github.com/ruby/openssl/commit/259e6fd2dc Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit ffc01afc479f93967360995006c61b806208357e Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-02-19 14:05:41 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] test/openssl/test_config: add missing test case for Config.parse_config https://github.com/ruby/openssl/commit/9ce2ccf36d Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 67f5847c617e49a314400cb8f1ff1d559492682c Author: Kazuki Yamaguchi <k@rhe.jp> AuthorDate: 2020-02-19 13:44:31 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] config: remove deprecated methods Remove 4 deprecated methods. The following two methods have been marked as deprecated since 2003, by r4531 (ruby.git commit 78ff3833fb67c8005a9b851037e74b3eea940aa3). - OpenSSL::Config#value - OpenSSL::Config#section Other two methods are removed because the corresponding functions disappeared in OpenSSL 1.1.0. - OpenSSL::Config#add_value - OpenSSL::Config#[]= https://github.com/ruby/openssl/commit/9783d7f21c Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit 4d8bce227c85ef4d1f8b794a8c96a7b23e4cf357 Author: Spencer McIntyre <zeroSteiner@gmail.com> AuthorDate: 2020-03-31 03:42:53 +0900 Commit: Kazuki Yamaguchi <k@rhe.jp> CommitDate: 2021-03-16 19:16:10 +0900 [ruby/openssl] Define Cipher #ccm_data_len= for CCM mode ciphers Allow specifying just length to #update CCM mode ciphers need to specify the total plaintext or ciphertext length to EVP_CipherUpdate. Update the link to the tests file Define Cipher#ccm_data_len= for CCM mode ciphers Add a unit test for CCM mode Also check CCM is authenticated when testing https://github.com/ruby/openssl/commit/bb3816953b Notes: Merged: https://github.com/ruby/ruby/pull/4275 commit fad3412d475b57055f426cf4e86eafeab516672b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-16 08:16:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-16 15:47:27 +0900 [ruby/rdoc] Get rid of a trailing space https://github.com/ruby/rdoc/commit/7b7b91768e Notes: Merged: https://github.com/ruby/ruby/pull/4274 commit ff9a00887161840eb8a34d53749a7d7962181cfe Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-12 19:30:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-16 15:47:27 +0900 [ruby/rdoc] Suppress unused variable warning of "text" https://github.com/ruby/rdoc/commit/3a4120b155 Notes: Merged: https://github.com/ruby/ruby/pull/4274 commit 61a29a41e1d0d11a9963315aa86d25ed690124c0 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-08 06:14:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-16 15:47:27 +0900 [ruby/rdoc] Allow empty .rdoc_options https://github.com/ruby/rdoc/commit/0c8cb25b50 Notes: Merged: https://github.com/ruby/ruby/pull/4274 commit 971a0cd246db6578e1ea8760a903e1a23e3681f3 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-07 10:13:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-16 15:47:27 +0900 [ruby/rdoc] Allow partial default values to be overridden with .rdoc_options https://github.com/ruby/rdoc/commit/e14800891f Notes: Merged: https://github.com/ruby/ruby/pull/4274 commit de8e6218a3257fe19b46ff0aa157e66f452ac8b7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-22 21:34:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-16 15:47:27 +0900 [ruby/rdoc] Fixed CodeFence without blank lines Currently a fenced code block needs a preceding blank line, it should not be required, as: https://github.github.com/gfm/#fenced-code-blocks > A fenced code block may interrupt a paragraph, and does not > require a blank line either before or after. Just recommended: https://docs.github.com/en/github/writing-on-github/creating-and-highlighting-code-blocks > We recommend placing a blank line before and after code blocks > to make the raw formatting easier to read. https://github.com/ruby/rdoc/commit/0e1776caf3 Notes: Merged: https://github.com/ruby/ruby/pull/4274 commit 10b082064e6ab0943cce4ef43e567d8044c7096d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-26 01:21:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-16 15:47:27 +0900 [ruby/rdoc] Add table style https://github.com/ruby/rdoc/commit/2219c5ae80 Notes: Merged: https://github.com/ruby/ruby/pull/4274 commit 3651f678a719ae3a35825bcb4e0dabbc7c60d8df Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-26 00:31:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-16 15:47:27 +0900 [ruby/rdoc] Support GFM table https://github.com/ruby/rdoc/commit/9dc933df16 Notes: Merged: https://github.com/ruby/ruby/pull/4274 commit 05898c5b9001c0b1e8bd7bf0d12b42a8e7c388b8 Author: Pankaj Doharey <pankajdoharey@gmail.com> AuthorDate: 2021-01-09 01:59:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-16 15:47:27 +0900 [ruby/rdoc] Update Rdoc.css sidebar panel. Updates css so the sidebar look like a panel instead of looking like chopped edges. https://github.com/ruby/rdoc/commit/b0098c6d72 Notes: Merged: https://github.com/ruby/ruby/pull/4274 commit 31b19ba84e384734dba5e641d8055332ff36da01 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-16 14:07:27 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-16 14:07:27 +0900 Fix a link [ci skip] commit ff5ff75cdb469de21702c4a6cee50765b78091aa Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-16 01:15:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-16 01:15:31 +0900 * 2021-03-16 [ci skip] commit b346935cbc834a55b785e593865f5419b17f3e78 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-13 12:14:18 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-03-16 01:15:29 +0900 Copy only generated parser files when RDoc syncs commit 18a3bf5a0e6fd9de8dd1347fb70575147a513c7e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-15 20:05:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-15 22:36:05 +0900 NEWS of [Feature #12194] [ci skip] commit 9e5105ca451d6d38eb2d03a2ffc904074f0333b9 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-15 15:22:34 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-15 15:22:34 +0900 Support GCC's DWARF 5 [Bug #17585] (#4240) Co-Authored-By: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> Notes: Merged-By: mame <mame@ruby-lang.org> commit 82b6f89283042b670975f3f7986432647101984e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2016-03-18 16:40:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-15 15:09:05 +0900 File.dirname optional level * file.c (rb_file_dirname_n): chomp N level of base names. [Feature #12194] Notes: Merged: https://github.com/ruby/ruby/pull/4111 commit ba9de878a6d303503d8ddbef83598fc1f5c1b80b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-15 10:18:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-15 10:18:16 +0900 * 2021-03-15 [ci skip] commit 0846c2da457e7523819236ac7da492029b3ef73d Author: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> AuthorDate: 2021-03-15 10:15:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-15 10:17:50 +0900 Check backref number buffer overrun [Bug #16376] commit 2a6bfd22468343003463e0cbf91953a01b0dbba5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-14 20:18:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-14 20:18:50 +0900 Properly convert time_t [Bug #17645] commit 8a5a91eead7c026ea71dca3063345451d16c948b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-14 20:17:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-14 20:18:30 +0900 --dont-cuddle-else [ci skip] commit ce9fb9b23cc95207a09410ecfdaeecf27e5457f0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-14 20:10:59 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-14 20:10:59 +0900 * 2021-03-14 [ci skip] commit 3ac28de5414c81a0da8c8ec969ea74db5a0f1b0f Author: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> AuthorDate: 2021-03-14 20:10:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-14 20:10:01 +0900 Explicitly cast __s64 to time_t [Bug #17645] A workaround of shorten-64-to-32 error where 32-bit linux. commit c7e6914b3947cdf0e9c0d28d1162a084d0138887 Author: Kenichi Kamiya <kachick1@gmail.com> AuthorDate: 2021-03-13 14:15:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-13 15:44:34 +0900 [Doc] Fix multiple `Magic Comments` example [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4264 commit 07ff1f4b0b040b594a6fec44d9888395343449c6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-13 09:14:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-13 09:14:20 +0900 Revert "Extracted AtomicWrite" This reverts commit 2148ee78a5bc5e679903f5839c66578bfcf94a39, mistakenly committed. commit 983f6d0f2af157ce2df9428a1701d8666877d0f5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-07 10:24:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-13 09:11:21 +0900 Moved locking VM to an atomic operation commit 2148ee78a5bc5e679903f5839c66578bfcf94a39 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2016-01-07 14:58:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-13 09:10:45 +0900 Extracted AtomicWrite commit 722e6c1d0479332c0f44c4408fa578cac0e3e479 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-13 00:35:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-13 00:35:39 +0900 * 2021-03-13 [ci skip] commit aaab3b1de943c3317e115d623ffc7908b4c96578 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-03-11 06:15:50 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-03-13 00:35:18 +0900 Fix integer/float remainder with infinity argument of opposite sign Previously, the result was incorrect: 4.remainder(-Float::INFINITY) Before: => NaN After: => 4 4.2.remainder(-Float::INFINITY) Before: => NaN After: => 4.2 Fixes [Bug #6120] Notes: Merged: https://github.com/ruby/ruby/pull/4257 commit 701001e36ea99f0c253eeb0721706af77de0ffdd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-12 19:28:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-12 19:28:17 +0900 Removed an unused declaration commit d91ade3e1e8e137d186a00158fb795e9c9ef99e5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-12 18:15:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-12 18:15:56 +0900 Renamed functions for Fiber singleton methods commit 90c12defb3f2505f53c79e910d2f5a348a16de50 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-12 16:46:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-12 17:13:53 +0900 Constified variables for getenv commit 2ea600f9a646a9517b99d7875bef863f60872ece Author: Soutaro Matsumoto <matsumoto@soutaro.com> AuthorDate: 2021-03-12 17:07:53 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-12 17:07:53 +0900 Bundle RBS 1.1.1 (#4259) Notes: Merged-By: soutaro <matsumoto@soutaro.com> commit ea39955e23f82d05c0e1a5b0933a78fc4245409f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-12 15:51:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-12 15:51:29 +0900 Removed a duplicate setting for mingw commit 0446a339453954a99b1ce8cf614473e34fb7aa49 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-12 15:30:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-12 15:30:51 +0900 * 2021-03-12 [ci skip] commit 6b978d542704a5614af5e9375c4b31b8d2618652 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-03-12 15:27:57 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-03-12 15:27:57 +0900 Remove .travis.yml Reason: * Recent build is failed. https://travis-ci.org/github/ruby/ruby/jobs/762561190 * Current configuration uses Ubuntu 16.04 (xenial), whose EOL is Apr 2021. If someone want to recover Travis CI builds, please fix above two issues. commit a6c93a1d1d3eab7ee6b933f92bd7cfda0c62ebe5 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-11 10:46:01 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-11 10:46:01 +0900 Revert "Update bundled_gems" This reverts commit b37f60fbd4b18f23e0443ae41b2cd7b991f0e11c. Because test-bundled-gems failed. commit a6b5d70bcabe66041376d5a82cedea9f2a391da8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-11 09:21:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-11 09:21:21 +0900 Create the test file under the created temporary directory Fixes https://github.com/ruby/ruby/pull/4255 commit ef88225886dd4ceecae07ddd22108ef4da542396 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-02-02 01:58:06 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-11 06:44:07 +0900 Simplify ibf_dump_object_symbol by delegating to ibf_dump_object_string Notes: Merged: https://github.com/ruby/ruby/pull/4119 commit 1041bff3b226fc0ea5235c1f3c71d7dcedbf1acc Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-01-25 18:58:02 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-11 06:44:07 +0900 Add a benchmark for RubyVM::InstructionSequence.load_from_binary Notes: Merged: https://github.com/ruby/ruby/pull/4119 commit 2de7fbcdbb90b2431e03b4c457e05f1aa2d2dd64 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-01-23 18:16:43 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-11 06:44:07 +0900 Pre-freeze ISeq names to avoid useless duplication Notes: Merged: https://github.com/ruby/ruby/pull/4119 commit d00e7deb5c780d75e4edd3afa3e26ea02c296d8c Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-01-23 18:15:22 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-11 06:44:07 +0900 Use rb_enc_interned_str in ibf_load_object_string Notes: Merged: https://github.com/ruby/ruby/pull/4119 commit 8463c8a425758fd4dc58a5c202aba295c837b154 Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-01-23 06:23:30 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-11 06:44:07 +0900 Specialize ibf_load_object_symbol and ibf_dump_object_symbol Notes: Merged: https://github.com/ruby/ruby/pull/4119 commit a03653d386bd64256932ea7eead3c28f03de1bac Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-02-13 01:31:19 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-11 06:43:22 +0900 proc.c: make bind_call use existing callable method entry when possible The most common use case for `bind_call` is to protect from core methods being redefined, for instance a typical use: ```ruby UNBOUND_METHOD_MODULE_NAME = Module.instance_method(:name) def real_mod_name(mod) UNBOUND_METHOD_MODULE_NAME.bind_call(mod) end ``` But it's extremely common that the method wasn't actually redefined. In such case we can avoid creating a new callable method entry, and simply delegate to the receiver. This result in a 1.5-2X speed-up for the fast path, and little to no impact on the slowpath: ``` compare-ruby: ruby 3.1.0dev (2021-02-05T06:33:00Z master b2674c1fd7) [x86_64-darwin19] built-ruby: ruby 3.1.0dev (2021-02-15T10:35:17Z bind-call-fastpath d687e06615) [x86_64-darwin19] | |compare-ruby|built-ruby| |:---------|-----------:|---------:| |fastpath | 11.325M| 16.393M| | | -| 1.45x| |slowpath | 10.488M| 10.242M| | | 1.02x| -| ``` Notes: Merged: https://github.com/ruby/ruby/pull/4188 commit d9fea496afed5a35d2f79ea3cac35176966dd471 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-03-11 05:09:45 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-03-11 05:09:45 +0900 Remove cvar overtaken classes at end of test methods Fixes issues when the same tests are executed more than once, which some CI machines do. commit cbc7c1c06145b02b3d887a6fb2c3b6d9e4bb22dd Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-02-26 02:42:10 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-11 02:40:00 +0900 Add cvar overtaken tests While working on another project we noticed that there were no tests for the cvar overtaken exception when using classes. This change adds a test for cvar overtaken with classes and moves the cvar overtaken test for modules into the new file. Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4251 commit 23a48d8fe683df289736e2d90c86006eb919b40d Author: eileencodes <eileencodes@gmail.com> AuthorDate: 2021-03-11 00:24:28 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-11 02:39:18 +0900 Refactor `rb_class_ivar_set` In every caller of `rb_class_ivar_set` it checks for the `RCLASS_IV_TBL` and then creates it if it doesn't exist. Instead of repeating this in every caller, this can be done once in `rb_class_ivar_set`. Notes: Merged: https://github.com/ruby/ruby/pull/4254 commit 9cdb5a51532c99230c2303912a13b9f752f1e775 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-11 02:38:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-11 02:38:40 +0900 * 2021-03-11 [ci skip] commit 9d0ae387c86f3fc85cf00a9a4cf8c6e18b4181bf Author: John Hawthorn <john@hawthorn.email> AuthorDate: 2021-03-10 09:33:28 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-11 02:38:20 +0900 Remove DEFINED_IVAR2 from enum This version of defined? doesn't seem to be possible to emit anymore. Notes: Merged: https://github.com/ruby/ruby/pull/4253 commit 4c80b9d063fe3cf3bc80b2631f4ffc3b5346e12f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-10 22:13:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-10 22:13:06 +0900 Fix `coroutine_type` variable name commit b37f60fbd4b18f23e0443ae41b2cd7b991f0e11c Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-03-10 19:37:28 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-03-10 19:37:28 +0900 Update bundled_gems commit 67b79997554177fc2ddf82cd4fda0b4eb7954aec Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-10 08:59:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-10 08:59:44 +0900 * 2021-03-10 [ci skip] commit f0b3700ddc678795129176f2a1ebcb4bd3235270 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-09 22:07:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-09 23:05:24 +0900 Given argument does not need to cache commit 5f821ee9777b1c13364892a65e9af97545d14bb6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-09 20:36:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-09 20:36:15 +0900 Recheck ucontext functions to make reconfig stable commit 2a83650b0fd25719fb6c03bfec7bd895734d3ceb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-19 11:40:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-09 20:11:34 +0900 Destroy VM-wise locks before freeing [Bug #15852] Notes: Merged: https://github.com/ruby/ruby/pull/4249 commit 7110795f37d2b91bb41458c351b5a206424d6ec4 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-09 13:19:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-09 13:19:21 +0900 * 2021-03-09 [ci skip] commit 0c5f8c62766afe4605172800063e63fe36996658 Author: wanabe <s.wanabe@gmail.com> AuthorDate: 2021-03-07 21:22:47 +0900 Commit: wanabe <s.wanabe@gmail.com> CommitDate: 2021-03-09 13:19:03 +0900 [ruby/zlib] Resume zstream if available [Bug #10961] Notes: Merged: https://github.com/ruby/ruby/pull/4248 commit e85bffc32473968b2e3736ad712f5e0d6e9aebc9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-23 22:48:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-08 17:46:07 +0900 Increment global variables atomically commit b7d4dcf3a6a741ba85119b45a786a55e70bb910e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-23 21:30:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-08 17:46:07 +0900 Make vm_exit_handler installation MT-safe commit 9299703b390a30246819a60516bdd14e37c597fe Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-23 20:51:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-08 17:46:07 +0900 Make uenvarea thread exclusive commit 8c943e3be880eef40023e52daf43d8e0bc8ab59c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-23 21:26:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-08 17:46:07 +0900 Make the flag in thread_exclusive unique commit 1a00402987558db93f2741f3b500ceadd7b17dcd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-23 16:22:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-08 17:45:02 +0900 Enclose crtitical sections in `thread_exclusive` block commit d10b535806227d24a3f8f5c7f425be3a39c2ac74 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-08 17:04:27 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-08 17:04:27 +0900 test/ruby/test_string.rb: make GitHub syntax-highlight correctly It looks like GitHub syntax-highlighting does not support an empty heredoc. This change adds a newline to make GitHub can handle the syntax appropriately. https://bugs.ruby-lang.org/issues/17662 commit 7de349bb4996b0b8261f3af6734dd268160de96d Author: Aditya Prakash <aditya.prakash132@gmail.com> AuthorDate: 2021-03-06 12:11:50 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-03-08 13:47:35 +0900 [rubygems/rubygems] Remote test to check require This test was triggering require of `rubygems/core_ext/tcpsocket_init` which overrides TCPSocket.initialize globally. Requires don't get reset between test runs and it was making other test unreliable. Fixes timeout of test on ruby master https://github.com/rubygems/rubygems/commit/fdfe5c9691 Notes: Merged: https://github.com/ruby/ruby/pull/4143 commit 53468cc11147b0d285fc376fc546b677dad600ca Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-02-02 00:17:16 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-03-08 13:47:35 +0900 Sync latest development version of bundler & rubygems Notes: Merged: https://github.com/ruby/ruby/pull/4143 commit 2ab6b7a7516e1b2c48a66ce513afabb62d101461 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-02-02 21:20:36 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-03-08 13:47:35 +0900 Remove no longer needed globs Notes: Merged: https://github.com/ruby/ruby/pull/4143 commit 602d09a1817bdc75c20d8299b75affadd2f9f180 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-08 12:42:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-08 13:39:55 +0900 Suppress useless default branch name hint [ci skip] commit b1f375ccc544188284ce8ad3e63ab0dc12a50766 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-08 11:54:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-08 12:10:12 +0900 Removed HEAD^2 checkout to suppress a CodeQL annotation [ci skip] commit 32a13591e0bb6e96b05452e214f14eda21ee3aa9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-07 22:39:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-08 10:13:29 +0900 [ruby/stringio] Check if closed in loop [Bug #17675] https://bugs.ruby-lang.org/issues/17675 https://github.com/ruby/stringio/commit/1ed61d0cbc commit 99f54c08953a96ebaa822f4fdce6d9de47f99814 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-02-16 20:50:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-08 10:12:57 +0900 [ruby/stringio] Use Gemfile instead of Gem::Specification#add_development_dependency. https://github.com/ruby/stringio/commit/157fe9f04d commit d0a05fd4b40ff0f88728c4897e67b68185128f54 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-08 10:08:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-08 10:08:40 +0900 Fixed FD leaks commit 8aa70b9be2489b840ae6d83e9e8067919cdc7e22 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-08 10:03:24 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-08 10:03:24 +0900 * 2021-03-08 [ci skip] commit 0d29c3179c86a73206939ba637e4fdf2dd6eff9a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-07 20:05:21 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-03-08 09:35:46 +0900 [ruby/stringio] Include all modules included into Test::Unit::TestCase Some methods are separated into modules in test-unit now. https://github.com/ruby/stringio/commit/d289848994 commit 21e255913c5d00426bcc4d69e3d444b45635a534 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-07 13:45:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-03-08 09:35:25 +0900 [ruby/stringio] Pass IOs as separate list for ruby 2.x https://github.com/ruby/stringio/commit/74e39858eb commit c3c18007086df2b126f25483d82d72adafb2da7e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-02-17 12:20:11 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-03-08 09:34:16 +0900 Prefer to use omit commit 1d1b9e02d26f5f9834b7967e46e853aaf1ffc815 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-07 10:21:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-07 10:21:03 +0900 Removed a typo in a comment [ci skip] commit f6d5de8f33fe715d939e3e77b8ef73d88bcd6c9f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-05 17:40:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-07 09:54:35 +0900 [ruby/io-wait] Declare as Ractor-safe Fixes https://bugs.ruby-lang.org/issues/17659 https://github.com/ruby/io-wait/commit/ba338b4764 Notes: Merged: https://github.com/ruby/ruby/pull/4244 commit ea81fff56443d49099fb746bc06c4f239fe5e647 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-05 17:38:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-07 09:54:35 +0900 [ruby/io-wait] bump up to 0.1.1 https://github.com/ruby/io-wait/commit/88db082d60 Notes: Merged: https://github.com/ruby/ruby/pull/4244 commit ef9bde6516a46359ad68fef96bd180f12262cceb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-05 16:39:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-07 09:54:35 +0900 [ruby/io-wait] Refined uncommon device type tests https://github.com/ruby/io-wait/commit/0c73ebcf5d Notes: Merged: https://github.com/ruby/ruby/pull/4244 commit 05d118feea447d195e5662a03c2a41b50aa6b8d9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-05 14:45:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-07 09:54:35 +0900 [ruby/io-wait] Fixed required_ruby_version Before 3.0.0, io-wait has not been gemified. https://github.com/ruby/io-wait/commit/6fed3da323 Notes: Merged: https://github.com/ruby/ruby/pull/4244 commit 3ba1580d800b4751e1944242a82d4db96864f1fe Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-10-23 19:41:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-07 09:54:35 +0900 [ruby/io-wait] Revise IO#wait arguments https://github.com/ruby/io-wait/commit/0599f6d4d6 https://github.com/ruby/io-wait/commit/4e982aea1b https://github.com/ruby/io-wait/commit/5b45685eb3 Notes: Merged: https://github.com/ruby/ruby/pull/4244 commit 68d028578a5975fe6c44d29c502615ff9af72927 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-03-06 05:47:00 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-03-07 06:56:16 +0900 Undef Enumerator::Chain#{feed,next,next_values,peek,peek_values} Previously these methods were defined but raised TypeError, which seems worse. Notes: Merged: https://github.com/ruby/ruby/pull/3811 commit e1d16a9e560a615e122e457325bcfb7c47228ed6 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-03-06 05:25:51 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-03-07 06:56:16 +0900 Make Enumerator#{+,chain} create lazy chain if any included enumerator is lazy Implements [Feature #17347] Notes: Merged: https://github.com/ruby/ruby/pull/3811 commit bf40fe9fed19a5e22081b133661c0629988f1618 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2020-11-25 07:05:22 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-03-07 06:56:16 +0900 Fix calling enumerator methods such as with_index on Enumerator::Chain This previously raised a TypeError. Wrap the Enumerator::Chain in an Enumerator to work around the problem. Fixes [Bug #17216] Notes: Merged: https://github.com/ruby/ruby/pull/3811 commit 13dc00534786057c6b934b7269dac49352959099 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-07 00:58:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-07 00:58:48 +0900 * 2021-03-07 [ci skip] commit b3c53a8a885be8f5cc2b712798b0d2741c488ce4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-07 00:58:28 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-03-07 00:58:28 +0900 Make Ractor stdio belonging to the Ractor [Bug #17672] Defer making ractor stdio until ractor started. Before ractor started, created objects belong to the caller ractor instead of the created ractor. Notes: Merged: https://github.com/ruby/ruby/pull/4241 Merged-By: nobu <nobu@ruby-lang.org> commit 8ccc12118ea5257f846476088eb9c64944560892 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-03-06 00:45:56 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-03-06 00:50:09 +0900 Keep libpath length non-negative [Bug #16784] When runtime_libruby_path does not include '/', it attempts to call rb_str_resize with negative length. This change makes sure that the length non-negative. Co-Authored-By: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> commit 261b746dcaf50ba34748ccff85a94c68879a301c Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-06 00:18:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-06 00:18:47 +0900 * 2021-03-06 [ci skip] commit 14e1739ff3ec81c9ea87a8aba03393f0bf0433a7 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-03-03 05:17:23 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-06 00:18:32 +0900 [ruby/irb] Make save-history extension safe for concurrent use This makes the save-history extension check for modifications to the history file before saving it. If the history file was modified after the history was loaded and before it was saved, append only the new history lines to the history file. This can result in more lines in the history file than SAVE_HISTORY allows. However, that will be fixed the next time irb is run and the history is saved. Fixes [Bug #13654] https://github.com/ruby/irb/commit/041ef53845 commit 182cde8dfbbc6b9044d9b76c0bfdcf031bcda778 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-03-04 22:44:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-05 22:03:11 +0900 [ruby/irb] Add a test for not continuing when endless range at eol https://github.com/ruby/irb/commit/1020ac9c65 commit 2cc5827fdca97dbd1225a49a3114d28aa1cb2ef4 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-03-04 08:27:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-05 22:03:05 +0900 [ruby/irb] Do not continue line if last expression is an endless range Fixes [Bug #14824] https://github.com/ruby/irb/commit/63414f8465 commit 45b3a5f7de90773868c948f3a542f4aeeb8403fc Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-05 17:37:16 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-03-05 17:37:16 +0900 rb_sym_interned_p: doesn't exist Deleted decades ago in commit 6e0fed271c1d2e6f2b13b99d89d43e7d00e81472 Note also that we eventually ended up reinventing this exact same functionality. It is called rb_check_id() now. commit 7715d428f123889411e6fa0dadc2197723edd12e Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-05 16:32:33 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-03-05 16:33:29 +0900 rb_enc_symname_type: indent commit 0a43f0de27b8724a0932be2679aa39467c68f750 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-05 16:26:34 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-03-05 16:33:29 +0900 rb_enc_symname_type: refactor reduce goto A bit readable to me. commit 0ead818d81c975275238878c81f300dd404e0722 Author: David Carlier <devnexen@gmail.com> AuthorDate: 2021-03-05 07:12:58 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-05 10:33:52 +0900 Generating note.GNU-stack section for FreeBSD on x86. Not enabling for ELF in general as not all platform support it (e.g. NetBSD, implictly stack never executable). Notes: Merged: https://github.com/ruby/ruby/pull/4239 commit 99c339786024d406a77fcf99da00d70ca6aa6534 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-05 10:26:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-05 10:26:26 +0900 * 2021-03-05 [ci skip] commit c230ccdba6cda107f3a5bcd540afa3e75677a676 Author: David Carlier <devnexen@gmail.com> AuthorDate: 2021-03-05 06:43:23 +0900 Commit: Samuel Williams <samuel.williams@oriontransfer.co.nz> CommitDate: 2021-03-05 10:26:00 +0900 coroutine arm64 generating note.GNU-stack section for linux. Notes: Merged: https://github.com/ruby/ruby/pull/4238 commit 446d000e1148d4dd1dc5e0d3a745dbc205457632 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-04 11:40:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-04 11:40:43 +0900 Strip trailing spaces [ci skip] commit dea08758be2ee02b5e2d85ee49aca85a9ea85201 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-04 11:39:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-04 11:40:43 +0900 Check for trailing spaces commit 1876782155037d489b0010823f5573a3464bceef Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-04 11:31:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-04 11:31:57 +0900 * 2021-03-04 [ci skip] commit bf089d786a7ee1fa8c972e10bb31b23ba30a1438 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-03-04 03:21:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-03-04 11:28:39 +0900 Fixed syntax error with gcc on macOS Security/Authorization.h defines AuthorizationExternalForm by using clang extension which allows variably modified types in a file scope. As we just need high-level accessors only, include Security/SecRandom.h instead. commit 68f515cf5ed50c74d5f8e19373ea7f6435b62c4e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-03 03:05:10 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-03 03:05:10 +0900 * 2021-03-03 [ci skip] commit 0bd1bc559f7a904e7fb64d41b98a9c27ddec7298 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-03-02 00:05:55 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-03 03:04:49 +0900 Don't use mmap on platforms that have large OS page sizes Notes: Merged: https://github.com/ruby/ruby/pull/4235 commit 6d834371c028a92f8bb7c2520cedf3d7f2469a8a Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-03-01 23:40:43 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-03-03 03:04:49 +0900 Fix typo Notes: Merged: https://github.com/ruby/ruby/pull/4235 commit 33dc0a070a515811e71fccbdc8cf0cd5a5dd784c Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-03-02 15:22:22 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-03-02 17:47:28 +0900 RBASIC_SET_CLASS_RAW: follow strict aliasing rule Instead of rather euphemistic struct cast, just reomve the const qualifier and assign directly. According to ISO/IEC 9899:2018 section 6.5 paragraph 7, `VALUE` and `const VALUE` are allowed to alias (but two distinct structs are not, even when their structures are the same). [Bug #17540] Notes: Merged: https://github.com/ruby/ruby/pull/4232 commit f7c342f8759c9914e1216da29bd8d7b1b8c8c91b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-03-02 09:23:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-03-02 09:23:55 +0900 * 2021-03-02 [ci skip] commit 61f417ac7dbcb5df096edb95a743fff45a5313c8 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-03-02 09:22:23 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-03-02 09:23:21 +0900 [lib/benchmark] Use $stdout instead of STDOUT [Bug #17600] commit 80e2c45f5560a2e44fb3949c5c3f5a11508f6043 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-02-28 20:24:42 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-02-28 20:24:42 +0900 Skip spec which does not work on mingw * https://github.com/ruby/ruby/runs/1994688198 ruby 3.1.0dev (2021-02-27T16:42:17Z master 8305a48413) [x64-mingw32] C-API Thread function rb_thread_call_without_gvl runs a C function with the global lock unlocked and unlocks IO with the generic RUBY_UBF_IO Example took longer than the configured timeout of 60.0s commit 5c9079759d6ced219d1c0335f780d395449b3cba Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-28 01:42:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-28 01:42:49 +0900 * 2021-02-28 [ci skip] commit 8305a484133ef67c0c95122008026d9262993a37 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-02-28 01:42:00 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-02-28 01:42:17 +0900 Add --timeout to try to find hanging spec commit 36dde35e029c7a6607e6c674062ce6fc7a51c0bd Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-02-27 21:00:26 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-02-27 21:00:26 +0900 Update to ruby/spec@37e52e5 commit dbea0be13dc1f44833eca43a73f3ab898fa27c15 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-27 06:27:25 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-27 06:51:12 +0900 [ruby/irb] Update help message for next context-mode of 4 While here, fixing tab/space issues in help message, and sync rdoc for IRB class to match the help message. https://github.com/ruby/irb/commit/ef8e3901cc commit d45466dc5b9b45d5b78d161fc86265e6e19d6e1e Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-27 03:06:30 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-02-27 03:06:56 +0900 Oops! Add another test and fix to_proc implementation commit 3d8e373a588bca976f7f1a8172b5b1b27d78f60f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-27 02:59:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-27 02:59:14 +0900 * 2021-02-27 [ci skip] commit 0590e9b677e8c0b7a2364f660f06d9f5bd8fe87d Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-27 02:57:13 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-02-27 02:57:13 +0900 Fiddle::Function responds to to_proc This lets us cast a Fiddle::Function to a block, allowing is to write things like: ```ruby f = Fiddle::Function.new(@libc['strcpy'], [TYPE_VOIDP, TYPE_VOIDP], TYPE_VOIDP) define_method :strcpy, &f ``` commit cfc23903df6bde6d79292d8a0291bc82e920b54e Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-26 09:31:24 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-02-26 09:31:24 +0900 Revert "Add tests for bug 17652" This reverts commit a9920e7782f225b97e173a88640fe9e116b9964f. commit f0743dd2a40da552bf045b212d927b5fcea00160 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-25 22:05:10 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-26 05:24:01 +0900 [ruby/reline] Version 0.2.4 https://github.com/ruby/reline/commit/462f971bd3 commit 04154b65e8b72e448849a9e6187661dd5dee48d9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-26 04:02:09 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-26 04:02:09 +0900 * 2021-02-26 [ci skip] commit a9920e7782f225b97e173a88640fe9e116b9964f Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-02-24 06:36:04 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-26 04:01:50 +0900 Add tests for bug 17652 Notes: Merged: https://github.com/ruby/ruby/pull/4227 commit 1c0e79e87b202ac707833fb1bd5e9398c8d0b4fb Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-02-24 06:29:53 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-26 04:01:50 +0900 Disable auto compaction on platforms that do not support it Notes: Merged: https://github.com/ruby/ruby/pull/4227 commit 1e13548953659bd12c28625d45998322449f3be8 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-02-24 06:28:56 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-26 04:01:50 +0900 Use mmap for allocating heap pages Notes: Merged: https://github.com/ruby/ruby/pull/4227 commit fda162c7764219c0b03efd6ba3ef393a92013f66 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-25 22:04:58 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-25 22:11:48 +0900 [ruby/irb] Version 1.3.4 https://github.com/ruby/irb/commit/ab9852ccc5 commit 294c244ac805c0b9c327cd92bc87fe2c7c4eb95f Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-25 16:16:05 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-02-25 16:26:54 +0900 rb_random_int: ended before it begins It existed since f3d022543ef2afde3d53e7f6b3028eafe39d0ef4 until 96760236079b15674a6322a2ca41b1528b51afbd. No official releases included the actual function. The declaration shall be deleted. commit 08d5db4064a76649effef1bf2ab79f04cd848a6a Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-25 06:42:27 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-02-25 06:44:10 +0900 Reverting PR #4221 It seems this breaks tests on Solaris, so I'm reverting it until we figure out the right fix. http://rubyci.s3.amazonaws.com/solaris11-sunc/ruby-master/log/20210224T210007Z.fail.html.gz commit f3c8e477e1e1d38a0178d05e060ceeed2ef5a011 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-25 05:25:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-25 05:25:48 +0900 * 2021-02-25 [ci skip] commit 59fb5d4fa3e21dd00f8f45999bb7b4be9418429c Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-02-24 06:36:04 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-25 05:25:30 +0900 Add tests for bug 17652 Notes: Merged: https://github.com/ruby/ruby/pull/4221 commit a80366c922c5ad3ce27870d92ffbec5ce292ec31 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-02-24 06:29:53 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-25 05:25:30 +0900 Disable auto compaction on platforms that do not support it Notes: Merged: https://github.com/ruby/ruby/pull/4221 commit 785f5eb8f0f994c755ac5f1e1479f6e2ec6d0ef3 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-02-24 06:28:56 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-25 05:25:30 +0900 Use mmap for allocating heap pages Notes: Merged: https://github.com/ruby/ruby/pull/4221 commit 09f284c052854392fad1e63fd541a6c8704d7b90 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-02-24 20:01:44 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-02-24 20:01:44 +0900 Update bundled_gems commit 9d8c66fd6a3b9ff1c18cdbef88d34379253fb66d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-24 03:37:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-24 04:09:57 +0900 rb_fiber_terminate never returns commit 75fbea91ac76ad2f2a461443710119166a19b60d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-24 04:02:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-24 04:02:22 +0900 * 2021-02-24 [ci skip] commit a12e950816d4db950d975e062f903a5e8c75f1b6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-24 03:12:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-24 03:13:07 +0900 Revert "Enclose crtitical sections in `thread_exclusive` block" 19cc24b34b0490b7c2779eec521fe0089e05f183 and fixups. commit 7563d542d6c2bba5f5820f45b9707583aa28b136 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-23 23:11:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-23 23:11:44 +0900 Use the system getenv in setup_debug_log As ruby_set_debug_option() is called before ruby_sysinit(), CRITICAL_SECTIONs are not initialized yet. commit 819dd464dee2245299cb62323fe5c2b42940879e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-23 21:23:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-23 21:23:46 +0900 Fixed commit miss at 41eb4fbf86e7ae9c9ff993e07a19fa44eb74be9b commit 5a4742a0b4d57e95d6ed7e27c786a74e7cb55977 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-23 20:51:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-23 21:19:25 +0900 Make uenvarea thread exclusive commit 41eb4fbf86e7ae9c9ff993e07a19fa44eb74be9b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-23 20:46:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-23 20:46:40 +0900 Fixed commit miss at 19cc24b34b0490b7c2779eec521fe0089e05f183 commit da18d6f0154f020733747c359b08d216db05c26a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-23 19:08:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-23 19:28:03 +0900 Constified possible data commit 19cc24b34b0490b7c2779eec521fe0089e05f183 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-23 16:22:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-23 19:03:54 +0900 Enclose crtitical sections in `thread_exclusive` block Notes: Merged: https://github.com/ruby/ruby/pull/4214 commit b956efdc1e67e91fcf5d3ab0fd4bc651d003afe7 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-02-23 16:46:04 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-02-23 16:46:12 +0900 Drop obsoleted ci skip checks https://github.blog/changelog/2021-02-08-github-actions-skip-pull-request-and-push-workflows-with-skip-ci/ commit 95251dc8a9dd76ab1117812f932e77c8230d5a13 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-02-23 16:38:44 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-02-23 16:45:04 +0900 Drop check_branch CI job Now that GitHub Actions always skips any job if [ci skip] is given regardless of our CI config, we cannot merge such PRs like https://github.com/ruby/ruby/pull/4211 unless you're an admin. https://github.blog/changelog/2021-02-08-github-actions-skip-pull-request-and-push-workflows-with-skip-ci/ To avoid letting us spend time to ask contributors to remove [ci skip] before merging PRs, I removed the "check_branch" requirement from protected branches. Because the main purpose of this job was to prevent (non-admin) committers from directly pushing commits to the GitHub mirror, this job is now useless. commit 0d76636117c99921ac7c43293ba7962d22e72fbd Author: Andrew Aladjev <aladjev.andrew@gmail.com> AuthorDate: 2021-02-23 07:35:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-23 16:20:01 +0900 added mutexes for socket and connection lists on win32 Notes: Merged: https://github.com/ruby/ruby/pull/4212 commit 09c74a170219818e8317806df170f72812db0ef8 Author: Lars Kanis <lars@greiz-reinsdorf.de> AuthorDate: 2021-02-23 00:35:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-23 10:48:31 +0900 [DOC] Fix copy+paste mistake [ci skip] It was introduced in commit 089b7a84606925e885fe91050483a352735aa91e . Notes: Merged: https://github.com/ruby/ruby/pull/4211 commit 7d4a3ac0c5a004a410c425d334975e09420f47cd Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-23 07:58:05 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-23 07:58:05 +0900 * 2021-02-23 [ci skip] commit 58e82206057f2a1644b69ac3631016009ae48590 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2021-02-13 12:45:08 +0900 Commit: Alan Wu <XrXr@users.noreply.github.com> CommitDate: 2021-02-23 07:57:47 +0900 Check for cyclic prepend before making origin It's important to only make the origin when the prepend goes through, as the precense of the origin informs whether to do an origin backfill. This plus 2d877327e fix [Bug #17590]. Notes: Merged: https://github.com/ruby/ruby/pull/4181 commit 67d2619463061beafe86a773310962365380577f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-21 13:12:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-22 19:48:15 +0900 Expand final path name buffer for namespace prefix As final path name includes the namespace prefix, so expand room for it in path name buffer. Notes: Merged: https://github.com/ruby/ruby/pull/4210 commit 4e32a4ab81d510b1cb3cd45f7faafc917aa071cc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-22 12:01:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-22 13:24:27 +0900 Search subclasses from constants Notes: Merged: https://github.com/ruby/ruby/pull/4209 commit a7dda449e843ab1c208ba4d1bdbe269271fe66d2 Author: cremno <cremno@mail.ru> AuthorDate: 2021-02-21 17:35:04 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-22 12:19:21 +0900 [ruby/reline] fix Reline::Windows.getconsolemode buffer use double quotes to properly convert the \000 escape sequence. https://github.com/ruby/reline/commit/236dfe5683 commit 089b7a84606925e885fe91050483a352735aa91e Author: Lars Kanis <lars@greiz-reinsdorf.de> AuthorDate: 2021-02-22 12:18:16 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-22 12:18:16 +0900 Improve extension docs, remove deprecated rb_cData [ci skip] rb_cData is deprecated and the characteristic alloc_func was already removed in ruby-3.0. So this updates the recommendation accordingly. It also adds fdbm_alloc() in order to show the allocation process and to gives TypedData_Make_Struct() more context. Moreover it describes fdbm_aref(), so that the relation to rb_define_method() is shown. And fdbm_aref() makes use of GetDBM() now, to show how this macro might be used. Notes: Merged: https://github.com/ruby/ruby/pull/4208 Merged-By: nobu <nobu@ruby-lang.org> commit 431f531b17cd78b563be11e3c6716c715a812568 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-22 06:33:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-22 06:33:32 +0900 * 2021-02-22 [ci skip] commit 3ee4fa9491d0b2b5fb40deea8e93e797924de789 Author: nicholas a. evans <nicholas.evans@gmail.com> AuthorDate: 2021-02-22 06:33:11 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-22 06:33:11 +0900 Send :fiber_switch event for almost every fiber_switch (#4207) With this patch, TracePoint receives a `:fiber_switch` event for _almost_ every fiber switch. Previously, it would not be sent when an exception was going to be raised. Now the event should only be blockable by an interrupt (including `Thread#raise`) or a fatal error. Additionally, interrupts will now be checked on the return fiber _before_ re-raising the terminating unhandled exception. And a fiber that terminates with an unhandled exception no longer creates a pending interrupt on its thread. The exception will be raised in the return fiber the same way as `Fiber#raise`: using `cont.value` with `cont.argc == -1` I moved `rb_exc_raise` from `fiber_store` to the end of `fiber_switch` after _all_ of the other cleanup code: `fiber_stack_release`, `th->blocking` increment, `RUBY_VM_CHECK_INTS`, and `EXEC_EVENT_HOOK`. It seems to me that skipping those other cleanup steps may have also resulted in other bugs. Notes: Merged-By: ioquatix <samuel@codeotaku.com> commit aeac4ddcc0de536c0ecdea29e01dd2505e32f6ae Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-18 03:41:47 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-21 06:44:05 +0900 [ruby/reline] Use UTF-8 only for width calc, rest uses original encoding I confirmed that libvterm supports only which are UTF-8, US ASCII, UK, and DEC graphics by reading source code, so can't test this patch by yamatanoorogi gem through vterm gem for now. This fixes ruby/irb#190. https://github.com/ruby/reline/commit/44596c0cc7 commit 38d30a6942babb815bcd05b035fc58a7e13dd717 Author: Yoshinao Muramatu <ysno@ac.auone-net.jp> AuthorDate: 2021-02-17 23:56:34 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-21 06:43:52 +0900 [ruby/reline] check ENABLE_VIRTUAL_TERMINAL_PROCESSING flag and switch eof processing https://github.com/ruby/reline/commit/3535676689 commit 38cefac7ce277d8ea41c600e67a2046da3715ac3 Author: Yoshinao Muramatu <ysno@ac.auone-net.jp> AuthorDate: 2021-02-17 23:28:47 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-21 06:43:41 +0900 [ruby/reline] We still need support new and legacy behavior. Revert "Support for change in Windows-specific behavior at eol" This reverts commit cad4de6ee841b43f3f0e441626f9415c3eda0f82. https://github.com/ruby/reline/commit/646587fc2c commit 7aa3bc84039a1b5d9ddfc491ca32753346163dd6 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-16 01:46:53 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-21 06:43:31 +0900 [ruby/reline] Add a test for suppressing crash when dynamic prompt returns empty ref. https://github.com/ruby/reline/pull/262 https://github.com/ruby/reline/commit/b98bc3c329 commit a3055a35dd7b8b6520d5fe599d1c67490c556a3c Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-16 00:30:30 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-21 06:41:56 +0900 [ruby/reline] Move script files for yamatanooroti tests https://github.com/ruby/reline/commit/03031b885d commit ac9e3b514bc98ded741006c94281fb8aee10c7ef Author: Eamonn Webster <eamonn.webster@gmail.com> AuthorDate: 2021-02-15 04:24:03 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-21 06:41:11 +0900 [ruby/reline] Avoid tripping over nil prompt https://github.com/ruby/reline/commit/d4d9d3e3d4 commit dc9e33016c289f54407239b58e3e4669fdd442ad Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-15 00:27:51 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-21 06:41:03 +0900 [ruby/reline] Return 1 when char width not found This fixes ruby/reline#261. https://github.com/ruby/reline/commit/3cf1213014 commit b88be1009435ff10c582c727f71995f9c78f2885 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-21 00:11:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-21 00:11:22 +0900 * 2021-02-21 [ci skip] commit cc8e966e3c8b44dd946c4c50cc8d172e1d45e625 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-20 23:33:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-20 23:33:22 +0900 MSys is a variant of Cygwin commit 169c726f60b18fa283ac903809c3350318d3f06e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-20 21:05:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-20 21:05:57 +0900 [Win32] Fixed preprocessed file path Output preprocessed files under the corresponding directory to the source files. commit cfd162d535c7a4f8b1f95255cc6be696a8b75557 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-10 06:50:36 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-20 11:17:47 +0900 Make String#{strip,lstrip}{,!} strip leading NUL bytes The documentation already specifies that they strip whitespace and defines whitespace to include null. This wraps the new behavior in the appropriate guards in the specs, but does not specify behavior for previous versions, because this is a bug that could be backported. Fixes [Bug #17467] Notes: Merged: https://github.com/ruby/ruby/pull/4164 commit efd19badf43f4f1f24d5aec8a28e94a6e1e47b5b Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-02-20 04:11:19 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-20 04:11:19 +0900 Improve performance some Numeric methods [Feature #17632] (#4190) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 837e77e0202e96060498794ff97a097e5440d148 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-02-20 04:10:21 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-20 04:10:21 +0900 Fix link msdn.microsoft.com (#4202) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit b51e5c2370e1579f1f225ea4cfc9e834b7575944 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-20 01:25:40 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-02-20 01:30:11 +0900 Remove mentions of Bignum in time.c Move section on internal details out of the class-level documentation, since users do not need to know that. Update it to use Integer(T_BIGNUM) instead of Bignum. Fixes [Misc #17580] commit 87437326214e4587a41946c8937e11418d983acd Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-01-26 07:56:03 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-02-20 01:14:24 +0900 Fix backtrace to not skip frames with iseq without pc Previously, frames with iseq but no pc were skipped (even before the refactoring in 3b24b7914c16930bfadc89d6aff6326a51c54295). Because the entire backtrace was processed before the refactoring, this was handled by using later frames instead. However, after the refactoring, we need to handle those frames or they get lost. Keep two iteration counters when iterating, one for the desired backtrace size (so we generate the desired number of frames), and one for the actual backtrace size (so we don't process off the end of the stack). When skipping over an iseq frame with no pc, decrement the counter for the desired backtrace, so it will continue to process the expected number of backtrace frames. Fixes [Bug #17581] Notes: Merged: https://github.com/ruby/ruby/pull/4120 commit 4849575932b36d5e4fb074fb207271dac5ff62d5 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-20 00:51:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-20 00:51:36 +0900 * 2021-02-20 [ci skip] commit b94b7965c420661ed621c146a4efaf43bc3cf50b Author: YO4 (Yoshinao Muramatsu) <ysno@ac.auone-net.jp> AuthorDate: 2021-02-20 00:48:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-20 00:50:57 +0900 Fixed fallback ENABLE_VIRTUAL_TERMINAL_PROCESSING value [Bug #17639] commit a319c048187bb32677730a6c6e5a1a0fce7fad36 Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-02-19 17:27:53 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-02-19 17:27:53 +0900 Fix typo [ci skip] commit 9c769575bfa2a5c9e7078eb2840bba640dc46077 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-02-19 14:57:59 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-19 16:54:31 +0900 invalidate negative cache any time. negative cache on a class which does not have subclasses was not invalidated, but it should be invalidated because other classes can cache this negative cache. [Bug #17553] Notes: Merged: https://github.com/ruby/ruby/pull/4201 commit d260cbe2950392c41e263c82ab753e5faa12468c Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-02-19 14:56:58 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-19 16:54:31 +0900 show more information about imemo_ment rb_obj_info(obj) (rp(obj)) doesn't show enough information for non-iseq methods, so this patch shows more. Notes: Merged: https://github.com/ruby/ruby/pull/4201 commit 4c4c0043b81f9e03f6cca50b523fb6db9f6b9c0e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-19 16:41:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-19 16:41:44 +0900 * 2021-02-19 [ci skip] commit 5de38c41ae7bf17ae599fdfa9f8face87f16d8bb Author: Shugo Maeda <shugo@ruby-lang.org> AuthorDate: 2021-02-19 16:38:34 +0900 Commit: Shugo Maeda <shugo@ruby-lang.org> CommitDate: 2021-02-19 16:40:29 +0900 ripper: fix a bug of Ripper::Lexer with syntax error and heredoc [Bug #17644] commit 7b9476fbfab738d1eb01b4b4c4af9a1680513019 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-02-18 17:59:40 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-18 22:35:34 +0900 Ractor.allocate should not be allowed Ractor.allocate and Ractor#dup should not be allowed like Thread. [Bug #17642] Notes: Merged: https://github.com/ruby/ruby/pull/4198 commit 9a5da2dcff51dfd845246cc21645369d1f7201c8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-18 20:49:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-18 21:18:37 +0900 [ruby/readline-ext] Initialize libedit before managing the history Fixes https://bugs.ruby-lang.org/issues/17629 https://github.com/ruby/readline-ext/commit/250d6787ed commit 9110021fd220dc5fdd3937533db8620ba57ce386 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-18 20:09:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-18 21:17:42 +0900 [ruby/readline-ext] Use omit https://github.com/ruby/readline-ext/commit/f6dff0a9f6 commit 07ab172ebef28bb82c2650694548d123802d6c22 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-02-18 15:04:33 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-18 17:04:59 +0900 sync check_rvalue_consistency_force() check_rvalue_consistency_force() uses is_pointer_to_heap() and it should be synchronized with other ractors. [Bug #17636] Notes: Merged: https://github.com/ruby/ruby/pull/4194 commit 100e464bee46ae71ef048ed85a9bdd012935a3f7 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-02-18 16:15:41 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-18 17:04:23 +0900 clear RVALUE on NEWOBJ event. NEWOBJ event is called without clearing RVALUE values (v1, v2, v3). This patch clear them before NEWOBJ tracepoint internal hook. [Bug #17599] Notes: Merged: https://github.com/ruby/ruby/pull/4196 commit 70cf53b4d232ee00321523afd308b723189f1575 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-18 16:51:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-18 16:51:44 +0900 Update bundled_gems commit feed820c968fd254417dbffc64c6634e3a3921bb Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-18 16:41:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-18 16:41:20 +0900 * 2021-02-18 [ci skip] commit 969b824a0c7605e0e570631d967ad0de0c37d0bf Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-02-18 15:47:32 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-18 16:40:59 +0900 sync GC rest if needed marking requires a barrier (stop all Ractors) and gc_enter() does it. However, it doesn't check rest event which can start marking. [Bug #17634] Notes: Merged: https://github.com/ruby/ruby/pull/4195 commit 42a16e5974c3919755013eeee0debb16ffb69ff5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-17 20:15:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-17 20:15:05 +0900 Removed no-longer used variable commit 33b8bd97a8e7d894c3e19b7362884c4882bf38e0 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-02-17 07:27:35 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-17 08:07:59 +0900 Remove unreachable if statement in gc_page_sweep This if statement is not reachable because `was_compacting` cannot be true when `heap->compact_cursor` is NULL. Notes: Merged: https://github.com/ruby/ruby/pull/4192 commit 7bd93293621b85a87e7e117317612bb0a84efb7a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-17 07:00:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-17 07:00:53 +0900 * 2021-02-17 [ci skip] commit 938e027cdf019ff2cb6ee8a7229e6d9a4d8fc953 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-27 08:49:21 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-17 07:00:36 +0900 Eliminate useless catch tables and nops from lambdas Before this commit: ``` $ ruby --dump=insn -e '1.times { |x| puts x }' == disasm: #<ISeq:<main>@-e:1 (1,0)-(1,22)> (catch: FALSE) == catch table | catch type: break st: 0000 ed: 0004 sp: 0000 cont: 0004 | == disasm: #<ISeq:block in <main>@-e:1 (1,8)-(1,22)> (catch: FALSE) | == catch table | | catch type: redo st: 0001 ed: 0006 sp: 0000 cont: 0001 | | catch type: next st: 0001 ed: 0006 sp: 0000 cont: 0006 | |------------------------------------------------------------------------ | local table (size: 1, argc: 1 [opts: 0, rest: -1, post: 0, block: -1, kw: -1@-1, kwrest: -1]) | [ 1] x@0<Arg> | 0000 nop ( 1)[Bc] | 0001 putself [Li] | 0002 getlocal_WC_0 x@0 | 0004 opt_send_without_block <calldata!mid:puts, argc:1, FCALL|ARGS_SIMPLE> | 0006 leave [Br] |------------------------------------------------------------------------ 0000 putobject_INT2FIX_1_ ( 1)[Li] 0001 send <calldata!mid:times, argc:0>, block in <main> 0004 leave ``` After this commit: ``` > ruby --dump=insn -e '1.times { |x| puts x }' == disasm: #<ISeq:<main>@-e:1 (1,0)-(1,22)> (catch: FALSE) 0000 putobject_INT2FIX_1_ ( 1)[Li] 0001 send <calldata!mid:times, argc:0>, block in <main> 0004 leave == disasm: #<ISeq:block in <main>@-e:1 (1,8)-(1,22)> (catch: FALSE) local table (size: 1, argc: 1 [opts: 0, rest: -1, post: 0, block: -1, kw: -1@-1, kwrest: -1]) [ 1] x@0<Arg> 0000 putself ( 1)[LiBc] 0001 getlocal_WC_0 x@0 0003 opt_send_without_block <calldata!mid:puts, argc:1, FCALL|ARGS_SIMPLE> 0005 leave ``` Fixes [ruby-core:102418] [Feature #17613] Co-Authored-By: Alan Wu <XrXr@users.noreply.github.com> Notes: Merged: https://github.com/ruby/ruby/pull/4125 commit 296a2cab07ce530809ee74dee61180fbb3ca6f91 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-16 19:36:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-16 20:34:23 +0900 Parse "-00:00" as UTC for the round-trip [Feature #17544] Notes: Merged: https://github.com/ruby/ruby/pull/4075 commit 5b7439bb7b1088ef5233175893229970cee339fd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-16 19:28:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-16 20:34:23 +0900 Non-UTC +00:00 zone should be still "+00:00" [Feature #17544] Notes: Merged: https://github.com/ruby/ruby/pull/4075 commit 9ef66ce3fcfee06d628b611dbc22026d7cc72d0e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-15 17:19:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-16 20:34:23 +0900 strftime.c: support unknown offset UTC in RFC 3339 [Feature #17544] In RFC 3339, -00:00 is used for the time in UTC is known, but the offset to local time is unknown. Support that representation by `-` flag for `z`. Notes: Merged: https://github.com/ruby/ruby/pull/4075 commit 4fc6fb2d124b3b122066b82b5d093bf416ab196f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-16 19:54:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-16 19:54:25 +0900 Update bundled_gems commit b1149bf3058ab886b0e66e543c2b60427735f94c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-16 19:52:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-16 19:54:16 +0900 Make the commit of updated bundled_gems file commit 96228e3ed606856095fec955717d72c815dc6523 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-02-16 18:49:48 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-02-16 18:52:40 +0900 Fix a spec failure http://ci.rvm.jp/logfiles/brlog.trunk-test.20210216-182358 ``` 1) $LOAD_PATH.resolve_feature_path raises LoadError if feature cannot be found FAILED Expected LoadError but no exception was raised (nil was returned) /tmp/ruby/v3/src/trunk-test/spec/ruby/language/predefined_spec.rb:1275:in `block (3 levels) in <top (required)>' /tmp/ruby/v3/src/trunk-test/spec/ruby/language/predefined_spec.rb:1259:in `block in <top (required)>' /tmp/ruby/v3/src/trunk-test/spec/ruby/language/predefined_spec.rb:1258:in `<top (required)>' ``` commit 1a84c07715413bc9bf250178f174fac0db240db9 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-02-16 18:17:09 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-02-16 18:17:09 +0900 Fix a failure http://ci.rvm.jp/results/trunk-test@ruby-sky1/3359644 ``` : 1) : TestEncoding#test_nonascii_library_path [/tmp/ruby/v3/src/trunk-test/test/ruby/test_encoding.rb:157]: : Exception(LoadError) with message matches to /\[Bug #16382\]/. ``` commit 4dfc5496b7b64a063b36cbabe95b43abe9fb48cd Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-02-16 18:12:47 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-02-16 18:13:27 +0900 Add NEWS entry for [Feature #16043] commit b75c0cd2fdf37f8916ef10ca48b239467c954631 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-16 18:11:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-16 18:11:39 +0900 * 2021-02-16 [ci skip] commit 02151dad1ba324fac5f8e9459334164d01893124 Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2019-08-04 20:09:30 +0900 Commit: Kazuhiro NISHIYAMA <znz@users.noreply.github.com> CommitDate: 2021-02-16 18:11:13 +0900 `$LOAD_PATH.resolve_feature_path` should not raise I think it's more friendly and easier to work with to return `nil` when the feature is not found in the $LOAD_PATH. Notes: Merged: https://github.com/ruby/ruby/pull/2317 commit 37b90bcdc17f1cd2c088db7db506ed7f5b2a775f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-15 16:06:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-15 18:29:35 +0900 [DOC] NEWS for Thread::Backtrace.limit [Feature #17479] Notes: Merged: https://github.com/ruby/ruby/pull/4187 commit 4f47d655e357a7f09943f199969b437a25665ed2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-15 15:58:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-15 18:29:35 +0900 Added Thread::Backtrace.limit [Feature #17479] Notes: Merged: https://github.com/ruby/ruby/pull/4187 commit 522b25668979892b10c71109a2520b300d57cb8c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-15 15:55:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-15 18:29:35 +0900 Added tests for --backtrace-limit option Notes: Merged: https://github.com/ruby/ruby/pull/4187 commit dfd029c9627b96f5bfc7ece2b61d5019131d83b2 Author: David Carlier <devnexen@gmail.com> AuthorDate: 2021-02-15 01:01:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-15 17:16:14 +0900 supports for stack protection for haiku. Notes: Merged: https://github.com/ruby/ruby/pull/4186 commit 2947ae3254c49e7861f29138df0b378fc81af14d Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-15 10:46:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-15 10:46:52 +0900 * 2021-02-15 [ci skip] commit 990b54054d341ea41b75f4abdbead880a47ec46b Author: Takashi Tamura <tamuratak@users.noreply.github.com> AuthorDate: 2021-02-13 12:07:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-15 10:46:29 +0900 Add a missing semicolon. Notes: Merged: https://github.com/ruby/ruby/pull/4180 commit dbeddfb0b20d40871f3850f48219a9cf1fade26c Author: Marvin Schmidt <marvin_schmidt@gmx.net> AuthorDate: 2021-02-14 22:12:32 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-14 22:12:32 +0900 Make global ruby namespace usage explicit If the use of the ruby namespace isn't prepended by `::` to make it explicit that the global ruby namespace is referenced here, it can clash with other non-global namespace named ruby, e.g. ``` // declaration namespace myproject { namespace ruby { // my ruby classes } } // implementation using namespace myproject; [...] rb_define_method(...); [...] ``` leads to the following error: ``` ../ruby/choice.cc: In function 'void {anonymous}::do_register_choice()': ../ruby/choice.cc:342:9: error: reference to 'ruby' is ambiguous 342 | rb_define_method(c_choices, "each", RUBY_FUNC_CAST(&choices_each), 0); | ^~~~~~~~~~~~~~~~ In file included from ../ruby/choice.cc:20: ../ruby/paludis_ruby.hh:53:15: note: candidates are: 'namespace paludis::ruby { }' 53 | namespace ruby | ^~~~ In file included from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/backward/2/stdalign.h:23, from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/defines.h:77, from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/ruby.h:23, from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby.h:38, from ../ruby/paludis_ruby.hh:44, from ../ruby/choice.cc:20: /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/internal/stdalign.h:92:11: note: 'namespace ruby { }' 92 | namespace ruby { | ^~~~ In file included from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/internal/anyargs.h:83, from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/ruby.h:24, from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby.h:38, from ../ruby/paludis_ruby.hh:44, from ../ruby/choice.cc:20: ../ruby/choice.cc:342:9: error: '::define' has not been declared 342 | rb_define_method(c_choices, "each", RUBY_FUNC_CAST(&choices_each), 0); | ^~~~~~~~~~~~~~~~ ../ruby/choice.cc:344:9: error: reference to 'ruby' is ambiguous 344 | rb_define_method(c_choices, "find_by_name_with_prefix", RUBY_FUNC_CAST(&choices_find_by_name_with_prefix), 1); | ^~~~~~~~~~~~~~~~ ``` Notes: Merged: https://github.com/ruby/ruby/pull/4185 Merged-By: nobu <nobu@ruby-lang.org> commit a681c484a3c5b9235c84bc5c253b4406e498e8cf Author: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> AuthorDate: 2021-02-14 19:43:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-14 19:44:41 +0900 Fixed codepage for utime [Bug #17626] Should use the given codepage argument. Co-Authored-By: Nobuyoshi Nakada <nobu@ruby-lang.org> commit 416956afa6bd64894b0412100985a1a0de0ac480 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-14 17:47:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-14 17:47:46 +0900 Set verbose flag at retrying commit 0dad341006c3d6a1d941451c5ad5f4d72b386595 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-14 17:41:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-14 17:41:26 +0900 Directory mapping for default gems To uniform directory structures, sometimes files are gathered in different directory than the upstreams, executable files in `libexec` for instance. Re-map these files to consistent with the upstreams. commit 504d6dc429f931d0ea45d1b0d969cd27476ff91b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-14 16:49:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-14 16:57:08 +0900 Revert following rbinstall.rb changes Because unexpected names are listed in gemspec files. * "Fix gemspec only case" fc56b96b09e477686975c978142e3af9179219cd * "Refined installation of gemspecs placed other than ext and lib" 31f4dec6373c15a58899f8b86e35d48a7d813bf6 commit ff527e7e3295ece6a8f2bc6a2370038615a43950 Author: Vít Ondruch <vondruch@redhat.com> AuthorDate: 2019-10-17 01:01:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-14 14:09:08 +0900 Remove binstubs which are generated by `Gem::Installer` now. There is no real reason to carry these around, since they can be generated during the installation. The `Gem::Installer` generates up to date date stubs, where the racc stubs were of older format and regenerated anyway. commit 763b8fed3dee32ff3bd6c86260f7d4ce4cfaa508 Author: Vít Ondruch <vondruch@redhat.com> AuthorDate: 2019-10-10 19:32:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-14 14:09:05 +0900 Use UnpackedInstaller to install default gems. Use UnpackedInstaller for installation of default gems similarly it is already used to install bundled gems. This allows to reuse RubyGems functionality instead of custom code full of exceptions. commit fc56b96b09e477686975c978142e3af9179219cd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-14 13:20:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-14 13:20:22 +0900 Fix gemspec only case commit 07a8f09b9f3e4ca0852633eb234115d84fb69fb7 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-14 11:07:03 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-14 11:07:03 +0900 * 2021-02-14 [ci skip] commit 31f4dec6373c15a58899f8b86e35d48a7d813bf6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-14 11:05:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-14 11:05:23 +0900 Refined installation of gemspecs placed other than ext and lib commit 813fe4c256f89babebb8ab53821ae5eb6bb138c6 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-02-13 05:37:46 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-13 11:51:33 +0900 opt_equality_by_mid for rb_equal_opt This patch improves the performance of sequential and parallel execution of rb_equal() (and rb_eql()). [Bug #17497] rb_equal_opt (and rb_eql_opt) does not have own cd and it waste a time to initialize cd. This patch introduces opt_equality_by_mid() to check equality without cd. Furthermore, current master uses "static" cd on rb_equal_opt (and rb_eql_opt) and it hurts CPU caches on multi-thread execution. Now they are gone so there are no bottleneck on parallel execution. Notes: Merged: https://github.com/ruby/ruby/pull/4177 commit 81995797bb4d2db11635f716e9230206b1283ec7 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-13 04:24:19 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-13 04:24:19 +0900 * 2021-02-13 [ci skip] commit 15dbaa0b54f10e43976d594ef987da5f51e0c7c1 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-02-12 05:32:19 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-13 04:23:57 +0900 [Fixes #17622] Mark and move the previous ep Notes: Merged: https://github.com/ruby/ruby/pull/4175 commit 1f0e0dfb228fd14b3f6687539ba274ba6a2d1643 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-12 12:21:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-12 12:21:49 +0900 Thread::Queue.new should accept an Enumerable [Feature #17327] Enumerable implements #to_a but not #to_array. commit e8b210542b7d290d6c3feeff85221ed7303d2aab Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-12 11:47:04 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-12 12:15:57 +0900 Define rb_to_array which converts with to_a commit 1a3b68e7c14638d1325849acd3c99ca30571cfb8 Author: Sarun Rattanasiri <7634596+midnight-wonderer@users.noreply.github.com> AuthorDate: 2021-02-12 06:56:51 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-12 06:56:51 +0900 correct the result of casecmp? examples [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4174 Merged-By: nobu <nobu@ruby-lang.org> commit 2d877327e12f499ac1a0d7096f4314cc92ef228e Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-10 08:39:34 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-02-12 00:45:52 +0900 Make a cyclic prepend not modify ancestors for the receiver Check for cyclic prepend before making any changes. This requires scanning the module ancestor chain twice, but in general modules do not have large numbers of ancestors. Notes: Merged: https://github.com/ruby/ruby/pull/4165 commit b83ad02997dfa910c08dd2d900f24468c15db264 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-12 00:02:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-12 00:02:33 +0900 * 2021-02-12 [ci skip] commit b83b27cddbd8b7147dfbfb3c00102da365e97760 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-11 21:03:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-12 00:02:16 +0900 [ruby/irb] Fix inverse separator condition https://github.com/ruby/irb/commit/33f933196f commit aea40f44aa2918f5b64d2eab1720b3d63a8b2c98 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-11 23:53:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-11 23:53:29 +0900 Fixed time_t conversion modifiers for debug commit 81f17857a7932cd838dd59991b4e6514f39184e6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-11 22:24:49 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-11 22:25:31 +0900 Merged too-short salt conditions instead of UNREACHABLE_RETURN commit f3f78f96548e10e76784b2b45771b41dd358afd2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-11 22:20:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-11 22:20:41 +0900 [DOC] Improved regexp.rdoc [ci skip] * Sub-sectioned "Repetition" section * Added examples of "Possessive match" commit 8544f51ef70b6b34aa6c81f5b52a4f05da464609 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-11 22:18:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-11 22:18:11 +0900 Comment in sh needs to be the beginning of a word commit 6eb5b3ac27ceebc0c6a1306678377c016552c9ad Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-09 17:29:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-11 20:36:43 +0900 [ruby/irb] The command "irb_info" should show RUBY_PLATFORM https://github.com/ruby/irb/commit/39d1cd874f commit b2d2d25b94fd9699408759f5b8b394f54f57ef89 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-08 11:08:57 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-11 20:31:29 +0900 [ruby/irb] Suppress colorize on Windows tests https://github.com/ruby/irb/commit/5be9354cf9 commit d77a42fbfd60f4e4f49f1feb56e089494fbf3572 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-10 23:24:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-11 20:27:25 +0900 [ruby/irb] Suppress error when File::ALT_SEPARATOR is nil https://github.com/ruby/irb/commit/96accf3b95 commit c3b2bb0969cc47dcfb1f624c94a46cdf1e2cc2ad Author: Chris Seaton <chris.seaton@shopify.com> AuthorDate: 2021-02-11 19:14:18 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-11 19:14:18 +0900 The Queue constructor should take an initial set of objects Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4140 Merged-By: nobu <nobu@ruby-lang.org> commit a0216b1acf375e8b3fb7dbb31bd5711acc76d05e Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-02-11 17:25:45 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-02-11 17:25:46 +0900 Do not run File.write while Ractors are running also make sure all local variables have the __bmdv_ prefix. commit 27382eb9fc3f8de4884a5b14903fecb64ba76011 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-02-11 14:24:25 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-11 14:24:25 +0900 Add a benchmark-driver runner for Ractor (#4172) * Add a benchmark-driver runner for Ractor * Process.clock_gettime(Process:CLOCK_MONOTONIC) could be slow in Ruby 3.0 Ractor * Fetching Time could also be slow * Fix a comment * Assert overriding a private method Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 9e66c511ffee4c5d10ed69ccd90514e7548a06b3 Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-02-10 22:35:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-11 13:33:21 +0900 Fix 404 link Notes: Merged: https://github.com/ruby/ruby/pull/4169 commit c03b723f56c9b31fb566d83ebecaeae5860b78dd Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-11 01:12:12 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-02-11 01:17:07 +0900 Update class documentation for StringScanner The [] wasn't being displayed, and try to fix formatting for bol? and << (even if they aren't linked). Fixes [Bug #17620] commit b7333b444961016f926285482136f0488f843dde Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-11 00:56:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-11 00:56:12 +0900 * 2021-02-11 [ci skip] commit fc83b4896e9d7de084b203b133b84c1209c6ad88 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-10 07:15:31 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-02-11 00:55:53 +0900 Don't document that Thread#group can return nil Thread's are assigned a group at initialization, and no API exists for them to unassign them from a group without assigning them to another group. Fixes [Bug #17505] Notes: Merged: https://github.com/ruby/ruby/pull/4163 commit e271a3d4afc47e812b50fc9c50f6bf34d2d723a6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-10 17:44:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-10 21:11:53 +0900 [DOC] Update README files to use autoreconf [ci skip] commit 4b6347ab3907850769aa8e93674a4c0a4a18c668 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 13:59:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-10 19:45:14 +0900 Compile debugging code for time always Notes: Merged: https://github.com/ruby/ruby/pull/4168 commit ef59a781d7c93c5e1d0b4c8a8b408b8c880c9cc9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 13:21:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-10 19:45:14 +0900 Fixed the signature of find_time_numguess_getter Notes: Merged: https://github.com/ruby/ruby/pull/4168 commit 3acc81d9e41b18380b9e0168fe2b5e5e0c727256 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-10 15:24:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-10 19:44:47 +0900 Fixed race in dtoa [Bug #17612] Fixed the race condition when replacing `freelist` entry with its chained next element. At acquiring an entry, hold the entry once with the special value, then release by replacing it with the next element again after acquired. If another thread is holding the same entry at that time, spinning until the entry gets released. Co-Authored-By: Koichi Sasada <ko1@atdot.net> Notes: Merged: https://github.com/ruby/ruby/pull/4167 commit ad2c7f8a1ea82d5b1913b466fcac63b77cb07569 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-10 19:42:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-10 19:42:00 +0900 Simple benchmark of Float#to_s commit 281dfacb5db335c60b3f0ec58bb077690b100a35 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-10 10:11:02 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-02-10 12:54:05 +0900 .github/workflows/compilers.yml: clang-13 LLVM made release/122.x branch. Its master is now version 12. Notes: Merged: https://github.com/ruby/ruby/pull/4166 commit e72757a3117795457490a9ae57e59fde20b5d57f Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-02-02 20:42:13 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-02-10 12:49:33 +0900 [ruby/zlib] Don't use gemspec for gem dependecy https://github.com/ruby/zlib/commit/7d3d19710f commit 231f0f6f45336ec9fff167d00f87b0f53bd01be7 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-02-02 20:59:04 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-02-10 12:49:16 +0900 [ruby/zlib] test-unit didn't provide __name__ attribute https://github.com/ruby/zlib/commit/7d3fc1f325 commit 49d3830f44031174ad450a0ea1cdcdf0eabf9d0e Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-02-10 07:47:36 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-02-10 07:47:36 +0900 Fix documentation for Module#ruby2_keywords It returns nil, not self. Fixes [Bug #17560] commit 189bf0106fbd77bcab4dd2567c95e41d8c269035 Author: Use amazing-print instead <git@caulfield.me> AuthorDate: 2021-02-10 06:06:40 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-02-10 06:16:32 +0900 Fix broken link The document should point to doc/syntax/comments.rdoc (with an "s") as there currently no `doc/syntax/comment.rdoc` Notes: Merged: https://github.com/ruby/ruby/pull/4162 commit bb10f81c908a4f204a73219e1560107e874cc30e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-10 04:40:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-10 04:40:53 +0900 * 2021-02-10 [ci skip] commit 66394aec9813e52751e2b099ee6a4814ace494f8 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-02-10 04:39:41 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-02-10 04:39:41 +0900 vm_dump.c: Dump machine registers on RISC-V Linux Fixes [Bug #17615] Co-Authored-By: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> commit e7a831de8e1f38c2e25ae1610db5f3f62265176b Author: Use amazing-print instead <git@caulfield.me> AuthorDate: 2021-02-09 21:53:51 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-02-09 22:22:37 +0900 Improve the wording surrounding `Proc#isolate` This change moves the statement that `Proc#isolate` isn't yet exposed for Ruby users to the first time the method is mentioned. This is so that readers don't waste time trying to look it up in Ruby docs. There was also unnecessary duplication: ``` Paragraph 1: "Given block will be isolated from outer scope by Proc#isolate." Paragraph 2: "Given block will be isolated by Proc#isolate method" ``` So I combined the two sentences and slightly improved the wording for clarity. Notes: Merged: https://github.com/ruby/ruby/pull/4161 commit 6bb103f01263583bcbe4baa8bdd380f08c46f70e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 17:49:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-09 17:49:28 +0900 [ruby/console] Updated depend commit 5bfca88f760727240902a70d1df0cc516ff31a70 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 17:39:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-09 17:39:00 +0900 [ruby/io-console] Fixed typo commit df4f8aa248ed959938e0071ec75fb6a615eed4e8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 17:38:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-09 17:38:52 +0900 [ruby/io-console] Fixed regression against 3.0 commit 96441b91a689c66e94127c44e47d19d7af8482a2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 17:15:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-09 17:15:29 +0900 Define macro for fiber/scheduler.h commit e7416b4c7e65654fcee173d85bb6d46f0dd40c62 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 17:11:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-09 17:11:14 +0900 Updated pre-prototype declarations commit 8776606b1d3f1c45b1c7c551a5afca1f5adcf561 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 16:59:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-09 16:59:15 +0900 strip trailing spaces [ci skip] commit 5f69a7f60467fa58c2f998daffab43e118bff36c Author: Samuel Williams <samuel.williams@oriontransfer.co.nz> AuthorDate: 2021-02-09 15:39:56 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-09 15:39:56 +0900 Expose scheduler as public interface & bug fixes. (#3945) * Rename `rb_scheduler` to `rb_fiber_scheduler`. * Use public interface if available. * Use `rb_check_funcall` where possible. * Don't use `unblock` unless the fiber was non-blocking. Notes: Merged-By: ioquatix <samuel@codeotaku.com> commit 3c593f28ede99b77d4fe3258f9bda78dcee238a3 Author: Andrew Aladjev <aladjev.andrew@gmail.com> AuthorDate: 2021-02-09 14:48:03 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-09 14:48:03 +0900 Fixed default coroutine selection for musl. Notes: Merged: https://github.com/ruby/ruby/pull/3567 Merged-By: ioquatix <samuel@codeotaku.com> commit fad7908a5de4ab08367914d53780ff6518d5f552 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-02-09 13:29:42 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-09 13:29:42 +0900 Improve performance Float#positive? and Float#negative? [Feature #17614] (#4160) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit 97cf290063ab940d08819cd96cbcca0ef6d50e4c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 00:42:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-09 12:59:06 +0900 Copy va_list of exception classes The list is reused when an exception raised again after retrying in the rescue procedure. Notes: Merged: https://github.com/ruby/ruby/pull/4159 commit a6f5f3cccda381ae332aaa6467f2644611371fb5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 10:08:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-09 12:59:06 +0900 Also `eclass` loop can raise in `rb_obj_is_kind_of` Notes: Merged: https://github.com/ruby/ruby/pull/4159 commit e0c100ec96810b999c704fc73d60255484b63844 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 08:41:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-09 08:41:06 +0900 Adjusted indent [ci skip] commit 265c0022390e3dcd4ff692fc77d29b94e652c877 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 01:00:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-09 01:00:00 +0900 Do not allocate ractor-local storage in dfree function during GC commit 0d89aedb734372bc35d8a569a992d13e86e7923e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-09 00:39:58 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-09 00:44:37 +0900 Assign TAG_NONE to ruby_tag_type instead of 0 commit 15e933f2c666ce9628ba29e4a0345fd6e0edbed8 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-09 00:07:27 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-09 00:07:27 +0900 * 2021-02-09 [ci skip] commit dfff1df95ca4f678e926d4e22092697d0eb91e73 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-08 23:56:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-08 23:56:19 +0900 vcs.rb: update the given option to VCS.detect by keyword arguments commit a0faad38ce6b2a32f33cd045d1c26f4f55d3afe5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-08 23:55:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-08 23:56:01 +0900 vcs.rb: added `base_url` keyword option to GIT#export_changelog commit ced09d521c4246e4a973da771ed9b2b60a8fcad3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-08 23:45:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-08 23:45:51 +0900 vcs.rb: improved export_changelog * arguments are optional * `path` may be passed as a keyword argument * `nil` or `"-"` path means stdout commit 4186cd6435a58a9233ffe52f5d5ee6374d098883 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-08 21:43:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-08 21:46:07 +0900 Revert a part of "[DOC] refined" [ci skip] This reverts commit 478716f49a19cdd86f629c6a0673c1ff53630c96 partially -- "Removed unnecessary parentheses" part -- because of a lambda, see 9e25eb308d4fae9a10e120c2b4601916cc38336c. commit 3a7ff66abc0c389851ab3c5cd0ac53ebe0647eec Author: Keith Bennett <keithrbennett@gmail.com> AuthorDate: 2021-02-08 13:02:52 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-02-08 13:06:17 +0900 [ruby/benchmark] Adds `Tms#to_h` [Feature #17601] commit 9328112b9d6622e57eb348a0241d925271486e29 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-08 11:38:30 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-08 11:38:30 +0900 * 2021-02-08 [ci skip] commit bf627e518d4575fd8ebfc28992b2177392b1dd20 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-08 11:33:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-08 11:33:53 +0900 Forward keyword arguments to ARGF from global functions commit 1d686bdeb9d144f4ae2298c7ab5f46edefbd18dc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-08 11:04:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-08 11:31:34 +0900 Added test for keyword arguments to ARGF commit 1ba2b5cdee62426326b93b77877c141609f0b939 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-08 10:35:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-08 10:35:51 +0900 Removed unnecessary parentheses at `case` [ci skip] commit 1499f626a55fff59ccfa51dc2924ebfe7c6ded82 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-07 23:35:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-07 23:35:06 +0900 [DOC] Modified prefixes to get rid of conflicts commit 03e3cc2b7210edc62ee2af773b7ce479afdac78b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-07 23:10:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-07 23:12:06 +0900 [DOC] make individual names so that rdoc can find each documents commit 0261519f6e69f16e0f995be423688b7957573f67 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-07 23:09:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-07 23:11:59 +0900 [DOC] Module#method_undefined commit 478716f49a19cdd86f629c6a0673c1ff53630c96 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-07 21:01:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-07 21:24:44 +0900 [DOC] refined * Adjusted indentation in license section, and used "(c)" * Commented out invalid syntax to enable highlighting * Removed unnecessary parentheses commit 947d93b715436b13eefa39f87737bdad3c1f870a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-07 10:30:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-07 10:30:43 +0900 [DOC] {Array,MatchData}#values_at understand ranges [ci skip] commit 93ebfed0a97ba97a4a7421eca63c1c2883471d54 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-07 04:55:09 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:29:31 +0900 [ruby/reline] Version 0.2.3 https://github.com/ruby/reline/commit/b26c7d60c8 commit 8aac11484ba23c26877df1810e4c462ac46d2752 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-07 04:55:38 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-07 05:28:08 +0900 [ruby/irb] Version 1.3.3 https://github.com/ruby/irb/commit/4c87035b7c commit 300084a85475988ba7c22e335230f31ec415dfc5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-05 21:39:29 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:12:19 +0900 [ruby/reline] Terminate correctly in the middle of lines higher than the screen https://github.com/ruby/reline/commit/e1d9240ada commit fee19da2305c2977985206b7db86917d0f7ac8db Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-03 17:56:49 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:12:07 +0900 [ruby/reline] Autowrap correctly when inserting chars in the middle of a line https://github.com/ruby/reline/commit/ebaf37255f commit a19ed1623f0341471b90888d02cfcf2601c5f2db Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-02 21:29:20 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:11:54 +0900 [ruby/reline] The vi_histedit supports multiline This closes ruby/reline#253. https://github.com/ruby/reline/commit/f131f86d71 commit a608bb3e9b13e81940ffbda5cdc30ad373aaa7a5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-02 21:28:59 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:11:47 +0900 [ruby/reline] Move cursor just after the last line when finished https://github.com/ruby/reline/commit/ba06e4c480 commit 08162f0e6926441d6393d11de45671ab174d88dc Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-02 23:58:20 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:11:41 +0900 [ruby/reline] Update cursor info by inserting newline even if not in pasting https://github.com/ruby/reline/commit/92d314f514 commit b371ca3f4f304fdc219fe638ff3614b02780c2d3 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-31 23:44:13 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:11:27 +0900 [ruby/reline] Handle past logs correctly when the code is higher than the screen https://github.com/ruby/reline/commit/f197139b4a commit bd0f8b36fd31951a23f918074a2ba2c95c55a28a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-31 13:45:21 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:11:13 +0900 [ruby/reline] Show all lines higher than the screen when finished On Unix-like OSes, logs prior to the screen are not editable. When the code is higher than the screen, the code is only shown on the screen until input is finished, but when it is finished, all lines are outputted. https://github.com/ruby/reline/commit/8cd9132a39 commit 03523fdafb320d53cc455065a25079a9e3a93707 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-29 18:27:54 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:11:00 +0900 [ruby/reline] Scroll down when ^C is pressed https://github.com/ruby/reline/commit/6877a7e3f5 commit ec6929a5ddf2c00ad991484daad7f73cec36f29b Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-28 16:25:48 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:10:50 +0900 [ruby/reline] Remove an unused variable https://github.com/ruby/reline/commit/123ea51166 commit 433b975fe88df3eac87dee970f7c46d668774023 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-28 16:25:27 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:10:36 +0900 [ruby/reline] Initialize uninitialized variables in tests https://github.com/ruby/reline/commit/25af4bb64b commit b69c965f477af1b2eb883137b3df9da8fca7b616 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-26 13:18:05 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-02-07 05:09:18 +0900 [ruby/reline] Cache pasting state in processing a key Because it's too slow. The rendering time in IRB has been reduced as follows: start = Time.now def each_top_level_statement initialize_input catch(:TERM_INPUT) do loop do begin prompt unless l = lex throw :TERM_INPUT if @line == '' else @line_no += l.count("\n") next if l == "\n" @line.concat l if @code_block_open or @ltype or @continue or @indent > 0 next end end if @line != "\n" @line.force_encoding(@io.encoding) yield @line, @exp_line_no end break if @io.eof? @line = '' @exp_line_no = @line_no @indent = 0 rescue TerminateLineInput initialize_input prompt end end end end puts "Duration: #{Time.now - start} seconds" 0.22sec -> 0.14sec https://github.com/ruby/reline/commit/b8b3dd52c0 commit 132e01a1c3ada1fe31559f8b2a3bf7106406f6d2 Author: Adam Jensen <acjensen@gmail.com> AuthorDate: 2021-02-07 01:07:03 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-02-07 03:03:40 +0900 .gdbinit: Fix indentation in print_id [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4156 commit bfc7bb5d8aa1a5f1cf8f29b1aef86c8abecc45cf Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-07 03:02:42 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-07 03:02:42 +0900 * 2021-02-07 [ci skip] commit 34c422b678437b2556bbd246c6efc886864945c0 Author: Garen Torikian <gjtorikian@users.noreply.github.com> AuthorDate: 2021-02-06 23:05:37 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-02-07 03:02:17 +0900 Fix grammatical error Notes: Merged: https://github.com/ruby/ruby/pull/4155 commit 7b354cf67ba95305b600cc8b3ba684923cdc5a98 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-06 21:07:11 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-06 21:09:31 +0900 [ruby/irb] Enable to reassign a new block with "measure" command https://github.com/ruby/irb/commit/b444573aa2 commit 5704b5fe5e42bd5b1f42a27368cd5d52dd5a9060 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-02-06 20:23:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-06 20:45:08 +0900 [ruby/irb] Allow "measure" command to take block https://github.com/ruby/irb/commit/20f1ca23e9 commit e1e61e256bd65ac3f293ba1513d1a934b9a3bff9 Author: Masaki Matsushita <glass.saga@gmail.com> AuthorDate: 2021-02-06 17:01:42 +0900 Commit: Masaki Matsushita <glass.saga@gmail.com> CommitDate: 2021-02-06 17:23:16 +0900 Improve performance of Array#- when it is called with empty array This change make Array#- return a copy of the receiver when the other array is empty. commit 94fb62e4a01975d61ad074f882068fdd7d6ed474 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-06 13:40:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-06 13:40:50 +0900 [DOC] Fixed a markup in Array#sum [ci skip] commit 575c77ddfbe9a185f131dfa51a714c796bdcd316 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-06 13:14:33 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-06 13:14:33 +0900 * 2021-02-06 [ci skip] commit 52ce583f5281afbb1d89d45d9063026846415e48 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-05 15:06:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-06 13:13:58 +0900 Stop disabling firewall commit b2674c1fd725b43adf51af7935c780359d70c2a4 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-02-05 15:30:53 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-05 15:33:00 +0900 unblock thread is only for main ractor. other ractors should not have a unblock thread. This patch fixes 6f727853cee41195b67ee5d793c1ac23fe1a6ae0. commit 7baedeffe93dbb03c2e69129c3100596c1ff0e71 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-28 21:00:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-05 13:59:27 +0900 Added tests for MakeMakefile#test_egrep_cpp commit 0acc05caf7518cd0d63ab02bfa036455add02346 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-02 08:33:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-05 12:34:17 +0900 Add -fdeclspec to CFLAGS instead of CC commit abf71864a529d09047926defac875e001781a28f Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-02-05 06:03:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-05 12:29:33 +0900 [ruby/io-console] Mark all tests that use run_pty as pend on JRuby JRuby's PTY.spawn does not produce a process with its own controlling terminal, which is necessary for testing these raw escape sequences. This commit marks those tests as pending. The functionality tested appears to work at a command line, but due to this PTY bug in JRuby we cannot test it this way. See https://github.com/jruby/jruby/issues/6552 https://github.com/ruby/io-console/commit/a486b72e5e https://github.com/ruby/io-console/commit/b5c8e7bfd8 commit a1cc044ea18daa3b2f49d6c74095cb94c00cbc5a Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-02-05 06:03:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-05 12:01:38 +0900 [ruby/io-console] Use omit instead of skip This test runs with test/unit now, which defines omit instead of skip. https://github.com/ruby/io-console/commit/bd731d0b8d commit 2a764fe7644f839cec445d3467303543ad7a087b Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-02-04 08:30:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-05 12:01:38 +0900 [ruby/io-console] Skip test on JRuby The subprocess script here works fine at a command line, but when run as a pty subprocess during the tests the master side hangs waiting for output. https://github.com/ruby/io-console/commit/4a21610ece commit 8960d6b5bdf8cffe01aa21bec17d8b889398acae Author: Charles Oliver Nutter <headius@headius.com> AuthorDate: 2021-02-04 05:51:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-05 12:01:38 +0900 [ruby/io-console] Add console.rb to search for paths https://github.com/ruby/io-console/commit/74567376c4 commit 9ef7780b0946c2bc96fe39b32c75c08134bfb408 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-29 12:49:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-05 11:45:04 +0900 [ruby/io-console] Run subprocesses without test libraries Now io/console is loaded from test-unit indirectly, test-unit requires power_assert which requires io/console. https://github.com/ruby/io-console/commit/8817d07951 https://github.com/ruby/io-console/commit/639cce89de commit fcdccbff0166566b2cf034a34f572fad8d9acb8b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-05 09:55:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-05 10:12:17 +0900 travis_retry.sh is not needed on GitHub Actions At least check_dependencies.yml has not failed here yet. commit 3a888398a661d7dc3cbcc21b8983809905b07adb Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-01-21 17:45:11 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-05 02:53:31 +0900 objspace_dump.c: tag singleton classes and reference the superclass Notes: Merged: https://github.com/ruby/ruby/pull/4104 commit 365326a09e55cacbf6677105db12aa79de9c4404 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-05 02:49:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-05 02:49:21 +0900 * 2021-02-05 [ci skip] commit 75b96c3a056d9e50bdabd87fa4676e6aaffbcff0 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-04 09:17:28 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-05 02:49:00 +0900 Don't register non-heap allocated objects `rb_define_const` can add objects as "mark objects". This is to make code like this work: https://github.com/ruby/ruby/blob/33d6e92e0c6eaf1308ce7108e653c53bb5fb106c/ext/etc/etc.c#L1201 ``` rb_define_const(rb_cStruct, "Passwd", sPasswd); /* deprecated name */ ``` sPasswd is a heap allocated object that is also a C global, so we can't move it (it needs to be pinned). However, we have many calls to `rb_define_const` that just pass in an integer like this: ``` rb_define_const(rb_cDBM, "WRITER", INT2FIX(O_RDWR|RUBY_DBM_RW_BIT)); ``` Non heap allocated objects like integers will never move, so there is no reason to waste time in the GC marking / pinning them. Notes: Merged: https://github.com/ruby/ruby/pull/4152 commit b79d44348216e293f35801984f109ec9b02dcf83 Author: ima1zumi <mariimaizumi5@gmail.com> AuthorDate: 2021-02-04 19:59:40 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-04 21:12:54 +0900 [ruby/irb] Add info.rb to gemspec https://github.com/ruby/irb/commit/adbba19adf commit f71659d47bacdaeb57689de7274413e64937637c Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-02-04 17:47:12 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-02-04 17:47:12 +0900 Revert "vm_dump.c: Do not show C backtrace on riscv" This reverts commit 6985bfb72c8d7e7d94f1aad1f0902b602bbfa6da. Now it should work on riscv by the previous commit. [Bug #17609] commit 7d22060c14895bbca3ff962e5456384095b66738 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-02-04 17:45:54 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-02-04 17:45:54 +0900 addr2line.c: DW_LNS_fixed_advance_pc takes a single uhalf operand Fixes [Bug #17609] Co-Authored-By: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> commit 90f008f569718c8cbb311a7e0f939b639cd9e48a Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-02-04 13:06:20 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-04 16:25:55 +0900 Remove unsued str_new_shared function declaration Notes: Merged: https://github.com/ruby/ruby/pull/4151 commit 46b5b51cc64559b0e6e7e0f0e7173e17cd4681df Author: Dimitris Zorbas <dimitrisplusplus@gmail.com> AuthorDate: 2021-02-04 07:48:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-04 13:29:58 +0900 [DOC] Fix typo in ext/socket/socket.c [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4150 commit 4e2e1d60936a3dcbc0e51b1c9c925ef41c1780f6 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-30 13:00:03 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-02-04 13:18:58 +0900 [ruby/bigdecimal] Fix uint64 conversion Stop using logarithm to compute the number of components. Instead, use the theoretical maximum number of components for buffer, and count up the actual number of components during conversion. https://github.com/ruby/bigdecimal/commit/9067b353ac commit 868d66e0b513ae038648fffbe826d9580099a6f4 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-30 12:05:15 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-02-04 13:18:52 +0900 [ruby/bigdecimal] Stop using rmpd and RMPD prefixes and DBLE_FIG https://github.com/ruby/bigdecimal/commit/7479923fdb commit b0d6563f131d98f72c508199e5e3bc8da80b90ab Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-02-04 12:34:19 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-02-04 12:34:19 +0900 rb_clear_method_cache_by_class: no longer exist It is questionable whether we can change a public API but this function does not exist today. No way. commit 33d6e92e0c6eaf1308ce7108e653c53bb5fb106c Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-04 05:48:37 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-02-04 05:48:37 +0900 Revert "Don't pin `val` passed in to `rb_define_const`." I think this is breaking something This reverts commit 1be84e53d76cff30ae371f0b397336dee934499d. commit 6b4814083b3b7d4b5aadc6758a9cdd9ca4619ff1 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-04 02:35:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-04 02:35:37 +0900 * 2021-02-04 [ci skip] commit 1be84e53d76cff30ae371f0b397336dee934499d Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-02 03:42:13 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-04 02:35:15 +0900 Don't pin `val` passed in to `rb_define_const`. The caller should be responsible for holding a pinned reference (if they need that) Notes: Merged: https://github.com/ruby/ruby/pull/4144 commit 71c746379d5872e250d90ae45c585760afaf9516 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-03 17:38:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-03 19:59:35 +0900 Make alias for aliased original method Chaining aliased methods increases searching cost linearly. Notes: Merged: https://github.com/ruby/ruby/pull/4149 commit 8df1881c8fc9c173963e8f7d0d078e8d56640903 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-29 18:06:13 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-02-03 18:25:03 +0900 [ruby/bigdecimal] Fix the maximum length of float number This change is for preventing the false-positive alert by CoverityScan. See CID-1471770 for the detail. https://github.com/ruby/bigdecimal/commit/4d5b97125b commit b4eba8dfee50a8b9085b32a1750be5313b9cf96b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-03 17:34:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-03 17:34:41 +0900 Prefer block forms to close opened files commit d05a268adc402e0a9a5eac0ce291cfd34e68f29a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-03 17:32:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-03 17:32:41 +0900 Open gzip file in binary mode commit 583f364f7187337b284061b78a47b29875398e33 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-02-03 15:29:26 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-03 17:28:12 +0900 use goto intead of recursion on vm_call0_body() "alias" type method entries can chain another aliased method so that machine stack can be overflow on nested alias chain. http://ci.rvm.jp/results/trunk-repeat20@phosphorus-docker/3344209 This patch fix this issue by use goto instead of recursion if possible. TODO: Essentially, the alias method should not points another aliased method entry. Try to fix it later. Notes: Merged: https://github.com/ruby/ruby/pull/4148 commit f600226fb4ad7e3faa9a184bfe9b2de6404551f3 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-02-03 14:38:31 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-02-03 14:38:31 +0900 Fix failures with EditLine On macOS with EditLine: ``` $ ruby -r readline -e 'Readline.readline("> "); p Readline::VERSION' < /dev/null "EditLine wrapper" ``` On Linux with GNU readline: ``` $ ruby -r readline -e 'Readline.readline("> "); p Readline::VERSION' < /dev/null > "8.0" ``` commit ea47a9506a06e8bdcf64b7356f9ccd265bae7ce4 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-03 13:39:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-03 13:42:03 +0900 Adjusted indent [ci skip] commit 6f727853cee41195b67ee5d793c1ac23fe1a6ae0 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-02-03 03:19:51 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-03 08:53:02 +0900 only main thread can modify vm->ubf_async_safe vm->ubf_async_safe is VM global resource and only main thread can manipulate it. [Bug #17482] Notes: Merged: https://github.com/ruby/ruby/pull/4147 commit c0fa4c7bbe461b91974a34698ddbb116f737da21 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-03 00:09:49 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-03 00:09:49 +0900 * 2021-02-03 [ci skip] commit b0fb2082187fe3cd247a92471aa42d3e6f779e51 Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2020-03-24 15:24:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-03 00:09:32 +0900 [ruby/irb] follow up the actual line number https://github.com/ruby/irb/commit/7aed8fe3b1 commit 739f9297c562a387aa012bad781ac2f07f434c1e Author: David CARLIER <devnexen@gmail.com> AuthorDate: 2021-02-02 22:05:19 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-02 22:05:19 +0900 NetBSD build update. (#4079) Notes: Merged-By: nurse <naruse@airemix.jp> commit be1486568abac364c12e36d8dc49018ba8918c73 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-02-02 18:23:07 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-02-02 20:20:39 +0900 add debug code for timer_posix timer_posix mode is managed by timer_posix.state. This patch adds some debug code for the transition of the state. Notes: Merged: https://github.com/ruby/ruby/pull/4145 commit f92b7b7b97d57ad3f58034556224141d2f0e65c7 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-02-02 19:15:45 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-02-02 19:15:45 +0900 Pass revision by hand if the commit message lacks the ticket number commit d29cb56bfa40f8c077518623b63bb26988fbe60e Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-02-02 19:14:37 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-02-02 19:14:37 +0900 Use local repository instead of remote to improve performance commit ce2062dee6405030091966c47b1124ec9a4c62d4 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-02-02 19:12:49 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-02-02 19:12:49 +0900 Drop pushing local repo I want to push another repo/branch to run CI before pushing it to official branch. commit b03aa7dcd73a55c4b76600830a90bd0bc725d5a3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-02 15:54:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-02 16:12:16 +0900 Use the lateset winflexbison3 The installation script fault seems fixed at 2.5.23.20200904. commit e350b32837a824279e9dbba09139f6d0e4a4be0f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-02 09:55:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-02 14:54:53 +0900 Add some git configurations in CIs commit 5a33ef0586efbe1d7489f4696bd22499b0f2632a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-02 14:37:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-02 14:37:15 +0900 Set git config in global instead of system commit 8ef30bcc047341b2b7e6ec9b545dda975cdd4ab2 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-02-02 04:10:22 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-02-02 05:20:34 +0900 Fix GC compatibility: Don't stash encodings in global constants This value should either be pinned, or looked up when needed at runtime. Without pinning, the GC may move the encoding object, and that could cause a crash. In this case it is easier to find the value at runtime, and there is no performance penalty (as Ruby caches encoding indexes). We can shorten the code, be compaction friendly, and incur no performance penalty. commit 5803ac1c734568837d2010bd38f122ba24cbae2b Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-02 01:43:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-02 01:43:16 +0900 * 2021-02-02 [ci skip] commit e3ef21c3077c4b45edb44c06b0d580a4c913c557 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-01-27 01:56:16 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-02 01:42:54 +0900 Use RCLASS_EXT macro instead of directly accessing ptr Notes: Merged: https://github.com/ruby/ruby/pull/4124 commit e0f999a2ed8b1b9298e51d5dfa902044709ce00a Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-01-27 01:49:57 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-02 01:42:54 +0900 Add RCLASS_SUBCLASSES Macro Notes: Merged: https://github.com/ruby/ruby/pull/4124 commit 7341b0146557bccd783484b279569b530c888a14 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-01-27 01:29:09 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-02 01:42:54 +0900 Add RCLASS_ALLOCATOR Macro Notes: Merged: https://github.com/ruby/ruby/pull/4124 commit 6edd4256744c5ee6a73af660cb2bcb63ca94b254 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-01-27 01:12:29 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-02 01:42:54 +0900 Add PARENT_MODULE_SUBCLASSES Macro Notes: Merged: https://github.com/ruby/ruby/pull/4124 commit 49950266be32ae09ee6a17539c4412f032995fc6 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-01-27 01:06:31 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-02-02 01:42:54 +0900 Add RCLASS_PARENT_SUBMODULES Macro Notes: Merged: https://github.com/ruby/ruby/pull/4124 commit 1cdae49d39fbaef654df487f168d1fb14a146d59 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-01 18:01:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-01 19:54:21 +0900 Implement NameError::message#clone for Ractor Notes: Merged: https://github.com/ruby/ruby/pull/4142 commit 0dd38902b96e6062130080ab5b96098dedf71139 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-01 18:16:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-01 18:16:39 +0900 Ignore warnings when transforming preprocessed header For already preprocessed header, -Werror=misleading-indentation doesn't make sense. commit 952b2dcc8804cbf094f8f626e04bcb3f8e151005 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-02-01 14:59:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-01 14:59:47 +0900 Fix for windres 2.36 [Bug #17602] Add --preprocessor and --preprocessor-arg for each preprocessor command arguments, as windres 2.36 requires preprocessor name and arguments to be separated to respect spaces in these paths. commit 23a833ee67dcc2d285082103deb79741ed147961 Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-02-01 14:01:47 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-02-01 14:01:47 +0900 Add File.absolute_path? to NEWS-2.7.0 [ci skip] `File.absolute_path?` has been added since Ruby 2.7.0, but it isn't mentioned in the NEWS. So this patch adds a NEWS entry. ref: https://bugs.ruby-lang.org/issues/15868 Co-authored-by: nagachika <nagachika@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4139 Merged-By: nobu <nobu@ruby-lang.org> commit e4ef5791262c482f77fc9f7786ea70e49de1bb68 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-02-01 13:57:36 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-02-01 13:57:36 +0900 * 2021-02-01 [ci skip] commit 0e5fbec81632968836da06dc50fca4948cae6d30 Author: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> AuthorDate: 2021-02-01 10:16:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-02-01 13:47:35 +0900 Fixed varargs in `rb_bug_without_die` [Bug #17603] commit 22b8ddfd1049c3fd1e368684c4fd03bceb041b3a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-31 18:11:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-31 18:48:28 +0900 Split `mnew` into unbound and callable It always branches by `obj` is `Qundef` or not, which is invariant for each functions; `obj_method` is the latter, and the other two are the former. commit e44870c2253a47c0fa989a4a188a7164735fec03 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-31 17:45:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-31 17:45:35 +0900 Removed static assertion about size of `RVALUE` It is unable where unaligned word access is disallowed and `double` is wider than pointers. commit 49918b398463121a7df9e1b4de2c3d061125b8db Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-31 14:27:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-31 14:27:15 +0900 MSys is a variant of Cygwin commit ae0a179c4bb13c64584bc07b29372723d1d6c4fa Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-31 12:50:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-31 13:20:15 +0900 Narrowed down the condition to pack RValue Because of `double` in `RFloat`, `RValue` would be packed by `sizeof(double)` by default, on platforms where `double` is wider than `VALUE`. Size of `RValue` is multiple of 5 now. commit e1f475e13f728a793131c38d2177691e87f45d17 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-31 09:48:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-31 11:27:51 +0900 Update bundled_gems Notes: Merged: https://github.com/ruby/ruby/pull/4137 commit 3813bb41524a1e2f0b08b6e2f1213ba46477a5f7 Author: David CARLIER <devnexen@gmail.com> AuthorDate: 2021-01-30 08:43:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-31 09:53:03 +0900 vm_dump: dump registers for Mac M1 Notes: Merged: https://github.com/ruby/ruby/pull/4134 commit 4a06cb31170789f6fc0b1ce069bccab9d731c8bf Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-31 09:44:41 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-31 09:44:41 +0900 Update TypeProf to 0.12.0 (#4132) Notes: Merged-By: mame <mame@ruby-lang.org> commit 25d506a31882a21f8c95e136a1b80ae8d5ac46fd Author: S-H-GAMELINKS <gamelinks007@gmail.com> AuthorDate: 2021-01-30 15:36:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-31 09:23:51 +0900 Move rb_big_isqrt declaration Notes: Merged: https://github.com/ruby/ruby/pull/4135 commit 367b5100d41ba1f08501319f1fecdd5ccb25d3db Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-31 02:11:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-31 02:11:20 +0900 * 2021-01-31 [ci skip] commit 598b7988f4f332c2d974bde6bc8be299150e2dce Author: Soutaro Matsumoto <matsumoto@soutaro.com> AuthorDate: 2021-01-31 02:10:55 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-31 02:10:55 +0900 Bundle RBS 1.0.4 (#4136) Notes: Merged-By: soutaro <matsumoto@soutaro.com> commit c4ab9017926c1d8c0211e275c66474e9c68dc383 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-30 20:09:20 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-30 20:09:20 +0900 * 2021-01-30 [ci skip] commit 1f5b8f7084ac8c6a13612a6ced47e4678ff063c2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-30 20:08:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-30 20:08:18 +0900 Constified pointers in str_casecmp commit 98e27016c93455d4e9e208d0666d85929cb62857 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-29 12:54:43 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-29 16:22:12 +0900 refactoring rb_method_call_status() Notes: Merged: https://github.com/ruby/ruby/pull/4129 commit 1ecda213668644d656eb0d60654737482447dd92 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-21 03:33:59 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-29 16:22:12 +0900 global call-cache cache table for rb_funcall* rb_funcall* (rb_funcall(), rb_funcallv(), ...) functions invokes Ruby's method with given receiver. Ruby 2.7 introduced inline method cache with static memory area. However, Ruby 3.0 reimplemented the method cache data structures and the inline cache was removed. Without inline cache, rb_funcall* searched methods everytime. Most of cases per-Class Method Cache (pCMC) will be helped but pCMC requires VM-wide locking and it hurts performance on multi-Ractor execution, especially all Ractors calls methods with rb_funcall*. This patch introduced Global Call-Cache Cache Table (gccct) for rb_funcall*. Call-Cache was introduced from Ruby 3.0 to manage method cache entry atomically and gccct enables method-caching without VM-wide locking. This table solves the performance issue on multi-ractor execution. [Bug #17497] Ruby-level method invocation does not use gccct because it has inline-method-cache and the table size is limited. Basically rb_funcall* is not used frequently, so 1023 entries can be enough. We will revisit the table size if it is not enough. Notes: Merged: https://github.com/ruby/ruby/pull/4129 commit 9241211538189a58b477bd55b539357617fd42ed Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-29 13:09:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-29 14:27:53 +0900 Forward keyword arguments for Pathname#each_line [Bug #17589] Notes: Merged: https://github.com/ruby/ruby/pull/4128 commit acb6b395b63ff992ea89ef4dbdff32e5b54e0b20 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-29 11:59:42 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-29 11:59:42 +0900 Fix failure when build in srcdir/build If `build` directory exists, `rake build` is `Rake::FileTask`. So skip if exists. commit 522adbc945c209f4993b0d0ee84a44c333de350f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-29 08:37:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-29 11:36:13 +0900 Fixed Kernel#rand spec Float should not be compared by identity. Notes: Merged: https://github.com/ruby/ruby/pull/4126 commit f6387ae0737ea19a00caa3af14c489b404c1c0e1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-29 08:53:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-29 10:26:18 +0900 Fix absolute path predicate on Windows A path starts with '/' is not an absolute path on Windows, because of drive letter or UNC. Notes: Merged: https://github.com/ruby/ruby/pull/4127 commit c10be4e9db7bec6e9221877c206de6f1589caba4 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-29 01:09:44 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-29 01:09:44 +0900 * 2021-01-29 [ci skip] commit 2e32b919b4f2f5b7f2e1509d6fa985526ef1f61c Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2021-01-29 01:08:57 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2021-01-29 01:08:57 +0900 Update to ruby/spec@8cafaa5 commit 1b377b32c8616f85c0a97e68758c5c2db83f2169 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-28 18:23:13 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-28 18:23:13 +0900 Add fallback when PWD is not set commit 763d242fcdb2cd400a8973d7d0da3e162fee90d6 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-28 17:57:02 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-28 18:01:06 +0900 Use PWD instead of source_root Because `.ext/common` is not relative from top source directory. Fix failures with out-of-place build directory. commit 7cd97a81d1010ec8f10585d86e7271a4a40e3990 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-28 17:55:26 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-28 18:00:10 +0900 Remove require_path from $LOADED_FEATURES because some features are already loaded. commit 00bd645f09ef96af55e4060deee7882a46d33206 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-28 17:54:29 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-28 18:00:10 +0900 Delete path including `/../` too commit edaf0c250c7589101c7a512b62acf51b7595ed1a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-28 09:18:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-28 09:18:12 +0900 * 2021-01-28 [ci skip] commit d2ffd269a77021e6507a50995cd4af6eb5e33ea3 Author: Peter Zhu <peter@peterzhu.ca> AuthorDate: 2021-01-14 03:45:03 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-01-28 09:17:46 +0900 [Fixes #17538] Fix assertion failure when rincgc is turned off Co-Authored-By: Matt Valentine-House <31869+eightbitraptor@users.noreply.github.com> Notes: Merged: https://github.com/ruby/ruby/pull/4064 commit 80fb4758a9101197f1dd4e3f84a437569ea692ab Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-27 18:33:36 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-27 18:33:36 +0900 In test, need to pass a context to IRB::WorkSpace.new explicitly commit 69b42ae02db7385c18bafae893bb9368c9b79152 Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2021-01-23 04:45:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-27 15:02:13 +0900 [ruby/irb] specify the `VERBOSE` to `false` and fix tests to fit https://github.com/ruby/irb/commit/502c590925 commit e80e5a2f897088bc5284ea61817a910d1d334652 Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2021-01-23 02:45:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-27 15:02:05 +0900 [ruby/irb] use `RubyLex::TerminateLineInput` appropriately [Bug #17564] * using the appropriciate exception instead of `break` so that the session can be continue after the `irb_source` and `irb_load` commands * suppress extra new line due to one more `#prompt` call https://github.com/ruby/irb/commit/bdefaa7cfd commit 5b05b85d85002fd47eeb5e28f9f2898e99507b75 Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2021-01-23 02:12:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-27 15:01:57 +0900 [ruby/irb] add `IRB::FileInputMethod.open` to ensure closing associated File * tweak some methods not to raise exception after `#close` * use it in `IRB::IrbLoader#{source_file,load_file} https://github.com/ruby/irb/commit/ec2947acbd commit c736714de11f9d8dd90cb5f4d6b39fd73054aabc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-27 14:58:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-27 15:00:19 +0900 Clear unexpanded `mjit_std_cflag` commit 0d5a4d6d4973af3dfbdb19c965efe6c86dbdd8ad Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-27 14:50:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-27 14:50:27 +0900 Disable fast-math As `RUBY_TRY_CFLAGS` restores `CFLAGS`, appending to the variable in its block has no effect. commit b409a34b410e748553262cb4d0c9cc374746dfd8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-27 14:45:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-27 14:45:31 +0900 Taint flag has been deprecated in 3.1 commit a67afaaa05d8d81297f42033e4c235642e312a81 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-26 15:43:45 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-01-27 09:30:15 +0900 Update include/ruby/internal/fl_type.h https://github.com/ruby/ruby/pull/4100#pullrequestreview-576059827 Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> commit d205370b965a374a6c7ec3987e2b97f4b48621da Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-26 15:38:15 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-01-27 09:30:15 +0900 include/ruby/internal/fl_type.h: refactor hoist out #if conditions cf: https://github.com/ruby/ruby/pull/4100#pullrequestreview-575952836 commit f8a117f858cdb748c400396aa5a4d46e4832f4e2 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-26 09:48:49 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-01-27 09:30:15 +0900 kill CLONESETUP and DUPSETUP They are no longer how Object#clone/Object#dup are defined. In fact DUPSETUP is not used from anywhere. CLONESETUP has only one usage. Let's not expose them to extension libraries. cf https://github.com/ruby/ruby/pull/4100#discussion_r563481718 commit 73e948afd5d465548868189d1bd0a8d35e238fb2 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-20 12:00:46 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-01-27 09:30:15 +0900 win32/win32.c:getcwd_value: delete OBJ_TAINT Makes no sense any longer. Notes: Merged: https://github.com/ruby/ruby/pull/4100 commit a2c069fca9ea80edef8f6441aeaecdfe4d1645a0 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-20 11:59:05 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-01-27 09:30:15 +0900 win32/file.c:rb_file_expand_path_internal: delete OBJ_TAINT Makes no sense any longer. Notes: Merged: https://github.com/ruby/ruby/pull/4100 commit 3f4f10bb603a1c8979919c6b0ca1d8b2e7adba67 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-20 11:33:32 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-01-27 09:30:15 +0900 attributes on enumerators are GCC6-ism See also https://gcc.gnu.org/gcc-6/changes.html Clang has this feature when __has_extension(enumerator_attributes) is set. MSVC has #pragma deprecated instead. Notes: Merged: https://github.com/ruby/ruby/pull/4100 commit c7d138772167a9a489ebe062ee3027e838489e8d Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-20 11:13:06 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-01-27 09:30:15 +0900 warnings on use of RUBY_FL_TAINT matz said in [ruby-core:94979]: > 3.0: > * taint/trust/untaint/untrust non-verbose warning when called This is it, for C extensions. Notes: Merged: https://github.com/ruby/ruby/pull/4100 commit 0300dec32b5a25b409dc5dfa59b81f4e39fab501 Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-20 10:26:49 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-01-27 09:30:15 +0900 kill OBJ_TAINT etc. Now that RUBY_FL_TAINT is recycled to become new RUBY_FL_SHAREABLE. Setting/clearing this flag from extension libraries break Ractor. Especially problematic one is OBJ_INFECT, which would make non-shareable objects travel across Ractor boundaries. Such operations should just be prohibited. Notes: Merged: https://github.com/ruby/ruby/pull/4100 commit 7ccdad7be83b8bd4fcd09a5bf224d33a64fa1d6f Author: 卜部昌平 <shyouhei@ruby-lang.org> AuthorDate: 2021-01-20 11:01:35 +0900 Commit: 卜部昌平 <shyouhei@ruby-lang.org> CommitDate: 2021-01-27 09:30:15 +0900 fix OBJ_UNTRUST etc. It seems I broke them in commit 9e6e39c3512f7a962c44dc3729c98a0f8be90341 Sorry! Notes: Merged: https://github.com/ruby/ruby/pull/4100 commit 216e6605a47fccbbadcb6b0b7e81dcf21547e14c Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-11-26 06:35:40 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-01-27 09:24:01 +0900 Add compaction notes for class/module creation C APIs Notes: Merged: https://github.com/ruby/ruby/pull/3885 commit 646131448eea616dfb388cfea84e34358caa7b47 Author: Alan Wu <XrXr@users.noreply.github.com> AuthorDate: 2020-12-11 11:24:19 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-01-27 09:24:01 +0900 Make rb_define_module_id_under() pin existing modules Just like rb_define_class_id_under(). Also makes rb_define_module_under() consistent with rb_define_class_under() in the same regard. Notes: Merged: https://github.com/ruby/ruby/pull/3885 commit d7a844cb08aaf0d073bfa2ade88e83b3df2d9676 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-01-27 02:22:13 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-27 02:22:13 +0900 Fix broken link in RDoc for String (#4123) Link was correct; its target was incorrect; now fixed. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 8a3f816675bfeb0ffd19471a8520200b3212d424 Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-01-15 06:56:44 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-01-27 01:18:44 +0900 Re-enable RGENGC_DEBUG for platforms with HAVE_VA_ARGS_MACRO after this commit turned it off globally. 888cf28a7e3a07fc0a41688777a40910654005ad Co-authored-by: peterzhu2118 <peter@peterzhu.ca> Notes: Merged: https://github.com/ruby/ruby/pull/4073 commit a554e96a15ab1dfd86c6f125afc6356b8cc84a49 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-27 01:18:18 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-27 01:18:18 +0900 * 2021-01-27 [ci skip] commit 479e4d13cbf0bf2c7d3789787a8c055468141e4f Author: Matt Valentine-House <matt@eightbitraptor.com> AuthorDate: 2021-01-15 06:33:02 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-01-27 01:17:58 +0900 Fix RGENGC CHECK MODE >= 4 [A previous commit](b59077eecf912a16efefc0256f6e94a000ce3888) removes some macro definitions that are used when RGENGC_CHECK_MODE >=4 because they were using data stored against objspace, which is not ractor safe This commit reinstates those macro definitions, using the current ractor Co-authored-by: peterzhu2118 <peter@peterzhu.ca> Notes: Merged: https://github.com/ruby/ruby/pull/4074 commit ed6dc066b6247465c2bc55a39c2a837e53d2d4d0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-26 22:01:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-26 22:19:00 +0900 CFLAGS includes ARCH_FLAG commit b091889ed67f278b1652ddde88596e2160d5aef0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-26 10:31:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-26 21:57:09 +0900 Removed YYUSE [Bug #17582] Although it was used just to suppress an "unused argument" warning in the same manner as other bison-provided functions, it has been dropped since Bison 3.7.5. And we always suppress that warning. Notes: Merged: https://github.com/ruby/ruby/pull/4121 commit 1e2a8f7c945ddb93f083a320f6ad6536596a81ce Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-26 10:30:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-26 10:30:29 +0900 vcs.rb: fix for baseruby 2.2 commit 33c5e9d1c873f7a1a9dd88ee04e82d60fbc9c641 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-26 10:07:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-26 10:07:48 +0900 * 2021-01-26 [ci skip] commit 6963e682f884d0c4f2972bcc89f69d9b6f756108 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-26 10:04:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-26 10:04:12 +0900 vcs.rb: support `d` command in log-fix commit a56760b908fb89dbcf4bea5f6d8f6576bc88e1d2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-26 09:58:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-26 09:58:11 +0900 vcs.rb: allow log-fix to insert an empty line commit 19e6d271266eca5925e66fc8ec39b251a2fa6bcd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-24 16:20:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-25 18:33:33 +0900 [ruby/rdoc] Support iso-strict format in git-log https://github.com/ruby/rdoc/commit/2a6c22da63 commit 7fe22152fc28084f4395fece84ff6e5eb2d6b288 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-24 16:16:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-25 18:33:31 +0900 [ruby/rdoc] Support other date formats in git-log https://github.com/ruby/rdoc/commit/ad8cf37d72 commit 5411fb8cffc6a2112b07243c7f4a4a87702f2af0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-25 12:51:45 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-25 12:51:45 +0900 * 2021-01-25 [ci skip] commit fd6d5c803a78e389a643c65ae8ac3761817c4341 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-24 23:33:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-25 12:51:18 +0900 Clear each test own temporary directories Notes: Merged: https://github.com/ruby/ruby/pull/4117 commit 30f11e73c43672833b301ef89eca25d430e2480f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-24 23:26:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-24 23:26:11 +0900 Revert "Remove temporary directory properly" This reverts commit 80bad36989bbc4ad6167fe9670327f95b78089ce, because a few CI machines fail continuously. commit 80bad36989bbc4ad6167fe9670327f95b78089ce Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-24 18:26:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-24 19:30:02 +0900 Remove temporary directory properly For each `make check`, rubygems test makes "tmp" directory and some "gem_generate_index..." directories remain there. * Do not create a (fixed name) directory in the current working directory * Should remove its own temporary directory Notes: Merged: https://github.com/ruby/ruby/pull/4115 commit 52ebaf718e6a78297ceb0dff49815eeed28eae45 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-23 17:28:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-24 16:46:27 +0900 [ruby/rdoc] Skip non-date logs by git-log `RDoc::Parser::ChangeLog` mis-parses ChangeLog generated by git-log, because of too heuristic `Time.parse`. For instance, "commit 8187228de0142d3ac7950b7d977c2849e934c637" results in "8187-08-16", that is, day 228 in the year 8187. https://github.com/ruby/rdoc/commit/9711e6f6d9 commit d5d1c41728d65acfb8aa2cf95f2d8ac88f271cd1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-23 00:20:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-24 16:46:25 +0900 [ruby/rdoc] Sort by CommitDate if available https://github.com/ruby/rdoc/commit/455715e930 commit fa048a0f8523cefde5428805dd334691486319e6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-22 10:13:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-24 16:46:23 +0900 [ruby/rdoc] Add links to the commits https://github.com/ruby/rdoc/commit/1821628076 commit f3f1a666c77f8c528b0adc9ccf78e4b9910bd6e0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-21 21:49:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-24 16:46:21 +0900 [ruby/rdoc] Shorten commit hashes https://github.com/ruby/rdoc/commit/5d3e153963 commit 127f735c1e5e0771076caf2a74390757a42fb177 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-21 21:03:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-24 16:46:19 +0900 [ruby/rdoc] Tweak log entry markdown * add 3 levels to headings * prefix commit log to labels to make unique IDs https://github.com/ruby/rdoc/commit/5074c13209 commit b88d1e6b44164bca0c2b85ea6639469813e1e1d8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-21 19:43:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-24 16:46:17 +0900 [ruby/rdoc] Make each commit entries h3 https://github.com/ruby/rdoc/commit/11eefb2ae9 commit bb570ce6d80d28cfc7131dcb72885eed2f989b30 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-21 01:25:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-24 16:46:15 +0900 [ruby/rdoc] Support ChangeLog generated by `git log` https://github.com/ruby/rdoc/commit/5e0a123ca1 commit 68e7dc532d8c658050fa513bbf6c80126832b070 Author: Dorian Marié <dorian.marie.france@gmail.com> AuthorDate: 2020-07-08 06:50:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-24 16:46:11 +0900 [ruby/rdoc] Fix failing test by adding gettext as a development dependency The failing test was: ``` ======================================================================================== rdoc/test/rdoc/test_rdoc_i18n_locale.rb:35:in `rescue in test_load_existent_po' Omission: gettext gem is not found [test_load_existent_po(TestRDocI18nLocale)] ======================================================================================== ``` https://github.com/ruby/rdoc/commit/e5f85839e1 commit 1bd27a78827109f85357f80827a9975fae9bb2a5 Author: NARUSE, Yui <naruse@airemix.jp> AuthorDate: 2021-01-24 15:55:22 +0900 Commit: NARUSE, Yui <naruse@airemix.jp> CommitDate: 2021-01-24 15:57:13 +0900 Add test for String#casecmp? String#casecmp? also normalize upper case characters in legacy encodings. commit d6e43e472356d8e0753f054278e71f1b299fdb4b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-24 14:57:31 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-24 14:59:41 +0900 Moved --verbose, --verbose and --help options to last [ci skip] commit 38816887962ec167ee46acf500f68df5c3013163 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-24 14:35:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-24 14:35:51 +0900 * 2021-01-24 [ci skip] commit 743c44ee2167e41c828c631ee764e96640f99736 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-23 11:39:51 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-24 14:35:34 +0900 [ruby/irb] Indent correctly with method calling with receiver https://github.com/ruby/irb/commit/e7c68e74a0 commit fc54af8aa136888d8c5a8bf7d68594f979a43946 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-22 11:51:54 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-24 14:35:26 +0900 [ruby/irb] Indent correctly with keyword "for" and "in" https://github.com/ruby/irb/commit/47c83ea724 commit 8cb999dd840de61ea64c87e8dc54b4320ed0fd5a Author: Kazuki Tsujimoto <kazuki@callcc.net> AuthorDate: 2021-01-23 21:06:56 +0900 Commit: Kazuki Tsujimoto <kazuki@callcc.net> CommitDate: 2021-01-23 21:06:56 +0900 Update power_assert to 2.0.0 commit 4de228b6bcd55957f2bdc549ffa531dd164be01b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-23 20:56:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-23 20:56:15 +0900 Sort autogenerated dependencies [ci skip] commit 8dfae85adb96cf3da84bf38f2103969d4a7aed3f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-23 19:57:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-23 19:58:39 +0900 Warn the defined location as deprecation as well as the main message [Bug #17575] commit 62283f7a7a87fa2f353814a3ef6a3b1cab2a32b8 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-23 18:54:50 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-01-23 18:56:06 +0900 coroutine/emscripten/: Experimentally support emscripten fiber API commit f12c33b6112b38f51ae1813b19f4c331ede2af2e Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-23 16:07:41 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-01-23 16:07:41 +0900 configure.ac: Add some compiler options for emscripten "-lc" and "-s ALLOW_MEMORY_GROWTH=1" are needed commit dd65aa95f9bf017674b9f11c9e5824cd0fa22735 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-23 16:05:33 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-01-23 16:05:33 +0900 bignum.c: Make sure the argument of LONG2FIX is long ... because BDIGIT_DBL may be long long. POSFIXABLE and NEGFIXABLE ensures that the value is representable as long, but it failed to build on emscripten with -Werror -Wshorten-64-to-32. commit 05f89dd13bee427ffa43568ab95668da55b127cf Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-23 13:23:26 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-01-23 13:24:06 +0900 thread_pthread.c: pthread_kill is not available on emscripten commit 33fb87cc9c1218463c54b0277f635318c1509629 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-23 13:22:56 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-01-23 13:24:06 +0900 io.c: popen is not available on emscripten commit 9efd590a13d1e8b8a141c46eabb48c2a1c286d2b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-23 11:04:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-23 11:13:21 +0900 Rationalize floats in coerce [Bug #17572] commit 9de68a52213873da84a5341fd3db15e5c8b6cb9a Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-23 10:52:17 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-23 10:52:17 +0900 Fix a warning ``` .../ruby/test/net/http/test_httpresponse.rb:81: warning: constant RubyVM::MJIT is deprecated ``` commit a55eb9a2af7950d180d9d31ffde2bce66710f44f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-23 10:28:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-23 10:30:59 +0900 Make reciprocal properly of non-integral rational [Bug #17572] commit 37258b64c759c0add4d97f79aeeda8ae4ffc3677 Author: Gannon McGibbon <gannon.mcgibbon@gmail.com> AuthorDate: 2021-01-21 10:16:22 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-01-23 10:20:28 +0900 [ruby/net-http] Replace "iff" with "if and only if" iff means if and only if, but readers without that knowledge might assume this to be a spelling mistake. To me, this seems like exclusionary language that is unnecessary. Simply using "if and only if" instead should suffice. https://github.com/ruby/net-http/commit/ffb87cad32 commit 47d6c55755f28fa83872fd2a3943770e7f788895 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-23 10:11:09 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-01-23 10:11:50 +0900 gc.c: stop overflow check on emscripten build commit 1dfddac39364f9f982e73f6d0d17a0e824e6e6bd Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-23 10:09:06 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-01-23 10:11:50 +0900 configure.ac: Stop -fstack-protector on emscripten build commit 6ef761a5153a03b059fbce6a58bea8d701328b46 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-23 09:24:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-23 10:07:49 +0900 vcs.rb: continue just with warning if failed to fetch notes Notes: Merged: https://github.com/ruby/ruby/pull/4109 commit ccd7b7ab9ac7b2adb427c52f32766d4e0a474de5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-23 09:24:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-23 10:07:49 +0900 vcs.rb: include commit info in ChangeLog Notes: Merged: https://github.com/ruby/ruby/pull/4109 commit 1def8a60045bad5366740f1cb7a10bd1c85460d5 Author: Gannon McGibbon <gannon.mcgibbon@gmail.com> AuthorDate: 2021-01-23 07:15:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-01-23 09:50:47 +0900 [rubygems/rubygems] Replace "iff" with "whether" and "if and only if" iff means if and only if, but readers without that knowledge might assume this to be a spelling mistake. To me, this seems like exclusionary language that is unnecessary. Simply using "if and only if" or "whether" should suffice. https://github.com/rubygems/rubygems/commit/88318ebc6d commit db7d0b89f6eca66cc7eb155c95f9123133da1ffc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-23 06:01:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-23 06:01:39 +0900 * 2021-01-23 [ci skip] commit 6e44de752ea4e82d07feaf4816e838017b9d0788 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-01-23 06:01:09 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-23 06:01:09 +0900 What's Here for String RDoc (#4093) * What's Here for String RDoc Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 07b4b1b1cbafb73c03d04f25c8f3ae6d70975ed5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-22 23:41:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-22 23:41:52 +0900 Support coroutine on universal binary commit e34eb58ac71ddac2d90315b35adfb2c0bf880369 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-22 23:40:32 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-22 23:40:32 +0900 Keep ARCH_OPTION for arm64 commit f1c36f2e6b0cd24dbcc9faf81a2ab88040eded2c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-22 23:21:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-22 23:21:25 +0900 Added include guards to coroutine headers commit c3244a3574da8ddc35523ef1b882dd2aadfc2818 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-22 22:29:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-22 22:29:17 +0900 Do not set target_alias if unset commit c8121b2e3d85c5dc4219918604c4d301204e6455 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-22 18:29:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-22 18:37:31 +0900 Adjust CPU name as arm64-darwin config.sub replaces arm64 with aarch64. commit 899b9506472de7c292c6a04918243e12cae8c69e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-22 18:28:22 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-22 18:37:31 +0900 Remove common output directory commit e586345b7753e942c2946905c5acdc666fb0d47e Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-22 18:14:36 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-22 18:15:57 +0900 check is_incremental_marking() again is_incremental_marking() can be changed after checking the flag without locking, especially on `GC.stress = true`. commit a1bb110b5614e676ba8ac3f24f7bfde9c82ea4f9 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-15 06:57:30 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-22 14:07:32 +0900 [ruby/bigdecimal] [Doc] Fix the comment of BigDecimal_div2 [ci skip] https://github.com/ruby/bigdecimal/commit/a109d0984f commit 887a1bfbbc336cf4292d5489e7a7a234ad93478e Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-09 17:31:23 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-22 13:59:04 +0900 [ruby/bigdecimal] Stop using GetVpValue in rb_big_convert_to_BigDecimal https://github.com/ruby/bigdecimal/commit/034fd2b25e commit fff1edf23ba28267bf57097c269f7fa87530e3fa Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-22 04:38:50 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-22 12:16:37 +0900 fix Ractor.yield(obj, move: true) Ractor.yield(obj, move: true) and Ractor.select(..., yield_value: obj, move: true) tried to yield a value with move semantices, but if the trial is faild, the obj should not become a moved object. To keep this rule, `wait_moving` wait status is introduced. New yield/take process: (1) If a ractor tried to yield (move:true), make taking racotr's wait status `wait_moving` and make a moved object by `ractor_move(obj)` and wakeup taking ractor. (2) If a ractor tried to take a message from a ractor waiting fo yielding (move:true), wakeup the ractor and wait for (1). Notes: Merged: https://github.com/ruby/ruby/pull/4105 commit d0d6227a0da5925acf946a09191f172daf53baf2 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-22 02:51:53 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-22 12:16:37 +0900 alen should be actions number on ractor_select() alen was number of rs, but it should be actions number (taking ractors + receiving + yielding). Notes: Merged: https://github.com/ruby/ruby/pull/4105 commit fb33ec01193dbe9b8dcd86589df3e52396bac129 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-20 16:11:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-22 08:15:31 +0900 [ruby/irb] Delete a doodle-level memo comment... https://github.com/ruby/irb/commit/fc3e1d9e0c commit 32b7dcfb56a417c1d1c354102351fc1825d653bf Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-22 04:19:44 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-01-22 04:19:44 +0900 Fix more assumptions about the read barrier This is a continuation of 0130e17a410d60a10e7041ce98748b8de6946971. We need to always use the read barrier commit 871b4612b07c37a853240228779dc16a64a51227 Author: Gannon McGibbon <gannon.mcgibbon@gmail.com> AuthorDate: 2021-01-21 07:52:38 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-01-22 03:22:25 +0900 [ruby/matrix] Replace "iff" with "whether" [doc] iff means if and only if, but readers without that knowledge might assume this to be a spelling mistake. To me, this seems like exclusionary language that is unnecessary. Simply using "whether" when describing return values should suffice. commit e34f51fe609d6be48b655695dd8c15e17694242e Author: Felix Wolfsteller <felix.wolfsteller@gmail.com> AuthorDate: 2020-12-22 02:28:55 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-01-22 03:22:25 +0900 [ruby/matrix] Add `Matrix#rotate_entries` [#19] Co-authored-by: Marc-André Lafortune <github@marc-andre.ca> commit 0130e17a410d60a10e7041ce98748b8de6946971 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-22 02:52:56 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-01-22 02:55:18 +0900 Always enabled read barrier even on GC.compact Some objects can survive the GC before compaction, but get collected in the second compaction. This means we could have objects reference T_MOVED during "free" in the second, compacting GC. If that is the case, we need to invalidate those "moved" addresses. Invalidation is done via read barrier, so we need to make sure the read barrier is active even during `GC.compact`. This also means we don't actually need to do one GC before compaction, we can just do the compaction and GC in one step. commit a3efbda7128ef20b55505b32d1608ea48f80af4a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-22 02:49:39 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-22 02:49:39 +0900 * 2021-01-22 [ci skip] commit 03d1850bfaa1c279fe5cc79f4bb2128f50c5b9e5 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-22 02:48:31 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-22 02:48:31 +0900 use ractor_wakeup() Use ractor_wakeup() for same code. commit d961f14df3629f933613b062034deea0346de1cd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-15 10:54:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-21 20:50:23 +0900 [ruby/net-http] RubyVM::MJIT is deprecated, prefer RubyVM::JIT now https://github.com/ruby/net-http/commit/abc6ea1877 commit 724c289b5c68aa9890b381c99bd365986a5bd6bf Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-21 15:29:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-21 15:29:40 +0900 [ruby/erb] Version 2.2.2 https://github.com/ruby/erb/commit/3d84ea83bc commit b12bd451af693259fc1f22c398e1065029acb098 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-21 15:24:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-21 15:26:55 +0900 [ruby/erb] Let ERB.version just return a version and deprecate ERB::Revision. `'$Date:: $'` has not been working since Git migration from SVN. I'm sorry. Because it has been already broken, I'd like to take this opportunity to make `ERB.version` compatible with `Gem::Version.new`. https://github.com/ruby/erb/commit/2b4182eb10 commit f766ba54a9e25239ecc28a623c95e85bb6ac45ea Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-21 15:02:24 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-21 15:02:52 +0900 Update NEWS.md about deprecation commit e0d92d5e5d665132b77b450a1432e682a6c45a5c Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-21 14:49:50 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-21 14:52:20 +0900 [ruby/erb] Version 2.2.1 https://github.com/ruby/erb/commit/c8aa019c26 commit 3e8ca51b3b4aa8c185771f44f5589423a9d96f97 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-21 14:45:34 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-21 14:45:34 +0900 Fix the relative path for Ruby core commit 5f7df72b56ebb741dcc1935897a79f42bc077bcf Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-21 14:43:04 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-21 14:43:05 +0900 [ruby/erb] Unify ERB version definitions https://github.com/ruby/erb/commit/5df06b8473 commit 084662dc9f1629995777a11cde72faa98ccb0efc Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-21 14:36:22 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-21 14:36:23 +0900 [ruby/erb] Make styles consistent through the project https://github.com/ruby/erb/commit/c68c9470b0 commit 922989fa0f1bf1e13b2c9bf1c8d6ad9459c798f6 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-21 13:45:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-21 13:52:02 +0900 [ruby/erb] Warn safe_level and later args even without -w because, when Ruby 3.1 is released, Ruby 2.5, the last version with the old method signature, will have been EOL. Therefore we can safely warn the old interface from Ruby 3.1. https://github.com/ruby/erb/commit/c3a753f49f commit 47b43807a86bd29e4e275aaf23228cd78adf696e Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-21 13:11:04 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-21 13:12:03 +0900 [ruby/erb] Make sure erb.rb in this repository is tested https://github.com/ruby/erb/commit/012faba2e5 commit 6ca3d1af3302f722aed530764d07c1cc83e95ecf Author: Jean Boussier <jean.boussier@gmail.com> AuthorDate: 2021-01-16 02:18:58 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-01-21 03:48:13 +0900 objspace_dump.c: Handle allocation path and line missing Notes: Merged: https://github.com/ruby/ruby/pull/4078 commit 383685b52b086643f7d6e65a4d74fda90d3a64af Author: BurdetteLamar <burdettelamar@yahoo.com> AuthorDate: 2021-01-19 21:52:09 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-01-21 02:33:41 +0900 Explicit references to Enumerable commit 709bed2afaee50e2ce803f87bf1ee8291bea41e3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-21 01:03:52 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-21 01:03:52 +0900 * 2021-01-21 [ci skip] commit 3b631d0f73117af8b69b91b2ded557d07872c464 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-21 00:55:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-21 01:03:01 +0900 Support `i` command in log-fix commit 565aeb81e0886c835888a425e5d05ed99fb03238 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-20 15:05:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-20 19:24:16 +0900 Skip freezing check on setting temporary class path [Bug #17563] Co-authored-by: ryannevell (Ryan Nevell) <ryan.nevell@gmail.com> Notes: Merged: https://github.com/ruby/ruby/pull/4101 commit f4a556f4f1bf82f944ef576fdb3acd755e567368 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-20 18:10:00 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-20 18:10:20 +0900 [ruby/irb] Remove pp-specific stub from TestColor because it was for TestColorPrinter https://github.com/ruby/irb/commit/7569206fd4 commit cea6814c2cfae8ab8097ee90170baadc95dafcae Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-20 18:07:29 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-20 18:07:40 +0900 [ruby/irb] Undefine unused constants https://github.com/ruby/irb/commit/eea9c16804 commit 328df00712650720e9e31a52c76b1f7fa2f8be7f Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-20 18:00:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-20 18:03:37 +0900 [ruby/irb] Split test files for IRB::Color and IRB::ColorPrinter https://github.com/ruby/irb/commit/d95e8daab3 commit 10d12afa4181e4c9052b6df29926c99de6dd2409 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-20 17:46:32 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-20 17:46:50 +0900 [ruby/erb] Prefer __dir__ to reduce ../ https://github.com/ruby/erb/commit/cb59f11ec8 commit 718890aa04579e7b4a96517e7d44b99ee31edfb4 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-20 15:29:08 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-20 17:21:09 +0900 Pend erb command tests for Ruby 2.5 for now commit 9e0075a3d902aa5236bbfdc0ad0d3028a55dc17e Author: Gannon McGibbon <gannon.mcgibbon@gmail.com> AuthorDate: 2021-01-07 02:20:03 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-01-20 05:06:45 +0900 Replace "iff" with "if and only if" iff means if and only if, but readers without that knowledge might assume this to be a spelling mistake. To me, this seems like exclusionary language that is unnecessary. Simply using "if and only if" instead should suffice. Notes: Merged: https://github.com/ruby/ruby/pull/4035 commit a8dc5156e183489c5121fb1759bda5d9406d9175 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-20 01:58:26 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-20 01:58:26 +0900 * 2021-01-20 [ci skip] commit 1f87725cae8794e02dde0a662e591ea337f427fa Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-20 01:56:51 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-20 01:57:50 +0900 [ruby/irb] Rescue Errno::EINVAL on IRB pp http://rubyci.s3.amazonaws.com/solaris11-gcc/ruby-master/log/20210119T070008Z.log.html.gz is caused by: ``` /export/home/chkbuild/chkbuild-gcc/tmp/build/20210119T150010Z/ruby/lib/reline/ansi.rb:157:in `winsize': Invalid argument - <STDIN> (Errno::EINVAL) from /export/home/chkbuild/chkbuild-gcc/tmp/build/20210119T150010Z/ruby/lib/reline/ansi.rb:157:in `get_screen_size' from /export/home/chkbuild/chkbuild-gcc/tmp/build/20210119T150010Z/ruby/lib/reline.rb:168:in `get_screen_size' from /export/home/chkbuild/chkbuild-gcc/tmp/build/20210119T150010Z/ruby/lib/forwardable.rb:238:in `get_screen_size' from /export/home/chkbuild/chkbuild-gcc/tmp/build/20210119T150010Z/ruby/lib/irb/color_printer.rb:7:in `pp' from -e:1:in `<main>' ``` https://github.com/ruby/irb/commit/1719514598 commit eeacdcb9a073c7d8ad703e0dc9faf229a5ebbe3c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-19 16:40:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-19 17:59:37 +0900 Fixed premature return After setting ruby2_keywords for bmethod, the rest of arguments had been ignored. [Bug #17558] Notes: Merged: https://github.com/ruby/ruby/pull/4096 commit e6af81bde166f8714a835d768363fa8de6426885 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-19 17:14:12 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-19 17:14:48 +0900 [ruby/irb] Stub a screen size for test_context http://ci.rvm.jp/logfiles/brlog.trunk-random1.20210119-074232 https://github.com/ruby/irb/commit/ea87592d4a commit 4da4ad69bb7aa3dd011786834c6584bf88e0282a Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-19 16:48:33 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-19 16:55:51 +0900 [ruby/irb] Support GitHub Actions https://github.com/ruby/irb/commit/8e9e6c4037 commit b2159f7c38262f5d0746a3cfb9b33ea9d62ed813 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-19 16:35:31 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-19 16:35:50 +0900 [ruby/irb] Stub a screen size for tests https://github.com/ruby/irb/commit/6663057083 commit 82386f21b91383ac8074561ee563cb407fee16f9 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-19 15:28:54 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-19 15:52:44 +0900 [ruby/irb] Use a real screen size for pp by default https://github.com/ruby/irb/commit/9b9300dec2 commit a7d933e5021d1028d64a055b6dcf8631ea6a52c3 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-19 02:47:04 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-19 14:16:37 +0900 fix condition of vm_cc_invalidated_p() vm_cc_invalidated_p() returns false when the cme is *NOT* invalidated. Notes: Merged: https://github.com/ruby/ruby/pull/4091 commit 4886535ab2671fb6e7edb438c95c2c9b03ffba29 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-19 13:44:47 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-19 13:44:48 +0900 Avoid suppressing unrelated warnings commit f12320cd57982800d3a10a32bd357c9da239a53b Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-19 13:40:39 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-01-19 13:40:39 +0900 test/ruby/test_jit.rb: Avoid a warning http://rubyci.s3.amazonaws.com/ubuntu2004/ruby-master/log/20210119T033003Z.log.html.gz ``` /home/chkbuild/chkbuild/tmp/build/20210119T033003Z/ruby/test/ruby/test_jit.rb:781: warning: -e:5: warning: possibly useless use of -@ in void context ``` commit ff8c92359a126da43b11792184f2327f6a981efe Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-19 13:34:07 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-01-19 13:34:07 +0900 test/ruby/test_pattern_matching.rb: Avoid a warning http://rubyci.s3.amazonaws.com/ubuntu2004/ruby-master/log/20210119T033003Z.log.html.gz ``` /home/chkbuild/chkbuild/tmp/build/20210119T033003Z/ruby/test/ruby/test_pattern_matching.rb:798: warning: assigned but unused variable - x ``` commit 5741236a0c7900a1fe318dd5eb6094ef6e14fee1 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-01-19 11:51:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-01-19 11:51:39 +0900 Use real-case version number for the result of `gem list` commit 1b89b99941548fdb65305dd9a412082e7fdba45a Author: Vladimir Dementyev <dementiev.vm@gmail.com> AuthorDate: 2021-01-19 06:00:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-19 08:34:01 +0900 Mark pattern labels as unremoveable Peephole optimization doesn't play well with find pattern at least. The only case when a pattern matching could have unreachable patterns is when we have lasgn/dasgn node, which shouldn't happen in real-life. Fixes https://bugs.ruby-lang.org/issues/17534 commit 9d1475c621af671494769dde5a09db4c86071474 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-19 07:52:07 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-19 07:52:33 +0900 Fix JIT link failures forgotten in https://github.com/ruby/ruby/pull/4018 commit e812b362059706d0fb4ce1ec4f8941383dda6166 Author: Alan Wu <alanwu@ruby-lang.org> AuthorDate: 2021-01-19 04:02:19 +0900 Commit: Alan Wu <alanwu@ruby-lang.org> CommitDate: 2021-01-19 04:02:19 +0900 Fix typo: invaldate -> invalidate commit 21d2463fbc5094aa2ad92a21c910dccdc928b920 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-19 00:12:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-19 01:19:57 +0900 Added empty ruby2_keywords gem to suffice dependencies Notes: Merged: https://github.com/ruby/ruby/pull/4090 commit fad9922d846bd4f0ccf2fc8305ad18fcfe5e6853 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-01-19 01:05:05 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-01-19 01:05:05 +0900 Revert "[Document] [Array] Add missing call-seq for Array#append" This reverts commit ac1a4bccbda4358436a7a907a7f09d047f562740. See https://github.com/ruby/ruby/pull/4088 commit 92e288420c71e331f734d3da18f2d6e7de5b0d33 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-19 00:14:22 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-19 00:14:22 +0900 * 2021-01-19 [ci skip] commit 5cf6229ee9826a4c954e994013bc0d47a3ecb529 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-19 00:14:02 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-19 00:14:02 +0900 Skip updating exts in also test-spec to reduce the turnaround time (#4089) Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Partially reversing a4f3e1762aa195969ace000ac0dc8d300dda85cb like 21df4dce5308bb0e04e09dc654cdc92af000caf6. We usually run them through make check which has the dependency, and test-all and test-spec without the dependency are useful for running only individual tests. Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit ac1a4bccbda4358436a7a907a7f09d047f562740 Author: Juanito Fatas <me@juanitofatas.com> AuthorDate: 2021-01-18 21:48:17 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-01-18 23:39:30 +0900 [Document] [Array] Add missing call-seq for Array#append Notes: Merged: https://github.com/ruby/ruby/pull/4088 commit dff74ee6db63f4c91bef1beeba52776afe9d5a48 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-18 21:15:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-18 21:15:47 +0900 Revert "Autoconf 2.70 no longer has -o option" This reverts commit 331f0bc1cb7965bec9aed5d7278360c2e9fc8946. It seems a mistake. commit bb5747e18a0fe47e9dce12445c4cca020f501d2e Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-28 16:29:45 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-01-18 20:41:33 +0900 Added ruby2_keywords for Ruby 2.5 and 2.6 commit 331f0bc1cb7965bec9aed5d7278360c2e9fc8946 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-13 19:24:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-18 16:22:17 +0900 Autoconf 2.70 no longer has -o option Notes: Merged: https://github.com/ruby/ruby/pull/4086 commit 48bb0329eb325bc5b77c222f45b8dc97a208d986 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-13 00:03:06 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-18 16:22:17 +0900 Revert AC_PROG_CC_C99 for -std=gnu99 option to gcc 4.8 Notes: Merged: https://github.com/ruby/ruby/pull/4086 commit c32375883a696fcf8e9e99875f1339ee5474a255 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-12 22:55:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-18 16:22:17 +0900 Update for autoconf 2.70 Notes: Merged: https://github.com/ruby/ruby/pull/4086 commit 414438688fd4a90d02ab7f8e2592356e1a542161 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-12 22:54:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-18 16:22:09 +0900 ruby_type_attribute is not used for now Notes: Merged: https://github.com/ruby/ruby/pull/4086 commit c3d6bac325dcc4868977b15503641afa48092119 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-18 15:55:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-18 15:55:10 +0900 Upcoming Struct#new behavior commit a3851d97edec4979b886428136b1c62089d57d17 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-18 15:33:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-18 15:33:10 +0900 Removed unused AC_CHECKING commit 6abf393e8f372464322dc0a8c2bda80f8b389acd Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-18 12:41:58 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-18 12:43:05 +0900 OpenBSD has getentropy, but no sys/random.h https://man.openbsd.org/getentropy Try to fix https://rubyci.s3.amazonaws.com/openbsd-current/ruby-master/log/20210118T023008Z.fail.html.gz ``` compiling random.c random.c:53:11: fatal error: 'sys/random.h' file not found # include <sys/random.h> ^~~~~~~~~~~~~~ 1 error generated. ``` commit bf640bbf8cef7f4575e782e35c4588cb138890b6 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-18 02:18:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-18 02:18:37 +0900 * 2021-01-18 [ci skip] commit 9f7876ab0f2a63a26002d899e8158db45935ac65 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-18 01:57:49 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-18 02:13:07 +0900 [ruby/irb] Version 1.3.2 https://github.com/ruby/irb/commit/a7699026cc commit 166f33d0d1e04c0c09f2c95c7bde0e262672a7a5 Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2021-01-16 07:44:25 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-18 02:13:01 +0900 [ruby/irb] skip a failling test on TruffleRuby * due to the difference of backtrace pointed out by @aycabta https://github.com/ruby/irb/commit/5e00a0ae61 commit d290a02bd7035eb186eb5c275af4e1ddc20ad47f Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2021-01-15 22:00:38 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-18 02:12:53 +0900 [ruby/irb] handle repeated exception separately https://github.com/ruby/irb/commit/fcf6b34bc5 commit 3f0b4665df786990799c4cbac4de3a3cafb5e6bc Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2021-01-13 23:36:10 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-18 02:12:43 +0900 [ruby/irb] handle `__ENCODING__` as a keyword as well https://github.com/ruby/irb/commit/a6a33d908f commit edafde684467ae45be5dd52c24ebb6ce25ef16f5 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-18 01:58:06 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-18 02:10:02 +0900 [ruby/irb] [ruby/irb] [ruby/reline] Version 0.2.2 https://github.com/ruby/reline/commit/dfb710946f https://github.com/ruby/irb/commit/1a1cdf9628 https://github.com/ruby/irb/commit/fe99faf8bd commit e1449ae74f09171542431875005b38c82711a253 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-14 09:16:49 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-18 02:09:53 +0900 [ruby/reline] Reline::Windows.erase_after_cursor erases attributes too https://github.com/ruby/reline/commit/68b961dfc7 commit 05df7e0d4a09eaacb91388f32ef557d1d5fbe082 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-14 08:56:58 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-18 02:09:43 +0900 [ruby/reline] Support for change in Windows-specific behavior at eol The behavior of automatically moving the cursor to the next line when displaying a char at the eol on Windows suddenly disappeared. https://github.com/ruby/reline/commit/cad4de6ee8 commit f3156e457d75bdcb76793e32ed5457e4157e4cf7 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-14 08:34:30 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-18 02:09:34 +0900 [ruby/reline] Windows needs more times to wait rendering https://github.com/ruby/reline/commit/53ff2b09c7 commit 9279d3f2556435190a74f3bdaa5ee887299366b1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-14 06:22:56 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-18 02:08:41 +0900 [ruby/reline] Tests with yamatanooroti don't need chdir Because of chdir, log files ware created in temporary directries on Windows. https://github.com/ruby/reline/commit/200b469a68 commit 1aba1a510304410a43bd51506b403534349f9341 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-14 06:21:54 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-18 02:07:37 +0900 [ruby/reline] Initialize a variable just in case https://github.com/ruby/reline/commit/29b10f6e98 commit f96eaf54a2f0662749c9d43bbbe861d905b6492f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-17 21:55:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-17 21:55:48 +0900 Use the dedicated assertion commit 54c91185c9273b9699693910fa95383c86f2af22 Author: David CARLIER <devnexen@gmail.com> AuthorDate: 2021-01-16 21:47:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-17 18:48:48 +0900 random generator update for Mac proposal using getentropy for seeding, reading 256 bytes at a time to avoid the EIO errno since this is the maximum. Notes: Merged: https://github.com/ruby/ruby/pull/4081 commit 8d099aa040427aede04e42c3ec9380afd431ffe3 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-17 18:35:54 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-17 18:35:54 +0900 Warn Struct#initialize with only keyword args (#4070) * Warn Struct#initialize with only keyword args A part of [Feature #16806] * Do not warn if `keyword_init: false` is explicitly specified * Add a NEWS entry * s/in/from/ * Make sure all fields are initialized Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit e033c9d7db02a4e8d2973364ecb47744b63aecd3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-17 18:28:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-17 18:28:20 +0900 Include missing AvailabilityMacros.h commit 2bd8098c6d14b485c90a8e49355991e5220989e8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-17 18:07:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-17 18:07:33 +0900 Suppress the warning for the invalid method_explorer case commit b84b253a69537a14e4854e17b6d94ae75c2af050 Author: manga_osyo <manga.osyo@gmail.com> AuthorDate: 2021-01-17 04:41:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-17 12:58:13 +0900 Fix Ripper with heredoc. Notes: Merged: https://github.com/ruby/ruby/pull/4083 commit 562b97e2f0abed2eb09db00e91e966e3fb3a4a09 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-17 11:52:03 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-17 12:20:57 +0900 [ruby/fileutils] Removed code for dead versions https://github.com/ruby/fileutils/commit/1f707d8cc6 commit 905f58dc874a6d4b89da4212412d1f1ae133e985 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-17 11:48:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-17 12:20:55 +0900 [ruby/fileutils] Drop support for dead old versions https://github.com/ruby/fileutils/commit/4526148c67 commit 19902e2e0afb5ee52655ca3eb3eea0d2ba2bcfdc Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-01-17 08:14:00 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-01-17 08:14:02 +0900 Update the maintainer of net-smtp commit fd42d334cf231bf10f46b2844724ad06894955bc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-17 06:09:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-17 06:09:01 +0900 * 2021-01-17 [ci skip] commit a4a6cb036e4b374a9616cf38f4d8d74ac4478d8d Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-01-17 06:08:21 +0900 Commit: Sutou Kouhei <kou@clear-code.com> CommitDate: 2021-01-17 06:08:21 +0900 Remove samples for test-unit They are no longer needed. commit f2767cf09174bfe5340c9269a2fa53f226f97ba8 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2021-01-17 06:07:54 +0900 Commit: Sutou Kouhei <kou@clear-code.com> CommitDate: 2021-01-17 06:07:54 +0900 Move rss samples to ruby/rss commit 35a047301b545dde2836948a7b1d4a39131f294e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-16 14:39:44 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-16 19:42:53 +0900 [ruby/io-console] Rubygems 3.2 supports `--platform` option https://github.com/ruby/io-console/commit/c8046fde84 commit 6ab5504fe5d952783ab124ac52a3295d0ae3a87d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-01-11 11:26:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-16 19:42:52 +0900 [ruby/io-console] Moved JRuby version files into particular path https://github.com/ruby/io-console/commit/b0691d2c20 commit 92da224d228be6a38b5e86ea43290e6e5a33df45 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-01-10 17:19:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-16 19:42:52 +0900 [ruby/io-console] Delegate to JRuby version Add `--platform` option tentatively. https://github.com/ruby/io-console/commit/3bf1a7b753 commit c143a2f9476073e3ced746009b10c81e68ec22bb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-16 15:05:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-16 19:42:52 +0900 [ruby/io-console] bump up to 0.5.7 https://github.com/ruby/io-console/commit/f55d7ebff6 commit 0ed71b37fa9af134fdd5a7fd1cebd171eba83541 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-16 07:14:43 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-01-16 08:23:16 +0900 Don't try to clear cache on garbage objects Method cache can be cleared during lazy sweeping. An object that will be collected during lazy sweep *should not* have it's method cache cleared. Soon-to-be-collected objects can be in an inconsistent state and this can lead to a crash. This patch just leaves early if the object is going to be collected. Fixes [Bug #17536] Co-Authored-By: John Hawthorn <john@hawthorn.email> Co-Authored-By: Alan Wu <XrXr@users.noreply.github.com> Notes: Merged: https://github.com/ruby/ruby/pull/4077 commit e7f1afbccd3bd7026b7e4f2301beb149ea14a78c Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-01-16 05:25:56 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-16 05:25:56 +0900 Additions to method_documentation.rdoc (#4065) * Additions to method_documentation.rdoc Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit a2941d71342a7401763c77b1c5ba0eace4461a14 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-01-16 03:08:01 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-16 03:08:01 +0900 Add What's Here to Array RDoc (#4062) * Add What's Here to Array RDoc Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 4c4f873fc79dc0dc31ddf125d9a0e483ec1bfed1 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-16 00:15:06 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-16 00:15:06 +0900 * 2021-01-16 [ci skip] commit b1306445842eee53e23fd932a85d252d183e63b5 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-15 10:44:45 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-16 00:09:26 +0900 [ruby/bigdecimal] Fix for the coerce cases in divide and DoDivmod https://github.com/ruby/bigdecimal/commit/1cb92487f7 commit 9d0c5e2754c72936d604405152aebc149675a2e6 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-15 10:04:48 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-16 00:08:09 +0900 [ruby/bigdecimal] Use pre-allocated special values in BigDecimal_DoDivmod https://github.com/ruby/bigdecimal/commit/d2746121cf commit f95f85b215d85dfd2c439d1a366bb6419274c7ac Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-15 10:03:56 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-16 00:07:48 +0900 [ruby/bigdecimal] Use new conversion functions in BigDecimal_DoDivmod https://github.com/ruby/bigdecimal/commit/68c20200d5 commit 5307fab6619e26e05d791d68c35ceef2e923e8d5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-15 18:17:48 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-15 19:04:33 +0900 [ruby/time] Use Time#strftime to format https://github.com/ruby/time/commit/6b8cc4799e commit 0d57d59933fb7b826bd0e20d84ed7f6d6636ac90 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-14 00:14:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-15 17:46:48 +0900 Keep encoding in the result of File.expand_path [Bug #17517] Notes: Merged: https://github.com/ruby/ruby/pull/4061 commit e09094546a19d6b62b3e21d0b061b103cf21f760 Author: Jeremy Evans <code@jeremyevans.net> AuthorDate: 2021-01-15 04:59:25 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-01-15 13:43:30 +0900 Make Module#prepend affect ancestor chain even if argument already included in receiver Previously, if a class included a module and then prepended the same module, the prepend had no effect. This changes the behavior so that the prepend has an effect unless the module is already prepended the receiver. While here, rename the origin_seen variable in include_modules_at, since it is misleading. The variable tracks whether c has been seen, not whether the origin of klass has been. Fixes [Bug #17423] Notes: Merged: https://github.com/ruby/ruby/pull/4072 commit 1cb0c5ac49e180cca060e3a17eba6c561f5330c2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-15 12:37:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-15 12:43:28 +0900 [ruby/time] No document for private methods https://github.com/ruby/time/commit/44a55daa70 commit 69ea2701aec5ebf76637cc36e30bbe7b94518824 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-15 12:29:39 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-15 12:29:39 +0900 Sort filenames [ci skip] commit 9c0189582dfa1589b0f4027392f36f3750c39f33 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-15 11:48:55 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-15 11:48:55 +0900 Add timev.rb to .document commit eb4319beafedc5ea8541d06e0db30309af96eced Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-15 09:32:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-15 09:37:28 +0900 extlibs.rb: make patch command selectable [ci skip] Some Windows ports fail an assertion on patch files with LF EOL code. MSys2 patch.exe 2.7.6 seems fine, at least. commit 0a039c5fbb247364961e0471582024751bc2be53 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-15 06:19:39 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-15 06:42:48 +0900 [ruby/bigdecimal] Use new conversion functions in BigDecimal_divide https://github.com/ruby/bigdecimal/commit/3b55ad1c42 commit 500fc63cd03aef44df154b7a3762d07967b80e94 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-15 06:00:24 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-15 06:42:38 +0900 [ruby/bigdecimal] Reorder the arguments of BigDecimal_divide https://github.com/ruby/bigdecimal/commit/1e03da7076 commit 48589f34e49ddb1d3b4399a6390dd02a0d5cded7 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-15 02:57:12 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-15 02:57:12 +0900 * 2021-01-15 [ci skip] commit 5e26619660f20272a53c7f839dde36cce034bb35 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-15 02:55:54 +0900 Commit: Aaron Patterson <tenderlove@ruby-lang.org> CommitDate: 2021-01-15 02:55:54 +0900 Fix WB for callinfo The WB for callinfo needs to be executed *after* the reference is written. Otherwise we get a WB miss. commit 834b404b9aba6f3dcaa8107632530489239e53d1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-14 21:35:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-14 21:35:38 +0900 [DOC] Fixed indent [ci skip] commit 6bcc4664bdaebbf9b28a762ae63f476a1ec6cfb2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-14 16:15:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-14 16:15:25 +0900 Return new NODE_LIT As NODE_ZLIST/NODE_LIST are not markable, cannot be reused as NODE_LIT. Notes: Merged: https://github.com/ruby/ruby/pull/4069 commit bb40c5cbe977de9f36a2a739e94e9b2fd4496b6e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-14 16:13:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-14 16:13:26 +0900 Ensure symbol list node is either NODE_STR or NODE_DSTR Notes: Merged: https://github.com/ruby/ruby/pull/4069 commit c060bdc2b4ab8eeef5374f4174f5de48ab936d74 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-14 15:42:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-14 16:12:02 +0900 NODE markability should not change by nd_set_type Notes: Merged: https://github.com/ruby/ruby/pull/4069 commit e1fee7f949cb6719122672fa1081c60984a5339f Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-14 15:36:45 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-14 15:46:51 +0900 Rename RubyVM::MJIT to RubyVM::JIT because the name "MJIT" is an internal code name, it's inconsistent with --jit while they are related to each other, and I want to discourage future JIT implementation-specific (e.g. MJIT-specific) APIs by this rename. [Feature #17490] commit 4d13f3e9da6298a1f8154def2e341ecb7c5fe116 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-14 09:26:15 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-14 10:21:10 +0900 [ruby/bigdecimal] Explicitly cast size_t to int https://github.com/ruby/bigdecimal/commit/b1f1ed26c9 commit b4ade73974f7023bff9059737a8ff73fe1c09f40 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-14 09:23:26 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-14 10:20:47 +0900 [ruby/bigdecimal] Explicitly cast uint64_t to double https://github.com/ruby/bigdecimal/commit/f0d94e6843 commit e129be7592cd0551f45f6c6aa2faf88bbe697f66 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-14 09:23:03 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-14 10:20:30 +0900 [ruby/bigdecimal] Suppress warning at NO_SANITIZE on gcc https://github.com/ruby/bigdecimal/commit/f6765b8071 commit efcdf68e6443ab70fbff1703b9dabbfc5090df31 Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-14 06:35:11 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-01-14 09:13:53 +0900 Guard callinfo Callinfo was being written in to an array and the GC would not see the reference on the stack. `new_insn_send` creates a new callinfo object, then it calls `new_insn_core`. `new_insn_core` allocates a new INSN linked list item, which can end up calling `xmalloc` which will trigger a GC: https://github.com/ruby/ruby/blob/70cd351c7c71c48ee18d7c01e851a89614086f8f/compile.c#L968-L969 Since the callinfo object isn't on the stack, the GC won't see it, and it can get collected. This patch just refactors `new_insn_send` to keep the object on the stack Co-authored-by: John Hawthorn <john@hawthorn.email> Notes: Merged: https://github.com/ruby/ruby/pull/4066 commit f4ce78d5c139a8825ee2d09f39aef03ef762dfc6 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-13 17:33:53 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-14 09:06:39 +0900 delete negative cache from the table correctly negative cache entry should be removed from vm->negative_cme_table even if the redefined class has no subclasses. Notes: Merged: https://github.com/ruby/ruby/pull/4063 commit c8b47eb7c97ef130b2c576e9d52e55ff4400bb9f Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-13 07:47:42 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-01-14 07:56:05 +0900 only add the trailing nop if the catch table is not break / next / redo We don't need nop padding when the catch tables are only for break / next / redo, so lets avoid them. This eliminates nop padding in many lambdas. Co-authored-by: Alan Wu <XrXr@users.noreply.github.com> Notes: Merged: https://github.com/ruby/ruby/pull/4055 commit 589a8026f029611dafb316fe750b54e54304239a Author: Aaron Patterson <tenderlove@ruby-lang.org> AuthorDate: 2021-01-14 06:46:03 +0900 Commit: Aaron Patterson <aaron.patterson@gmail.com> CommitDate: 2021-01-14 07:53:45 +0900 fix ASAN errors Notes: Merged: https://github.com/ruby/ruby/pull/4067 commit 70cd351c7c71c48ee18d7c01e851a89614086f8f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-14 00:18:48 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-14 00:18:48 +0900 * 2021-01-14 [ci skip] commit 7f3c5e65c658ba164bbf0ca7df18ac5b0c8be573 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-14 00:17:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-14 00:17:23 +0900 mkmf.rb: remove exts.mk at distclean commit 521ad9a13aef1e1dae4eaff70d3e6b2e358aa095 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-04 10:36:38 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-13 23:20:02 +0900 Moved Fiber methods into core [Feature #17407] Notes: Merged: https://github.com/ruby/ruby/pull/4060 commit 0036648a420f945624898568bb82bc5f83195d12 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-13 21:15:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-13 21:16:00 +0900 Capture to reserved name variables if already defined [Bug #17533] Notes: Merged: https://github.com/ruby/ruby/pull/4059 commit e9b93d67baf8a6add548b7e5c702665100e4b3c9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-13 18:25:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-13 18:37:36 +0900 Positional and keyword arguments for timezone are exclusive [Feature #17485] Notes: Merged: https://github.com/ruby/ruby/pull/4010 commit 4b15caee8fe7a5aaa52ed5a3ab2a3517c9206fd7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-28 21:13:41 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-13 18:15:50 +0900 Added `in:` timezone option to `Time.new` [Feature #17485] Notes: Merged: https://github.com/ruby/ruby/pull/4010 commit 6f6dfdcc685077f0f85dcdd63843ecfc0f6fbfb6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-09 16:52:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-13 18:12:49 +0900 Make warning values consistent [Bug #17523] They should be affected, as well as `$VERBOSE`, by `-w`/`-W` options, not only in the main script but in scripts loaded by `-r` option too. Notes: Merged: https://github.com/ruby/ruby/pull/4042 commit 85b5d4c8bf4cdcba4f1af65f2bc0c8ac716cb795 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-13 16:49:05 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-13 18:11:46 +0900 Revert "[Bug #11213] let defined?(super) call respond_to_missing?" This reverts commit fac2498e0299f13dffe4f09a7dd7657fb49bf643 for now, due to [Bug #17509], the breakage in the case `super` is called in `respond_to?`. Notes: Merged: https://github.com/ruby/ruby/pull/4057 commit 9441f3f97087a4325ee80911859d37da41fa5050 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-04 00:07:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-13 16:37:59 +0900 Allow UTC offset without colons per ISO-8601 [Bug #17504] Notes: Merged: https://github.com/ruby/ruby/pull/4020 commit 30a35420e6afac57db77513d7b6be7cf6a43dbbe Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-01-13 08:32:23 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2021-01-13 15:09:29 +0900 [ruby/ostruct] Bump version Notes: Merged: https://github.com/ruby/ruby/pull/4054 commit 65787f18b945aa67de823cef051f5ee880db39c2 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-01-13 13:30:47 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-01-13 13:30:47 +0900 Typo fixes [doc] commit f48edc28dda3df962f289fd373c06a8dfeda3dc0 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-01-13 07:20:50 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-01-13 13:29:39 +0900 Fix method protection for modules in the ancestry chain. [Fixes ruby/ostruct#23] commit 75212f2fc6571bd9cab0381fbd0bde81e1b3159c Author: Adam Pogwizd <adampog77@gmail.com> AuthorDate: 2021-01-13 13:28:34 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-13 13:28:34 +0900 Update wording in ractor.md (#4056) [doc] Notes: Merged-By: marcandre <github@marc-andre.ca> commit d8fb0bca5475d62731ba871adf344fef88f62bbf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-13 12:47:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-13 12:47:42 +0900 Removed excess stringizations on regstr [Bug #17532] commit 083c5f08ec4e95c9b75810d46f933928327a5ab3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-10 22:00:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-13 12:16:00 +0900 Check stack overflow in recursive glob_helper [Bug #17162] Notes: Merged: https://github.com/ruby/ruby/pull/4053 commit a5b4b806de3b130348a92aa3306fbb9318efb762 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-13 10:28:23 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-13 11:49:18 +0900 [ruby/bigdecimal] Allow digits=0 in BigDecimal(flt) and Float#to_d Using dtoa of mode=0, we can determine the number of digits in decimal that is necessary to represent the given Float number without errors. This change permits digits=0 in BigDecimal(flt) and Float#to_d, and these methods use dtoa of mode=0 when the given digits is 0. Internal implicit conversion from Float also uses digits=0. [Fix GH-70] https://github.com/ruby/bigdecimal/commit/2dbe170e35 commit 30f13164011dd876fd95a0e3fcd7c1224c4e04b5 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-01-13 11:27:30 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-01-13 11:27:30 +0900 Skip test when UDP server is no response. commit 0a4f719a06df15667f0ed329b9ed556befd0402b Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-13 09:36:17 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-13 09:36:17 +0900 Update ext/bigdecimal/depend commit 28321e400ebf8091a50152219329b05e7e9db0b7 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-13 09:08:48 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-13 09:08:48 +0900 Update ext/bigdecimal/depend commit 4ba3a4491e15ed50f26c8f7a602fb4ef5452085a Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-12 22:58:17 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-13 02:11:18 +0900 [ruby/bigdecimal] Optimize rb_float_convert_to_BigDecimal by using dtoa This improve the conversion speed several times faster than before. ``` RUBYLIB= BUNDLER_ORIG_RUBYLIB= /home/mrkn/.rbenv/versions/3.0.0/bin/ruby -v -S benchmark-driver /home/mrkn/src/github.com/ruby/bigdecimal/benchmark/from_float.yml ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [x86_64-linux] Calculating ------------------------------------- bigdecimal 3.0.0 master flt_e0 156.400k 783.356k i/s - 100.000k times in 0.639388s 0.127656s flt_ep10 158.640k 777.978k i/s - 100.000k times in 0.630359s 0.128538s flt_ep100 101.676k 504.259k i/s - 100.000k times in 0.983512s 0.198311s flt_em10 103.439k 726.339k i/s - 100.000k times in 0.966751s 0.137677s flt_em100 79.675k 651.446k i/s - 100.000k times in 1.255095s 0.153505s Comparison: flt_e0 master: 783355.6 i/s bigdecimal 3.0.0: 156399.5 i/s - 5.01x slower flt_ep10 master: 777977.6 i/s bigdecimal 3.0.0: 158639.7 i/s - 4.90x slower flt_ep100 master: 504259.4 i/s bigdecimal 3.0.0: 101676.5 i/s - 4.96x slower flt_em10 master: 726338.6 i/s bigdecimal 3.0.0: 103439.2 i/s - 7.02x slower flt_em100 master: 651446.3 i/s bigdecimal 3.0.0: 79675.3 i/s - 8.18x slower ``` https://github.com/ruby/bigdecimal/commit/5bdaedd530 https://github.com/ruby/bigdecimal/commit/9bfff57f90 https://github.com/ruby/bigdecimal/commit/d071a0abbb commit 2175c2c957a711f1c48f42d38db202bf52c8bc6f Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-12 22:51:29 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-13 01:58:23 +0900 [ruby/bigdecimal] Use pre-allocated objects for special values https://github.com/ruby/bigdecimal/commit/95c201f2d3 commit 6670de82c2d7a1449412bf6629aa01cc8ecb35e2 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-12 22:56:54 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-13 01:27:04 +0900 [ruby/bigdecimal] Fix exception message raised in Kernel.BigDecimal https://github.com/ruby/bigdecimal/commit/d163f170a4 https://github.com/ruby/bigdecimal/commit/ff8eeeb064 commit 79d236a9f1f8ec6f1c5649852325bdf159a0a162 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-13 01:13:31 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-13 01:13:31 +0900 * 2021-01-13 [ci skip] commit 0e4424750824e8ca779804315d0064b6c0975e83 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-12 01:15:33 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-13 01:12:54 +0900 [ruby/reline] Version 0.2.1 https://github.com/ruby/reline/commit/a3b3c6ee60 commit eb5a094fc0231ccff080021aef23b19271761da1 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-09 02:13:23 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-13 01:12:54 +0900 [ruby/reline] Move the cursor correctly when deleting at eol This fixes ruby/reline#246. https://github.com/ruby/reline/commit/07a73ba601 commit 44817db28bfc9a426732977893229e018687919d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-09 00:40:10 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-13 01:12:54 +0900 [ruby/reline] Handle ed_search_{prev,next}_history in multiline correctly The current line was being handled incorrectly when displaying the hit history, so it has been fixed to be correct. https://github.com/ruby/reline/commit/a3df4343b3 commit 9fa478e38abb8efc75b17ee5171fa3aa36e88dad Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-12 01:13:53 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-13 01:12:54 +0900 [ruby/irb] Version 1.3.1 https://github.com/ruby/irb/commit/c230d08911 commit 344a824ef9d4b6152703d02d7ffa042abd4252c1 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-12 22:12:02 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-12 22:12:02 +0900 [DOC] Use URI#read instead of URI.open for better compatibility - URI.open is available since 2.5.0, but URI#read is available since 1.8.0. - Fix `open` without `close`. - ref https://github.com/rurema/doctree/pull/2433 commit 0dc95266e8c36dbc3bfdcb88d820cb7f897166d7 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-01-12 20:15:18 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-01-12 20:15:18 +0900 Fix the failing test with XDG_CONFIG_HOME commit 7dc0511ea4be210f82abb1c82a31aec3a4fe5736 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-12 18:17:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-12 20:02:43 +0900 Remove "." and ".." from Dir.glob with FNM_DOTMATCH [Bug #17280] Co-authored-by: Jeremy Evans <code@jeremyevans.net> Notes: Merged: https://github.com/ruby/ruby/pull/4052 commit ccabf4966f4c5a7e19fec52b690d07bf471fc5d1 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-12 16:54:36 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-12 17:38:43 +0900 [ruby/bigdecimal] Fix length calculation in rb_uint64_convert_to_BigDecimal https://github.com/ruby/bigdecimal/commit/14e53ed7f6 commit 1eb8eb55c27b19e36d5bd23ce27f7ec2b9a7f521 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-12 17:24:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-12 17:24:43 +0900 Convert time component strings to integers more strictly https://bugs.ruby-lang.org/issues/17485#change-89871 commit b017848f8a9c907be07f51d6ae6304bff9950594 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-12 17:00:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-12 17:00:14 +0900 Show seconds of utc_offset if not zero commit f7dc4d5cda74e101fa66c1170c0b47deea09c0ee Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-12 09:56:58 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-12 09:57:04 +0900 tool/sync_default_gems.rb: Prevent infinite loop due to unknown options commit 71b17c4110e1eeda9b4c1020e2ecad69efbc8c97 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-12 09:49:02 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-12 09:49:02 +0900 * 2021-01-12 [ci skip] commit 1d04faee23b509efdfaa2121837f9dd015b6857f Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-12 09:19:19 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-12 09:22:14 +0900 [ruby/bigdecimal] Use rb_cstr_convert_to_BigDecimal in GetVpValueWithPrec https://github.com/ruby/bigdecimal/commit/381ddf5ff6 commit 78d3813c74c3dd37eb3a7d5fa2fb096566c0b290 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-12 09:19:14 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-12 09:21:58 +0900 [ruby/bigdecimal] Add rb_cstr_convert_to_BigDecimal https://github.com/ruby/bigdecimal/commit/ac230a996e commit 66a844fd07ca0fd652a20a1973ea242422d4ae6d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-11 19:12:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-11 21:13:45 +0900 Define printf qualifier prefix fallbacks Notes: Merged: https://github.com/ruby/ruby/pull/4050 commit 72549cfe98a16097bb34256a8b6e75845027345b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-11 19:44:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-11 19:46:31 +0900 Removed ENABLE_PATH_CHECK condition [ci skip] This condition is useless on Ubuntu, as this macro is defined by default on other than Windows. commit 2a1c68c91efeba93c413d0736bc513179d784c50 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-11 16:40:37 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-11 16:40:38 +0900 Avoid re-entering opt_invokebuiltin_delegate_leave on interruption. The cancellation code was originally written for leave insn, but re-entering opt_invokebuiltin_delegate_leave insn on a cancellation is not safe, because a builtin function is executed twice. commit 5e00eeb4d445fe28ec16b7c28cc9c02c5fc764db Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-11 14:00:35 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-11 14:00:35 +0900 [ruby/matrix] use an exclusive range [Bug #17521] commit d2aaf865e3e5ecfcd10c879ce4263dc3a8f7fccf Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-11 11:31:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-11 11:39:12 +0900 [ruby/etc] Added fallback definition of RUBY_ATOMIC_EXCHANGE https://github.com/ruby/etc/commit/0c5900bd21 commit f6e2c41db30cc3d46053de70dbfe87a5db24d58d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-11 11:14:28 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-11 11:39:10 +0900 [ruby/etc] Check blocking variables at release https://github.com/ruby/etc/commit/f017bdfedf commit d8c8b79d24bf0f3177535501ad9b801e552fb2ad Author: Marc-André Lafortune <github@marc-andre.ca> AuthorDate: 2021-01-11 06:21:10 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-11 06:21:10 +0900 [ruby/matrix] Fix 0-th power [Bug #17521] (#4047) Notes: Merged-By: marcandre <github@marc-andre.ca> commit 8187228de0142d3ac7950b7d977c2849e934c637 Author: Tom Chen <tom@tomchen.co> AuthorDate: 2021-01-11 05:39:37 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-11 05:39:37 +0900 Fix ractor docs (#4048) [doc] Notes: Merged-By: marcandre <github@marc-andre.ca> commit 0e015f9389cd468b0ade2d336526bb75b5bf5015 Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-01-11 05:13:24 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-11 05:13:24 +0900 Adds RDoc summary of Hash methods (#4045) * Adds RDoc summary of Hash methods Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com> commit 52257640ac50a00d76eb8bdb65ea3bd0e6f3ba57 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-11 00:47:34 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-11 00:47:34 +0900 * 2021-01-11 [ci skip] commit 480f436dacc28def6c23d6b914f03ac6a0753d5d Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-11 00:33:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-11 00:33:26 +0900 Suppress constant redefinition warnings commit c63552eab1a13c6c05e18d763c7acf3c4c5383ed Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-10 21:29:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-10 21:29:07 +0900 Remove possibility of using same seeds commit 1e827d4cb579e8c38daeaccf89338352fa5518eb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-10 20:42:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-10 20:42:01 +0900 Moved to ruby/actions workflow [ci skip] commit 2adbf01ae14c0a4cf190b7c969b91726966a0e0f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-10 17:36:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-10 18:19:53 +0900 dtoa.c: make thread-safe by using atomic CAS Notes: Merged: https://github.com/ruby/ruby/pull/4046 commit 34d02631e71209b12abb69d0114601027e485bc9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-10 16:32:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-10 16:42:36 +0900 dtoa.c: constified clang seems to locate never modified local data in the const segment implicitly. commit 63abb5c227e5c20d18d0debf699251da93ca64b5 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-10 15:46:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-10 16:28:58 +0900 dtoa.c: make compilable independently Except for `-Dxmalloc=malloc -Dxfree=free`. commit 01aa036023f545549a2d0b4efb05c50834f652fc Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-10 08:45:43 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-10 08:45:43 +0900 * 2021-01-10 [ci skip] commit 2e9b6096a68187830f8fbd427c79f05308f43160 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-10 08:37:35 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-10 08:40:05 +0900 [ruby/bigdecimal] Fix type name https://github.com/ruby/bigdecimal/commit/2dad4d17b2 commit 8b53cbaf5e7f1a0a7eef905c449981d8895f9711 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-10 08:31:20 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-10 08:36:29 +0900 [ruby/bigdecimal] Avoid casting negative value to size_t https://github.com/ruby/bigdecimal/f047b2786f commit 72d504c1fde34894d797ac7fb881609d81711e06 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-10 08:29:53 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-10 08:35:43 +0900 [ruby/bigdecimal] Use smallest local variable scope in GetVpValueWithPrec https://github.com/ruby/bigdecimal/commit/44f26b9aa0 commit 590dc06e3840cc7b00d80ccaac9fbf42573428f8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-08 19:07:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-09 22:38:06 +0900 Get rid of defining methods for tests in core classes Not to interfere in other tests. Notes: Merged: https://github.com/ruby/ruby/pull/4043 commit 161a20df28dd09ff35a32a7e2b7ce6cab7079707 Author: David CARLIER <devnexen@gmail.com> AuthorDate: 2021-01-09 20:38:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-09 22:37:27 +0900 gc fix typo for the timer instruction for ARM64. Notes: Merged: https://github.com/ruby/ruby/pull/4044 commit 3d9c95996dfc8e1d6bc263509273f13caaf06f77 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-09 15:28:08 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-09 20:36:47 +0900 [ruby/bigdecimal] Stop using GetVpValueWithPrec in rb_rational_convert_to_BigDecimal https://github.com/ruby/bigdecimal/commit/b4f470da61 https://github.com/ruby/bigdecimal/commit/44a78df866 commit be34e31d8e68b365a104c955389c6e9f865e054e Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-09 15:19:52 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-09 20:36:18 +0900 [ruby/bigdecimal] Add assertions for checking the argument types https://github.com/ruby/bigdecimal/commit/96c9ebd886 commit fb18a8113a549185938e3cf12b3494547d077558 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-09 15:10:20 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-09 20:35:52 +0900 [ruby/bigdecimal] Stop using GetVpValueWithPrec in rb_float_convert_to_BigDecimal https://github.com/ruby/bigdecimal/commit/33e7c50263 https://github.com/ruby/bigdecimal/commit/d3c1b0b921 commit 89f3125207de68f4b2d2a444a79b4e26b59cd9c9 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-08 21:00:45 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-09 20:35:08 +0900 [ruby/bigdecimal] Add test cases of conversion from Float https://github.com/ruby/bigdecimal/commit/28d3836366 commit 0bb62dccf4e6990cfe0bb35c4d8e74e000086d19 Author: Tee KOBAYASHI <xtkoba+ruby@gmail.com> AuthorDate: 2021-01-09 13:23:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-09 13:37:41 +0900 Fixed a typo [Bug #17522] commit 7ff0e93f96cc55467d791ebc841f12f9130bf181 Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2021-01-09 12:18:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-09 13:33:33 +0900 parse.y: handle "duplicated argument name" appropriately on ripper.y refs: 733ed1e184 commit 1a3343cfdcb765b94bf63375d45618130d6b92c9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-09 00:31:47 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-09 00:31:47 +0900 * 2021-01-09 [ci skip] commit 391ee3ee3acb2553b5ae7817373eaf3fce891e07 Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-01-08 23:52:35 +0900 Commit: Jeremy Evans <code@jeremyevans.net> CommitDate: 2021-01-09 00:31:27 +0900 Replace `Kernel.#open` with `URI.open` in doc Because `Kernel.#open` no longer opens URI since Ruby 3.0. Notes: Merged: https://github.com/ruby/ruby/pull/4039 commit 98bd7e87a08b86c7aa95502428015c3f7b4aae75 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-08 15:41:58 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-08 15:43:40 +0900 [ruby/irb] Make IRB::ColorPrinter.pp compatible with PP.pp The incompatible interface is not helpful, again if you want to use it as a standalone library, falling it back to PP. Original PP.pp also ends with `out << "\n"`. https://github.com/ruby/irb/commit/4c74c7d84c commit d6b2b5bd47952efb6928db7ff1d393f6973e7ccd Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-08 15:32:47 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-08 15:35:12 +0900 [ruby/irb] Add missing require This is useful if you want to use IRB::ColorPrinter as a library like: ``` begin require 'irb/color_printer' IRB::ColorPrinter.pp(obj) rescue LoadError pp(obj) end ``` https://github.com/ruby/irb/commit/f8461691c7 commit d4b7e967b6dc0c4b971cbb3b5444c7fbe93a3f86 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-08 14:44:26 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-08 14:44:26 +0900 should use `assert_include` here. Random ordering test can introduce antoher candidate so it should be `assert_include`. commit abdc634f64a440afcdc7f23c9757d27aab4db8a9 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-08 12:08:54 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-08 14:39:05 +0900 remove unused decl Notes: Merged: https://github.com/ruby/ruby/pull/4037 commit 5a221eadfdd1a191b31df133c8064ad1c58689d9 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-08 13:38:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-08 13:38:37 +0900 * 2021-01-08 [ci skip] commit 6cbb3fd142d980f3921c411d0502132009f4333d Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-08 13:31:35 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:32:10 +0900 [ruby/irb] Fix comment, irb gem supports 2.5.0 or older https://github.com/ruby/irb/commit/36118015ba commit a8f4cbeece5c30587536e456365c28d829bb1a95 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-06 07:06:58 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/reline] Add acknowledgments and license for rb-readline https://github.com/ruby/reline/commit/19df59b916 commit 01235f800f953cf5c3410d7eab3744c5fa6156e9 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-06 03:50:19 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/reline] Suppress auto indent for adding newlines in pasting Co-authored-by: Juanito Fatas <me@juanitofatas.com> https://github.com/ruby/reline/commit/074bb017a7 commit 76c9a3c8c633241c86024a027a644f1dd6dbbc44 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-05 18:29:09 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/reline] Suppress crashing when dynamic_prompt_proc returns a broken prompt list Co-authored-by: Juanito Fatas <me@juanitofatas.com> https://github.com/ruby/reline/commit/558f7be168 commit 88af5085dbf61dcd815e66aa9fe96c7d612c9747 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-05 18:22:00 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/reline] Suppress crashing when auto_indent_proc returns broken indent info Co-authored-by: Juanito Fatas <me@juanitofatas.com> https://github.com/ruby/reline/commit/7c24276275 commit e356b71d35bf3746bec7fa1a309338151dbde43a Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-01 09:55:00 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/reline] Remove debug print https://github.com/ruby/reline/commit/d7fbaedc6a commit ea75aed98e7382f6a548d0c3c5ac89abbe5f086f Author: aycabta <aycabta@gmail.com> AuthorDate: 2020-12-29 13:28:14 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/reline] Correct var names in Reline were different from vi-*-mode-string https://github.com/ruby/reline/commit/8255fc93b9 commit 54c1dcba2ba670c671afe5c2dc3213d74f57e0e3 Author: aycabta <aycabta@gmail.com> AuthorDate: 2020-12-27 18:37:16 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/reline] Update cursor correctly when just cursor moving This fixes ruby/reline#236 and ruby/reline#239. https://github.com/ruby/reline/commit/3e3c89d00b commit 559f844bf4a607eb94ab16817ee6f9fcfb0d54bd Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-08 12:56:36 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 irb: Drop lines from backtrace for tests in Ruby repository commit 111fddd5437c0d2d6755f8aa474da4b54f89bc44 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-08 04:51:28 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/irb] Fix BACK_TRACE_LIMIT logic https://github.com/ruby/irb/commit/30dc5d43fe commit 917050220a1fd41bdb3e50ea54a200b0c285bcd4 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-08 04:17:21 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/irb] Use Exception#full_message to show backtrace in the correct order [Bug #17466] https://github.com/ruby/irb/commit/1c76845cca commit ed3264d37abc54e3aade229751a9165ffd37ca2e Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2021-01-07 19:21:06 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/irb] refactoring an error handling in `IRB::Inspector` * moved rescue clause to `#inspect_value` to catch all failures in inspectors * test with all (currently five kind of) inspect modes - tweaked the input due to only `Marshal` can inspect(dump) a `BasicObject` https://github.com/ruby/irb/commit/9d112fab8e commit f59477523053b67eac409b6595bfe5db962aab3d Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2021-01-06 19:05:46 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/irb] do not escape a predicate method for doc namespace * Fixes https://github.com/ruby/irb/pull/88 https://github.com/ruby/irb/commit/d431a30af4 commit 4bb683a570043d169049d9741c319a297acd607b Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2021-01-06 19:01:08 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-08 13:25:18 +0900 [ruby/irb] fix typo in `IRB::Irb#convert_invalid_byte_sequence` https://github.com/ruby/irb/commit/d09d3c3d68 commit 55e52c19e74d5df90560ea1cc4f2a2b9f5d7a5c4 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-07 18:06:24 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-07 23:44:25 +0900 simplify assertion searched_cme is used only this line so the variable is not needed. Notes: Merged: https://github.com/ruby/ruby/pull/4036 commit 412d26a3857492c9c749b74d72bab07df9d0e028 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-07 20:11:02 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-07 20:11:02 +0900 Update bundled_gems commit 184e82e8f044bb5912dc01ebb2f4b52866fcc917 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-07 16:52:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-07 16:52:10 +0900 Follow the NDEBUG given to the whole commit 96ce1d9a0ff64494753ad4730f36a0cd7e7a89e7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-07 14:55:33 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-07 14:55:33 +0900 rbconfig.rb: extract cpu from RUBY_PLATFORM when universal commit ee1e690a2df901adb279d7a63fbd92c64e0a5ae6 Author: Igor Zubkov <igor.zubkov@gmail.com> AuthorDate: 2016-10-25 03:56:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-07 13:40:42 +0900 We don't need "require 'uri'" after "require 'net/http'". commit 4d0985a7bd8f591dff4b430e288bfd83af782e51 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-07 10:21:34 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-07 10:21:34 +0900 * 2021-01-07 [ci skip] commit 82f6085b3edaa41be4121b218b48100d4bf78670 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-06 18:17:35 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-07 10:20:40 +0900 [ruby/bigdecimal] Fix trailing zero handling in rb_uint64_convert_to_BigDecimal https://github.com/ruby/bigdecimal/commit/2056604d56 commit 698d7947c300a5f5d63965fb2ccce59601f2563b Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-06 14:41:13 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-07 10:19:46 +0900 [ruby/bigdecimal] Include TestBigDecimalBase in TestBigDecimalUtil https://github.com/ruby/bigdecimal/commit/f732201df1 commit 939729dd823ff5a71c7f203b8d6e5e5976e31d4f Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2021-01-06 18:47:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-06 21:58:34 +0900 fix result of example [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4031 commit 069649389cf2019782c7a11becf6391a67c68a9a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-06 17:34:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-06 17:34:18 +0900 strip trailing spaces [ci skip] commit d968829afa19c31e9461fd545cbd21250778ce6e Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-06 15:30:56 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-06 16:03:09 +0900 expose some C-APIs for ractor expose some C-APIs to try to make ractor utilities on external gems. * add * rb_ractor_local_storage_value_lookup() to check availability * expose * rb_ractor_make_shareable() * rb_ractor_make_shareable_copy() * rb_proc_isolate() (not public) * rb_proc_isolate_bang() (not public) * rb_proc_ractor_make_shareable() (not public) commit d9fdca81ac0e4e98314b385b2f245951aaccd50c Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-06 16:02:01 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-06 16:02:32 +0900 600x larger timeout for Reline I didn't notice it's msec. 2.5s is too short. http://ci.rvm.jp/results/trunk-mjit-wait@phosphorus-docker/3311385 commit 954d6c743219c11c84dd107d059001752f186a27 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-06 13:06:25 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-06 14:57:48 +0900 remove invalidated cc if cc is invalidated, cc should be released from iseq. Notes: Merged: https://github.com/ruby/ruby/pull/4030 commit 442bd0e92cb8ca8e54f8121fc33adeb6b2b53e73 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-06 13:05:30 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-06 14:57:48 +0900 show more info about imemo_callcache Notes: Merged: https://github.com/ruby/ruby/pull/4030 commit fa8295ccb91e931e7ede2c02a5820cbba9787234 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-06 11:54:17 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-06 13:52:12 +0900 [ruby/bigdecimal] Rename BDIGIT to DECDIG https://github.com/ruby/bigdecimal/commit/686487d942 commit 7da06c04b21304e8b96089c74ea9aa49ea985e65 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-06 13:39:09 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-06 13:39:09 +0900 Need to convert the return value of rb_big_cmp commit f289f8ae3ab3e76287597722c52cd8cfcfc694ad Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-06 10:25:45 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-06 10:56:48 +0900 [ruby/bigdecimal] Optimize the conversion from small Bignum https://github.com/ruby/bigdecimal/commit/4792a917d8 commit 31854403b3398e1c7fa642dca9d2dfe02b171371 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-05 08:12:39 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-06 09:25:13 +0900 [ruby/bigdecimal] Check the function availabilities separately https://github.com/ruby/bigdecimal/commit/cf839a34c8 https://github.com/ruby/bigdecimal/commit/75db4dabb9 commit a0a6293e787fb7412212cfd85b2cd1e726df8b38 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2021-01-06 08:35:46 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-01-06 08:35:56 +0900 [ruby/ostruct] Bump version commit e8945d5eb301cb08f7bf31b140626ca268a6ae65 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-06 08:35:07 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-06 08:35:07 +0900 * 2021-01-06 [ci skip] commit e13f41e02df0d29fbde659b9e426862a8d433003 Author: Adam Hess <HParker@github.com> AuthorDate: 2021-01-06 08:34:45 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-06 08:34:45 +0900 [ruby/ostruct] Allow ostruct to return a value on super (#4028) This fixes cases where you can super in something that inherits from OpenStruct Co-authored-by: John Hawthorn <john@hawthorn.email> Notes: Merged-By: marcandre <github@marc-andre.ca> commit 3108ad7bf3dcae52054a1c29b86246cdb470000b Author: Marcus Stollsteimer <sto.mar@web.de> AuthorDate: 2021-01-05 23:13:53 +0900 Commit: Marcus Stollsteimer <sto.mar@web.de> CommitDate: 2021-01-05 23:13:53 +0900 [DOC] Fix grammar: "is same as" -> "is the same as" commit 3d439447250f19333418adcdf777142dda4b3364 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-05 23:10:39 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-05 23:10:39 +0900 Fix a typo [ci skip] commit 83e62d77981adeb2968a49c3176a7a940c8ee29e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-05 16:31:43 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-05 21:26:15 +0900 [ruby/io-console] Shrink struct query_args https://github.com/ruby/io-console/commit/720be0a3e5 commit 4272395982dc442dbd38fef514116e0bad9f9303 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-05 16:29:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-05 21:26:13 +0900 [ruby/io-console] Pre-define chomp! ID https://github.com/ruby/io-console/commit/028e1c9497 commit ead8d89bd7fa11601c7d6678a2b9182b01263077 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-05 13:52:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-05 21:26:11 +0900 [ruby/io-console] Ignore chomp! result and return the modified string https://github.com/ruby/io-console/commit/09e5ccc729 commit 06454a9457e3c6fd819eb1ad6a9aa5b32eb083b1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-05 21:24:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-05 21:24:10 +0900 sync_default_gems.rb: added -a option The option to merge all commits since the commit merged in the last prefixed commit. commit 075824ebd53932898015fa264c7b8b8804c946b0 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-05 21:23:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-05 21:23:07 +0900 sync_default_gems.rb: reduced accesses to REPOSITORIES commit 903af74bbd2998cbc159c70010fdba0543509a0f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-05 17:42:05 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-05 18:07:18 +0900 [ruby/irb] Ensure to restore $VERBOSE https://github.com/ruby/irb/commit/cef474a76a commit 0123bc9d3851c79338b9df509a82b74c93371381 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-04 21:11:24 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-05 18:06:43 +0900 [ruby/irb] Use error tokens if there are no correct tokens in the same place For example, the broken code "%www" will result in only one error token. https://github.com/ruby/irb/commit/9fa39a7cf3 commit 5a1866caff1ec7d924c4101ea05e9d460b6ef3ae Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-03 03:25:47 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-05 18:06:34 +0900 [ruby/irb] Use Ripper::Lexer#scan to take broken tokens ref. https://github.com/ruby/reline/pull/242 https://github.com/ruby/irb/commit/54f90cb6c9 commit 505e01fe12007382aa2cd4b7231698597f563b42 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-02 05:20:48 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-05 18:06:26 +0900 [ruby/irb] Heredoc may contain multiple newlines in a single token Use the start token as the indentation criteria so that it works properly in heredoc. ref. https://github.com/ruby/reline/pull/242 https://github.com/ruby/irb/commit/9704808dfd commit 5012512398daed11e65113310c212d50ad51fd16 Author: aycabta <aycabta@gmail.com> AuthorDate: 2020-12-31 19:10:50 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-05 18:06:10 +0900 [ruby/irb] Handle indentations related to keyword "do" correctly This fixes ruby/irb#158. https://github.com/ruby/irb/commit/964643400b commit e72a6ed45f6ba844f15523b9f1250c22601c0011 Author: aycabta <aycabta@gmail.com> AuthorDate: 2020-12-28 10:45:17 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-05 18:05:06 +0900 [ruby/irb] Escape invalid byte sequence in Exception This fixes ruby/irb#141. https://github.com/ruby/irb/commit/0815317d42 commit cce72a24119b5c2177100865f52376ca4b32bd9d Author: aycabta <aycabta@gmail.com> AuthorDate: 2020-12-26 23:34:27 +0900 Commit: aycabta <aycabta@gmail.com> CommitDate: 2021-01-05 18:04:45 +0900 [ruby/irb] Newline in oneliner def doesn't reset indent This closes ruby/irb#132. https://github.com/ruby/irb/commit/43456dcf5e commit e91160f7579a572e198067b9c0697c91be1876e7 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-05 16:48:43 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-05 16:50:00 +0900 set RUBY_ON_BUG on runruby rule. set RUBY_ON_BUG='gdb -x $(srcdir)/.gdbinit -p' to catch SEGV on `make runruby` rule. commit b9c1b3f8d82b6f2517786b2f9e06683909af34c3 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-05 13:48:42 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-01-05 13:59:03 +0900 configure.ac: disable using __builtin_setjmp on ARM Android A patch from Tee KOBAYASHI <xtkoba+ruby@gmail.com>. [Bug #17511] commit f2d0d4cb0ace469e2ca2fd11e16261df1f2840ff Author: Burdette Lamar <BurdetteLamar@Yahoo.com> AuthorDate: 2021-01-05 13:39:13 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-05 13:39:13 +0900 RDoc: Enhanced introduction for Enumerable (#4004) * RDoc: Enhanced introduction for Enumerable * RDoc: Enhanced introduction for Enumerable * RDoc: Enhanced introduction for Enumerable Notes: Merged-By: marcandre <github@marc-andre.ca> commit 515d6b47ad9e0933c94c9dc4c1f296ef2d555934 Author: aycabta <aycabta@gmail.com> AuthorDate: 2021-01-04 19:38:22 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-05 13:14:31 +0900 [ruby/irb] Stringify when a non-object is passed to PP#text If a nested object is passed to #pp, it may be sometimes passed to the #text method as an object without being stringified. This is fixed on the Ruby main repository; https://github.com/ruby/ruby/commit/433a3be86a811de0b4adbb92e054ee3a6fc6b4d8 but it was a bug of Ripper so still needs this workaround for using irb as a gem on Ruby 3.0.0 or earlier. Co-authored-by: k0kubun <takashikkbn@gmail.com> https://github.com/ruby/irb/commit/8d13df22ee commit 451b45605161a801e8a1e3c53e02d74de82a096a Author: Marcus Stollsteimer <sto.mar@web.de> AuthorDate: 2020-12-24 01:41:16 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-05 12:59:53 +0900 [ruby/io-console] [DOC] Note that IO#getpass returns a chomped string IO#getpass uses String#chomp! on the read input line. https://github.com/ruby/io-console/commit/1e98c93bc8 commit 3adf84a0790aa2edb9e6c121e1e1e223cc7c0bbd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-05 11:30:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-05 11:53:41 +0900 Commented out the sh-specific code, in cmd.exe commit 449ef72cb97ae57e57c523d2252528f8eb7b9d3e Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2021-01-05 10:16:05 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2021-01-05 10:16:05 +0900 configure.ac: Stop auto-detection of __ANDROID_API__ when cross-compiling A patch from Tee KOBAYASHI <xtkoba+ruby@gmail.com>. [Bug #17491] commit 7a3322a0fd660d676f1918bd7c4a37676b44e1c2 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-05 06:09:01 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-05 06:09:08 +0900 Fix broken JIT of getinlinecache e7fc353f04 reverted vm_ic_hit_p's signature change made in 53babf35ef, which broke JIT compilation of getinlinecache. To make sure it doesn't happen again, I separated vm_inlined_ic_hit_p to make the intention clear. commit 87c546b5fa97e6e226cce4daf417617a1143f642 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-05 03:44:02 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-05 03:45:01 +0900 Avoid using inconsistent coding style Other `_mjit_compile_*.erb` files don't use goto. These files'd better be consistent for readability. commit e7fc353f044f9280222ca41b029b1368d2bf2fe3 Author: Koichi Sasada <ko1@atdot.net> AuthorDate: 2021-01-04 18:08:25 +0900 Commit: Koichi Sasada <ko1@atdot.net> CommitDate: 2021-01-05 02:27:58 +0900 enable constant cache on ractors constant cache `IC` is accessed by non-atomic manner and there are thread-safety issues, so Ruby 3.0 disables to use const cache on non-main ractors. This patch enables it by introducing `imemo_constcache` and allocates it by every re-fill of const cache like `imemo_callcache`. [Bug #17510] Now `IC` only has one entry `IC::entry` and it points to `iseq_inline_constant_cache_entry`, managed by T_IMEMO object. `IC` is atomic data structure so `rb_mjit_before_vm_ic_update()` and `rb_mjit_after_vm_ic_update()` is not needed. Notes: Merged: https://github.com/ruby/ruby/pull/4022 commit bf21faec1521540f2be05df400c37600b4316a0f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-05 00:55:55 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-05 01:06:33 +0900 stdlib.h is always included in include/ruby/defines.h Since commit:6537dc309962c7fefcb8d698bbebe4e4f78d0096. commit f42593c98ee2513c25a30922f0808cfa3c999ad2 Author: Gui Heurich <guilherme.heurich@protonmail.com> AuthorDate: 2021-01-05 01:06:07 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-05 01:06:07 +0900 Update compilers.h [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/4023 Merged-By: nobu <nobu@ruby-lang.org> commit 3fee9e70219fb5e6c896b302d497f8610e4abf0a Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2021-01-05 00:19:48 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2021-01-05 00:19:48 +0900 Fix indent [ci skip] Suggested by @hanachin at https://github.com/rurema/doctree/pull/2425#discussion_r551327592 commit 1fe111d7d0b88ede9735cfbfbfaef25afadbc4e2 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-05 00:02:01 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-05 00:02:01 +0900 * 2021-01-05 [ci skip] commit 433a3be86a811de0b4adbb92e054ee3a6fc6b4d8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-04 23:37:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-04 23:37:00 +0900 ripper: call #pretty_print on also `state` commit afa9d65d61857792508b1405835b07b78e24449c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-04 19:24:09 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-04 19:55:35 +0900 make-snapshot: add -extlibs option `make-snapshot` with `-extlibs` (or `-extlibs=yes`) includes extracted and patched external library sources that the extension libraries depend on. commit ec31ee25c40d19b7192212ba7596a52e60519f71 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-04 17:54:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-04 19:55:34 +0900 Updated bundled_gems commit 095972e79959966d1177275fab3cf2e6512f6dd3 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-04 17:16:40 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-04 17:24:02 +0900 Skip mjit_wait if iseq is not a target commit 758ac834a2e31888b45d88f3382de614751a0501 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-25 22:36:40 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-04 16:42:44 +0900 Daily bundled_gems update [ci skip] commit 977252421baac7a4b42a914c48bc7ae29ec934ee Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-04 14:31:18 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-04 15:54:09 +0900 ifchange: check the number of arguments commit 8da7f4abc779c6549833d718336d75aac98494b8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-04 15:50:30 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-04 15:54:09 +0900 [DOC] Update Proc.new without a block [ci skip] [Feature #10499] [Feature #15554] commit cf4a6b5e7b36a0b4f71d7abba0c0685c631f19fa Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-04 15:48:13 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-04 15:48:13 +0900 Add a missing dependency commit 4b90ea84809a1d230675bfb8e000946e8036314f Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-04 13:42:10 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-04 13:42:10 +0900 Update ext/bigdecimal/depend commit 71f0dd339b14d314d47db6c1ed9356fdb2eb4b73 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-04 12:10:09 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-04 13:29:10 +0900 [ruby/bigdecimal] Move some definitions to missing.h https://github.com/ruby/bigdecimal/commit/c2b22cc8b3 https://github.com/ruby/bigdecimal/commit/8cbca8481d https://github.com/ruby/bigdecimal/commit/f05aecf673 commit 69ed64949b0c02d4b195809fa104ff23dd100093 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-01-04 10:11:34 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-01-04 13:14:43 +0900 Track Bundler master(2.3.0.dev) branch at 55634a8af18a52df86c4275d70fa1179118bcc20 Notes: Merged: https://github.com/ruby/ruby/pull/4021 commit 5537adf719a37a30b17d39111cc03700f353aa2d Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2021-01-04 10:09:05 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-01-04 13:14:43 +0900 Track RubyGems master(3.3.0.dev) branch at 55634a8af18a52df86c4275d70fa1179118bcc20 Notes: Merged: https://github.com/ruby/ruby/pull/4021 commit 35c3a24c8cbcccff1108079360e2063fc354b4bd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-04 12:11:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-04 12:11:37 +0900 Fixed error message when % at EOF commit 68c2fc4cc0b3bbf865c381d1ff1281a3ac520cd6 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-04 12:05:37 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-04 12:05:37 +0900 * 2021-01-04 [ci skip] commit 597e06360642189d332fadf25b2b6ba9b1df6387 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-04 12:01:04 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-04 12:01:04 +0900 Revert "Include RUBY_EXTCONF_H if available" It is unnecessary because RUBY_EXTCONF_H has already been included in ruby/internal/config.h. This reverts commit 0644f466b0ef017202712882b557ba32863002c4. commit f4be7a510eebbe6507ba41d138d7d252f4a68e90 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-03 23:52:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-03 23:56:04 +0900 Added tests for Time#getlocal with UTC offset commit 0644f466b0ef017202712882b557ba32863002c4 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-03 23:37:47 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-03 23:38:21 +0900 Include RUBY_EXTCONF_H if available commit bc4c862a763749a831dfe4e874229aae681ae0fd Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-02 19:07:47 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-03 20:19:30 +0900 [ruby/timeout] Removed deprecated names that had been warned for 5 years https://github.com/ruby/timeout/commit/f9a9758a41 commit 4724bf856f30e8cc56795c0dc23b96e7ae68e874 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-03 17:05:00 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-03 17:05:38 +0900 Avoid hanging on --jit-wait after MJIT.pause When a worker is stopped, nobody will JIT a method for you. commit 09ec8d686654462e55b2c60e2860754d1fa3435f Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-03 11:56:16 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-03 11:56:16 +0900 * 2021-01-03 [ci skip] commit a495cb2fd55688699e80078efa01c79313ae32e9 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2020-12-23 09:22:50 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-01-03 11:55:03 +0900 NEWS-3.0.0: backquote a few code related words. [doc] commit fdf353996783b8b11df099fa72de44b025e3614b Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2020-12-23 04:27:38 +0900 Commit: Marc-Andre Lafortune <github@marc-andre.ca> CommitDate: 2021-01-03 11:54:00 +0900 NEWS: We have links now, and there is no changelog anymore [doc] commit 68ea7720b367fe84da601cdbc61cb0d651c3221b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-02 16:42:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-02 17:27:24 +0900 NEWS: [Feature #17312] [ci skip] Notes: Merged: https://github.com/ruby/ruby/pull/3851 commit b8d33df1d9799cd04b92c1c28e42cc3028cc7524 Author: zverok <zverok.offline@gmail.com> AuthorDate: 2020-12-05 20:39:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-02 17:27:24 +0900 Add Enumerable#compact and Enumerator::Lazy#compact Notes: Merged: https://github.com/ruby/ruby/pull/3851 commit f690eb34e28b000627e5f0649dd81a04e252286f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-02 12:11:52 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-02 12:11:52 +0900 Fixed dangling imemo_tmpbuf The count of rb_alloc_tmp_buffer_with_count is the allocation size counted in VALUE size but not in the requested element size. Co-authored-by: Yusuke Endoh <mame@ruby-lang.org> Co-authored-by: Koichi Sasada <ko1@atdot.net> commit 4b6fd8329b46701414aba2eeca10013cf66ec513 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-02 11:16:45 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-02 12:11:02 +0900 mkmf.rb: always try_compile as try_header Get rid of "present but cannot be compiled" headers, on some multi-architecture platforms. commit a6bbba1135ffc6f97bbffbfbc98f80dc9d4a8a50 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-02 12:06:14 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-02 12:06:14 +0900 Avoid to use __builtin_ctzll in SPARC Solaris commit 4182035e273ecd042f5f071cfd6626920e1d28ed Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2021-01-02 11:41:20 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2021-01-02 11:41:22 +0900 Add -v to make benchmark I simply can't tell which of compare-ruby and built-ruby is what. commit daec5f9edcfbf98b10a4bfc1aa501c9ac2c64841 Author: S.H <gamelinks007@gmail.com> AuthorDate: 2021-01-02 11:39:07 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-02 11:39:07 +0900 Improve performance some Float methods [Feature #17498] (#4018) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit ef6ab776d55f2775957b107a3a0d8c45ece119b8 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-02 10:18:58 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-02 10:18:58 +0900 Add __x86_64__ guard to include x86intrin.h commit 5aa28d9d6d8d070a4f29905f3a2c76b0f000ed44 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-02 09:48:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-02 09:48:42 +0900 Check if x86intrin.h is available not only existing commit 830afd94fe11335cc7569d47ec863ec24c9a1b54 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-02 01:03:32 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-02 01:03:32 +0900 [ruby/bigdecimal] Update depend commit c2c0147538f72e37a6c718456751bc5776bebd93 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-01 16:00:23 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-02 00:54:09 +0900 [ruby/bigdecimal] Fix test for Ruby 2.4 Ruby 2.4 does not have RbConfig::LIMITS. https://github.com/ruby/bigdecimal/commit/c8087523b0 commit 448a67cd812d0be0a7f1cc871daa598c3b846143 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-01 04:13:12 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-02 00:54:09 +0900 [ruby/bigdecimal] Implement special conversions for 64-bit integers This change improves the conversion speed from small integers. ``` Comparison: big_n9 master: 4003688.9 i/s bigdecimal 3.0.0: 1270551.0 i/s - 3.15x slower big_n19 master: 5410096.4 i/s bigdecimal 3.0.0: 1000250.3 i/s - 5.41x slower ``` https://github.com/ruby/bigdecimal/commit/3429bd7e6f commit 4730efdd80f40119f8a397fe1b4b7ba88a0ce3d3 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-02 00:46:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-02 00:46:41 +0900 * 2021-01-02 [ci skip] commit 5ee6830abe7d99cd95c9c7a6f252a3692b57c5bc Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2021-01-02 00:27:46 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2021-01-02 00:30:57 +0900 [ruby/bigdecimal] Fix test_limit Keep the default value of BigDecimal.limit by BigDecimal.save_limit to avoid failures of the other test methods due to the unexpected limit. https://github.com/ruby/bigdecimal/commit/bdc1cc6585 commit 715624813794db603f679cf995844f6a7b7010fa Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-01 23:32:07 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-01 23:32:07 +0900 Hoisted out compile_builtin_arg to refine messages commit ab32e98f984318f1074c6e39b8f2f04266a1224b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-01 14:44:19 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-01 14:48:46 +0900 Added AST assertions for method definition arguments [Bug #17495] commit 1e51027763ab2b96e9a1a0aecbe7d42e62d00fc6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-01 14:41:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-01 14:45:00 +0900 Added AST tests for endless method definitions commit de5f8a92d5001799bedb3b1a271a2d9b23c6c8fb Author: Masataka Pocke Kuwabara <kuwabara@pocke.me> AuthorDate: 2021-01-01 14:25:08 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2021-01-01 14:25:08 +0900 Make args info for RubyVM::AST to available on endless method without parens Problem === Arguments information is missing for endless method without parens. For example: ```ruby # ok pp RubyVM::AbstractSyntaxTree.parse(<<~RUBY).children[2] def x() = 42 RUBY # => (DEFN@1:0-1:12 # mid: :x # body: # (SCOPE@1:0-1:12 # tbl: [] # args: # (ARGS@1:5-1:6 # pre_num: 0 # pre_init: nil # opt: nil # first_post: nil # post_num: 0 # post_init: nil # rest: nil # kw: nil # kwrest: nil # block: nil) # body: (LIT@1:10-1:12 42))) # ok pp RubyVM::AbstractSyntaxTree.parse(<<~RUBY).children[2] def x() 42 end RUBY # => (DEFN@1:0-1:14 # mid: :x # body: # (SCOPE@1:0-1:14 # tbl: [] # args: # (ARGS@1:5-1:6 # pre_num: 0 # pre_init: nil # opt: nil # first_post: nil # post_num: 0 # post_init: nil # rest: nil # kw: nil # kwrest: nil # block: nil) # body: (LIT@1:8-1:10 42))) # It has a problem, the `args` is nil pp RubyVM::AbstractSyntaxTree.parse(<<~RUBY).children[2] def x = 42 RUBY # => (DEFN@1:0-1:10 # mid: :x # body: (SCOPE@1:0-1:10 tbl: [] args: nil body: (LIT@1:8-1:10 42))) ``` It causes an error if a program expects `args` node exists. For example: https://github.com/ruby/rbs/issues/551 Solution ==== Call `new_args` on this case. Notes: Merged: https://github.com/ruby/ruby/pull/4016 Merged-By: nobu <nobu@ruby-lang.org> commit 3d7f71801acbe90e6b484fa944b7c93fd46cc2cf Author: David Rodríguez <deivid.rodriguez@riseup.net> AuthorDate: 2021-01-01 01:40:48 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2021-01-01 07:55:59 +0900 Remove unused file Notes: Merged: https://github.com/ruby/ruby/pull/4017 commit 48cf548beb8d641d7dd2cb05f8470526eff7661e Author: git <svn-admin@ruby-lang.org> AuthorDate: 2021-01-01 00:58:41 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2021-01-01 00:58:41 +0900 * 2021-01-01 [ci skip] commit 37e2a67a744f8cee8116663ebaac5b6acca2bd36 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2021-01-01 00:51:12 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2021-01-01 00:54:38 +0900 Method ID of call and fcall can be const not only ident commit 18ea81fd2c56e78df72aec54fcfb4de74adc17b3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-30 01:56:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-31 17:25:07 +0900 get_tmopt is no longer used commit 77e7082e824af8523c1e7c3bfc111c2e52e7e3b3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-30 01:55:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-31 17:25:07 +0900 Moved Time.at to builtin commit 9101597d05ef645949bab3a210d8fa5e61de26e3 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-30 01:54:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-31 17:25:07 +0900 Moved Time.now to builtin commit 93735f8fc0597b9f52e631739f68965ff8a4a81c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-31 17:23:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-31 17:23:37 +0900 Moved time.rb to timev.rb commit d5fb51d2d3a7ba0e16042282d0f94c5336ed2cc1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-30 01:45:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-31 15:19:06 +0900 Add time.rb as builtin commit 0fbf4d0374e2cef84761985b043c2255e03f2ff2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-30 01:22:11 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-31 15:11:38 +0900 Access to reserved word parameter like as `__builtin.arg!(:if)` Notes: Merged: https://github.com/ruby/ruby/pull/4015 commit 62450e0acf844510808f18d219aaf7da936b5b58 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-31 12:30:13 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-31 12:30:13 +0900 Fixed missing NORETURN on rb_mod_const_missing commit 4b4dc0fac7a8145396fe1c1693edbbcbf5ab2c2b Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-31 12:23:29 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-31 12:23:29 +0900 Defined RBIMPL_ATTR_DEPRECATED_INTERNAL Get rid of duplicate attributes, which may be warned or ignored except for the first. commit 20a8425aa0f9a947e72b06cbd3a2afe9674dd18f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-31 08:39:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-31 12:11:45 +0900 Make any hash values fixable [Bug #17488] As hnum is an unsigned st_index_t, the result of RSHIFT may not be in the fixable range. Co-authored-by: NeoCat <neocat@neocat.jp> commit b2030d4dae3142e3fe6ad79ac1202de5a9f34a5a Author: git <svn-admin@ruby-lang.org> AuthorDate: 2020-12-31 02:19:55 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2020-12-31 02:19:55 +0900 * 2020-12-31 [ci skip] commit a8014dae47cc777ce5e509c9401b67cacb6631ae Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-31 02:01:35 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-31 02:05:02 +0900 [ruby/bigdecimal] Refactor object allocation https://github.com/ruby/bigdecimal/commit/271cebe567 commit 4569e46550d4ceea2ee4d5c683dd27872a758b36 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-31 01:43:08 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-31 02:04:53 +0900 [ruby/bigdecimal] Remove ToValue https://github.com/ruby/bigdecimal/commit/97e9feeebd commit 0284e7ca62e55c160c84d3471e64765e612788ec Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-30 20:56:10 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-30 23:11:09 +0900 Replaced deprecation macros * DECLARE_DEPRECATED_FEATURE with RBIMPL_ATTR_DEPRECATED_SINCE * DECLARE_DEPRECATED_INTERNAL_FEATURE with RBIMPL_ATTR_INTERNAL And moved function declarations outside both. commit ac2df89113d6ead77032aaa21cf2b0253c8975db Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2020-12-30 16:01:10 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2020-12-30 16:01:11 +0900 Stop managing valid class serials `mjit_valid_class_serial_p` has no longer been used since b9007b6c548. commit 11b8bb99e6722253974c73d96ed653f97495e1c5 Author: Eric Schneider <54514192+eric-unc@users.noreply.github.com> AuthorDate: 2020-12-30 13:37:04 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2020-12-30 15:25:00 +0900 Minor grammar fix in String#chomp documentation Notes: Merged: https://github.com/ruby/ruby/pull/4013 commit 15c129d08790878444f3ecbdef0f8fe15eed06f4 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2020-12-30 15:02:46 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2020-12-30 15:02:48 +0900 Try increasing SMTP's read_timeout for --jit-wait for random hangs like: http://ci.rvm.jp/results/trunk-mjit-wait@phosphorus-docker/3302796 http://ci.rvm.jp/results/trunk-mjit-wait@phosphorus-docker/3302188 http://ci.rvm.jp/results/trunk-mjit-wait@phosphorus-docker/3301293 commit 8e231ffa8c4fde25998f827cb965c4fd7d55c53d Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2020-12-30 13:06:49 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2020-12-30 13:06:53 +0900 Increase timeout for reline with --jit-wait for failures like: http://ci.rvm.jp/logfiles/brlog.trunk-mjit-wait.20201229-130509 http://ci.rvm.jp/logfiles/brlog.trunk-mjit-wait.20201229-165132 http://ci.rvm.jp/logfiles/brlog.trunk-mjit-wait.20201228-015519 commit c550b75ce4c3e10dbdcefc7f5b09dc8959407ca0 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2020-12-30 00:46:15 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2020-12-30 00:46:15 +0900 * 2020-12-30 [ci skip] commit 8d93c1e70fb0923c53f2342852f4489b21bd80d3 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-30 00:19:10 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-30 00:22:21 +0900 [ruby/bigdecimal] Remove VP_EXCEPTION_MEMORY It is no longer used due to the previous commit. https://github.com/ruby/bigdecimal/commit/7d463f802b commit 086f3f187224fa59e294947ed4e840bc277aadc5 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-29 22:36:51 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-30 00:22:11 +0900 [ruby/bigdecimal] Remove needless pointer checks xmalloc and xrealloc return non-NULL pointers or raise memory error. https://github.com/ruby/bigdecimal/commit/507f0a6a64 commit f6256d8b7eb97557dac3cb7a99bcde9e81b972d1 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-29 21:05:37 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-29 21:12:08 +0900 bisect.sh: Apply bisect.patch if exists [ci skip] For some external reasons, e.g. Bison 3.5.91, some commits need to be applied retroactively in order to pass builds. commit b7163c712c376fd8dc01a5e3bdd44f02ae578001 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-29 21:00:02 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-29 21:00:16 +0900 Canonicalization functions were removed already At b958e2add835d62c0a62edaf9a23ecbbd70a3635 commit 208192fdb6aa8ea7fb5a70cc2ed517cb11d346b9 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-29 17:49:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-29 17:50:14 +0900 Fixed wrong configure option commit 47a1f5ff738c5f14f4ffd7def3536b61ce1f9ff0 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-29 17:14:36 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-29 17:46:37 +0900 [ruby/bigdecimal] Define bool, true, and false for old Ruby https://github.com/ruby/bigdecimal/commit/a6d3bd2d44 commit 29d012c9641fa53464a03cc682b6a0f5bf7888df Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-29 16:35:25 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-29 17:46:36 +0900 [ruby/bigdecimal] Alloc wrapper object before VpAlloc Calling TypedData_Wrap_Struct after VpAlloc may cause memory leak. This commit reverts d11b78f9c420f39ee800b9feed4839cd28f4ff5c. https://github.com/ruby/bigdecimal/commit/2c5a288caf commit 13b520d578d7e4cbfb904199574fa081458a64f8 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-29 16:34:23 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-29 17:46:36 +0900 [ruby/bigdecimal] Refactor to extract VpCheckException https://github.com/ruby/bigdecimal/commit/6fd171308b commit 2f42243bceb60043ca06448a2b419724be0e6d0a Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-29 16:51:50 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-29 17:45:19 +0900 Make more silent when -s on GNU make Notes: Merged: https://github.com/ruby/ruby/pull/4011 commit d57c5a7b61c256f3216e82fe1ca6b5b6b9e50752 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-29 16:42:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-29 17:45:19 +0900 transcode-tblgen.rb: make silent a little when just -v Notes: Merged: https://github.com/ruby/ruby/pull/4011 commit 365df8d351d3edee3cc383f008d87212079598c7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-29 15:57:42 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-29 17:45:19 +0900 transcode-tblgen.rb: send verbose messages to STDOUT Notes: Merged: https://github.com/ruby/ruby/pull/4011 commit 6d07785127d5e26340eb24eec8542470bd5fe883 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2020-12-29 16:25:01 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2020-12-29 16:29:29 +0900 [ruby/irb] Remove unnecessary ignore_error in dispatch_seq Just forgotten in https://github.com/ruby/irb/commit/a5804c3560bb1de3ea8e40002635bff87f6a2825 https://github.com/ruby/irb/commit/e42e548793 commit f30a3a06290387dd19c08b48cc7c31a18b359693 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2020-12-29 16:20:26 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2020-12-29 16:29:08 +0900 [ruby/irb] Do not colorize partially-correct inspect This is to prevent a yellow-mixed output for ActiveSupport::TimeWithZone. Follows up https://github.com/ruby/irb/pull/159 and https://github.com/ruby/ruby/pull/3967. https://github.com/ruby/irb/commit/a5804c3560bb1de3ea8e40002635bff87f6a2825 commit 9b7ceb676540d0061b2a31fee2da84ae31f93bae Author: Nobuhiro IMAI <nov@yo.rim.or.jp> AuthorDate: 2020-12-29 16:07:20 +0900 Commit: GitHub <noreply@github.com> CommitDate: 2020-12-29 16:07:20 +0900 irb: add more syntax errors colorizing support (#3967) Notes: Merged-By: k0kubun <takashikkbn@gmail.com> commit c0a2d322c692228a7574c39c7e173da4af0f34ea Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2020-12-29 16:03:04 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2020-12-29 16:03:04 +0900 Update help of sync-default-gems commit af9d4ee133af6d1844abc520276b8bc3e4861576 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2020-12-29 15:40:20 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2020-12-29 16:01:01 +0900 [ruby/irb] Fix failing tests https://github.com/ruby/irb/commit/7723ade899 commit f9e80af28a6ddc59a63fe567198e9d7a3b5b80f8 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2020-12-29 15:32:30 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2020-12-29 16:01:01 +0900 [ruby/irb] Add color_printer.rb to gemspec https://github.com/ruby/irb/commit/b4df0fd8b2 commit c715fb46c2d8eab48323a6008c5dbca550ebe2e0 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2020-12-29 15:16:08 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2020-12-29 16:01:00 +0900 [ruby/irb] Enhance colored inspect output https://github.com/ruby/irb/commit/dffcdb5269 commit 1ffb267c5c782ea15d01beb90d031274ca88cd8e Author: Masaki Matsushita <glass.saga@gmail.com> AuthorDate: 2020-12-29 15:40:08 +0900 Commit: Masaki Matsushita <glass.saga@gmail.com> CommitDate: 2020-12-29 15:52:42 +0900 Fix compile error of sockssocket The patch is provided by PhobosK (Phobos Kappa). This should be backported to Ruby 3.0. [Feature #17187] commit f8555cad2d96c80fe7fc10012456e718cb81dbab Author: git <svn-admin@ruby-lang.org> AuthorDate: 2020-12-29 13:09:21 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2020-12-29 13:09:21 +0900 * 2020-12-29 [ci skip] commit 512e08895f3a79e770cde6bae56c8f5ec11f1f17 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-29 03:36:31 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-29 12:56:10 +0900 [ruby/bigdecimal] Refactor to decompose VpNewVarArg into small functions https://github.com/ruby/bigdecimal/commit/7504871c48 commit d11b78f9c420f39ee800b9feed4839cd28f4ff5c Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-28 22:44:50 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-29 12:54:39 +0900 [ruby/bigdecimal] Reduce needless object allocation in f_BigDecimal https://github.com/ruby/bigdecimal/commit/5c808eeabb commit 06b44f819eb7b5ede1ff69cecb25682b56a1d60c Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-28 21:25:20 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-28 21:26:26 +0900 [ruby/bigdecimal] [Doc] Fix the document of BigDecimal() [ci-skip] https://github.com/ruby/bigdecimal/commit/905d0345ec commit 80d9e457c585038bd4ab2d661b074c7d67955649 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-28 20:26:28 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-28 21:16:48 +0900 [ruby/bigdecimal] Reduce conditional branch count in VpNewVarArg https://github.com/ruby/bigdecimal/commit/741fb3e00f commit 09aca50fc4be0b8bffe89b3583aedfe9c5c3a732 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-28 19:52:14 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-28 19:52:14 +0900 Adjusted styles [ci skip] commit 2eea9156eb02b0a0e857b10d41b9cead91be694f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-28 19:43:46 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-28 19:43:55 +0900 Adjusted indents [ci skip] commit a0d1152d2ed5d48d2702acaa711c184181f7e0c4 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-28 18:39:35 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2020-12-28 18:41:02 +0900 [ruby/drb] Removed needless files from Gem::Specification#files https://github.com/ruby/drb/commit/61c49af71b commit e6fee2b64f9e85cfec00ee5d2ed6f8a8ddd11544 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-28 16:18:42 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2020-12-28 16:20:37 +0900 [ruby/pp] Removed needless files from Gem::Specification#files https://github.com/ruby/pp/commit/272d4befeb commit 8b387bcfba84ee5ca57e7786d21ff927d4ee8e90 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-28 13:43:44 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2020-12-28 16:19:42 +0900 [ruby/pp] Drop to support < Ruby 2.7 https://github.com/ruby/pp/commit/e92228964b commit 2556cd3f51112221b991503751b84852a9ffeac6 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-24 10:27:59 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-28 12:44:03 +0900 Bypass check for warning_category on internal calls Notes: Merged: https://github.com/ruby/ruby/pull/4009 commit 64d79d333baf49f1adab9f9015ee02603ed89210 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-28 12:12:54 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-28 12:12:54 +0900 Suppress too big exponent warnings commit 228ad7d84b0f097a1465541fd175887c5ec0db40 Author: Marcus Stollsteimer <sto.mar@web.de> AuthorDate: 2020-12-28 06:39:42 +0900 Commit: Marcus Stollsteimer <sto.mar@web.de> CommitDate: 2020-12-28 06:39:42 +0900 doc/ractor.md: Fix indentation Reintroduce removed empty line to fix indentation on rendered page (the first line is _not_ indented despite the leading spaces, and ends up "outdented" compared to the rest of the block). Also add a missing "-". commit cf1f9bdc8df2f4961e84b96b0534c12f02f2a507 Author: Marc-Andre Lafortune <github@marc-andre.ca> AuthorDate: 2020-12-24 18:00:23 +0900 Commit: Marc-André Lafortune <github@marc-andre.ca> CommitDate: 2020-12-28 06:09:06 +0900 Language tweaks to Fiber [doc] Notes: Merged: https://github.com/ruby/ruby/pull/3995 commit c8010fcec016ee89aa0c45fe31094b2db0023e5c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-28 01:38:17 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-28 01:52:18 +0900 Dup kwrest hash when merging other keyword arguments [Bug #17481] commit cc055d4d3fc4a3999766b17a2c9f7cd968be1118 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2020-12-28 01:39:14 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2020-12-28 01:39:14 +0900 * 2020-12-28 [ci skip] commit 727c97da1977544c91b9b3677811da3a44af7d53 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2020-12-28 01:35:32 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2020-12-28 01:35:32 +0900 Update to ruby/spec@4ce9f41 commit 267bed0cd91711e2a8c79219e97431ba22137b01 Author: Benoit Daloze <eregontp@gmail.com> AuthorDate: 2020-12-28 01:35:30 +0900 Commit: Benoit Daloze <eregontp@gmail.com> CommitDate: 2020-12-28 01:35:30 +0900 Update to ruby/mspec@a40a674 commit a042043487eb4c7d39307b8e784ede1856455c3e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-27 20:33:20 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 23:33:56 +0900 Do not include external library sources into packages commit f6a080047e960e8b1821a97850830286ce9dee1c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-27 20:50:15 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 20:50:15 +0900 Limit bactrace length from Exception#full_message commit 730b0099fd7b32bf1a79d2a233c327425680a145 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-27 19:35:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 19:35:27 +0900 Get rid of inconsistent dll linkages against vcpkg readline commit 0a2e4a8f0cfd0c303717ede51a2a848ce19cf3a8 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-27 18:29:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 19:19:31 +0900 Removed declarations conflicting on MinGW commit ecfbd97292fcdf052049a60cae4408750ed27c93 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-27 16:38:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 16:50:10 +0900 win32: Removed never used/worked functions Almost certainly, these have never been used in external extension libraries. If any had, these would have had to be declared in headers. commit 90dd482061ab014a6137c2df2239cc6106974dbb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-27 16:32:08 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 16:49:27 +0900 win32: Declared wait and fixed the return type commit 260d626ef69336530b636e2b14b75479f869e8dc Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-27 14:58:00 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 15:50:44 +0900 Ignore symbols declared in the platform header commit 366b58d7ca19914d533a0bef51e51995e7876da7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-27 14:05:24 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 15:50:44 +0900 Ignore objects from the "missing" directory commit 0957814c2776a78e509ceb0aa3fe958d3dc65b2f Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-26 21:47:57 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 15:50:43 +0900 Get rid of \K for old BASERUBYs which have a bug in String#scan commit d55d0331c703f883c4b6fd76b5a14508cc398338 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-26 21:46:27 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 15:50:02 +0900 Exclude entry points commit 46ab4fcf2a71cf68565dc587db6fb1497e75e854 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-26 00:53:51 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 15:50:02 +0900 Support AC_FUNC_MEMCMP commit b73d256f34dc46ae2b1e682c060330541463b905 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-25 23:44:01 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-27 15:50:02 +0900 Check leaked global symbols under more various conditions commit 441cd156e0e6fc5161440c782901861fbc43af80 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-27 13:47:42 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-27 15:27:46 +0900 [ruby/csv] Fix typo [ci skip] https://github.com/ruby/csv/commit/117bcf311e commit 677ccb927c10444449459added79c8e7d2fc3186 Author: Sampat Badhe <sampat.badhe@kiprosh.com> AuthorDate: 2020-12-26 06:17:32 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-27 15:27:03 +0900 [ruby/csv] fix typo conveters => converters for CSV parsing docs (#196) https://github.com/ruby/csv/commit/77ccf486fe commit cd2c726bc072127394fd50fb25076fc8f3cfe632 Author: Sutou Kouhei <kou@clear-code.com> AuthorDate: 2020-11-23 05:57:32 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-27 15:26:24 +0900 [ruby/csv] Bump version https://github.com/ruby/csv/commit/5855c017ef commit 7459fcb3ebc225ff8ba871f944a8ed781d736753 Author: git <svn-admin@ruby-lang.org> AuthorDate: 2020-12-27 07:02:53 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2020-12-27 07:02:53 +0900 * 2020-12-27 [ci skip] commit ab6adf27725c93b4eb346d6bed5b1e6f511a8a69 Author: Marcus Stollsteimer <sto.mar@web.de> AuthorDate: 2020-12-27 06:51:48 +0900 Commit: Marcus Stollsteimer <sto.mar@web.de> CommitDate: 2020-12-27 06:51:48 +0900 doc/ractor.md: Fix indentation in code blocks Remove unnecessary indentation of code in code blocks (it is also not rendered properly in the generated HTML). Also remove an empty line. commit 0a867315e8dbdfb1e5d57ced42150b34843a1ea5 Author: Marcus Stollsteimer <sto.mar@web.de> AuthorDate: 2020-12-27 06:50:55 +0900 Commit: Marcus Stollsteimer <sto.mar@web.de> CommitDate: 2020-12-27 06:50:55 +0900 [DOC] Fix typos in vm_method.c commit 114840b0fe5d27a7138ee35df1ea11ca19cc1df3 Author: Marcus Stollsteimer <sto.mar@web.de> AuthorDate: 2020-12-27 06:49:23 +0900 Commit: Marcus Stollsteimer <sto.mar@web.de> CommitDate: 2020-12-27 06:49:23 +0900 [DOC] Fix typo in proc.c commit 3fc53de5c961cc8fa2b6acbd63874b89fe709520 Author: Marcus Stollsteimer <sto.mar@web.de> AuthorDate: 2020-12-26 18:40:52 +0900 Commit: Marcus Stollsteimer <sto.mar@web.de> CommitDate: 2020-12-26 18:40:52 +0900 methods.rdoc: Improve method definition documentation * typos, grammar, formatting * use `concrete_method` again in `regular_method` example, to better distinguish from `forwarding_method` example * clarify that leading arguments before `...` require Ruby 3.0 commit ce65a7687f1e05ce613483102a8131d8e827bcb6 Author: Marcus Stollsteimer <sto.mar@web.de> AuthorDate: 2020-12-26 18:40:47 +0900 Commit: Marcus Stollsteimer <sto.mar@web.de> CommitDate: 2020-12-26 18:40:47 +0900 methods.rdoc: Clarify "currently" means "in 2.7" here commit 858f9aa430700efa0fbfc08da246d824c9b9dff4 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2020-12-26 18:28:50 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2020-12-26 18:31:50 +0900 Update labels of badges [ci skip] commit 3a0a08697a4bec0716130b8e9d97118b33ba4d37 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-26 16:37:39 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-26 17:09:25 +0900 Add 3.0 to spec guards * Needs WEBrick commit bb04856bca76c2db923b0118716dc6f12afbe491 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-26 14:27:14 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2020-12-26 15:10:49 +0900 [ruby/racc] Bump version to 1.5.2 https://github.com/ruby/racc/commit/ce0d7b9cde commit 533bf6f19df7ea6bbfb9909f58afe2088a7914d5 Author: Hiroshi SHIBATA <hsbt@ruby-lang.org> AuthorDate: 2020-12-26 14:26:38 +0900 Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org> CommitDate: 2020-12-26 15:10:28 +0900 [ruby/racc] Use Racc::VERSION for gemspec https://github.com/ruby/racc/commit/30f5760d85 commit 15e192070afd6c2335c119ef3164f3f002c49b89 Author: Takashi Kokubun <takashikkbn@gmail.com> AuthorDate: 2020-12-26 12:17:16 +0900 Commit: Takashi Kokubun <takashikkbn@gmail.com> CommitDate: 2020-12-26 12:17:16 +0900 Fix a cyclic explanation commit dc13bd22bbdbde39332d30930f688205e6a2b4eb Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-15 23:17:23 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-26 09:45:06 +0900 Ignore failure on unsupported fcntl to drop non-blocking mode Fixes https://github.com/ruby/ruby/pull/3723 Notes: Merged: https://github.com/ruby/ruby/pull/4000 commit 292230cbf926e9892596ea37fd4567f0c49ab73c Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-25 23:36:25 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-26 09:39:53 +0900 Fixed leaked global symbols Notes: Merged: https://github.com/ruby/ruby/pull/4003 commit 73cd4951de20bf989747013b1e62a202f12ac2d2 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-25 23:08:34 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-26 09:39:53 +0900 Reduced GitHub Actions Moved leaked-globals before check. Notes: Merged: https://github.com/ruby/ruby/pull/4003 commit d4ba88bcd800f19a0e5c4b443b8b2424283e34bb Author: git <svn-admin@ruby-lang.org> AuthorDate: 2020-12-26 01:41:13 +0900 Commit: git <svn-admin@ruby-lang.org> CommitDate: 2020-12-26 01:41:13 +0900 * 2020-12-26 [ci skip] commit 6083fed366f4b4bc180e61bfe7efec7a70393911 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-11-25 21:35:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-26 01:40:51 +0900 Use `size_t` for `RSTRING_LEN` in String#count https://hackerone.com/reports/1042722 Notes: Merged: https://github.com/ruby/ruby/pull/4001 commit 92f9f998fb65c70941ea05ed33a7b9f351f308f7 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-25 22:23:53 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-25 22:23:53 +0900 test/test_trick.rb: fixed the position to add timeout commit 255ee4de8ce8f1db044c04843bef25c78e2c28ac Author: zverok <zverok.offline@gmail.com> AuthorDate: 2020-12-24 18:06:26 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-25 22:10:09 +0900 Update method definition documentation * Add endless methods * Add argument forwarding ... Notes: Merged: https://github.com/ruby/ruby/pull/3997 commit aaf0474e76ecf8d8fc675c3e56a803d887e63965 Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-25 22:05:21 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-25 22:09:22 +0900 Adjusted the heading level of "Block Arguments" [ci skip] commit a01d28fed7de2682d23606346ffededf19eb42c9 Author: Yusuke Endoh <mame@ruby-lang.org> AuthorDate: 2020-12-25 21:58:50 +0900 Commit: Yusuke Endoh <mame@ruby-lang.org> CommitDate: 2020-12-25 21:58:50 +0900 test/test_trick.rb: increase timeout of some tests http://rubyci.s3.amazonaws.com/raspbian10-armv7l/ruby-master/log/20201225T071824Z.fail.html.gz commit 7a4b8d8700ebbe8cefcce05311338448ee0fb5b5 Author: Kenta Murata <mrkn@mrkn.jp> AuthorDate: 2020-12-25 01:47:09 +0900 Commit: Kenta Murata <mrkn@mrkn.jp> CommitDate: 2020-12-25 20:11:01 +0900 [memory_view] Fix a comment A consumer of a MemoryView no longer guards the original object. [ci skip] commit ddacff2b4140006d69ecf6d1ac63ddb791e92e5e Author: Nobuyoshi Nakada <nobu@ruby-lang.org> AuthorDate: 2020-12-25 17:40:56 +0900 Commit: Nobuyoshi Nakada <nobu@ruby-lang.org> CommitDate: 2020-12-25 17:43:23 +0900 Follow up on variations of the development start messages [ci skip] commit 7e3d710a22049b8d5c8ced71a136b8807b2e99e7 Author: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> AuthorDate: 2020-12-25 17:31:48 +0900 Commit: Kazuhiro NISHIYAMA <zn@mbf.nifty.com> CommitDate: 2020-12-25 17:31:48 +0900 Copy NEWS.md to doc/NEWS-3.0.0.md and update for 3.1.0 commit c591ab11ce3b74a364c4c4b2003626033daf0757 Author: Yukihiro "Matz" Matsumoto <matz@ruby.or.jp> AuthorDate: 2020-12-25 17:09:16 +0900 Commit: Yukihiro "Matz" Matsumoto <matz@ruby.or.jp> CommitDate: 2020-12-25 17:09:16 +0900 Development of 3.1.0 started.
Generated by dwww version 1.15 on Thu May 23 02:11:07 CEST 2024.