summaryrefslogtreecommitdiff
path: root/NEWS.md
AgeCommit message (Collapse)Author
2022-11-30Mention Exception#detailed_message in NEWS.mdYusuke Endoh
2022-11-30Mention Regexp.timeout= in NEWS.mdYusuke Endoh
2022-11-29Update default gems list at 4f8c6711ddb09bb9d0dcbf784e2cde [ci skip]git
2022-11-28Update default gems list at d13de3a62eddb3a706597f7be975e3 [ci skip]git
2022-11-28Update default gems list at 476700c06f8e54025387f793e17e05 [ci skip]git
2022-11-28NEWS.md: sort [ci skip]Kazuhiro NISHIYAMA
2022-11-28Update default gems list at b335d899fff3cc22b022c9ee2ceb63 [ci skip]git
2022-11-28Update default gems list at 98074a57ca9f3169fe9da9af6c49b6 [ci skip]git
2022-11-28Update bundled gems list at 2022-11-28git
2022-11-27Update default gems list at 6fdc677186b646f8f011411f827c2f [ci skip]git
2022-11-26Update bundled gems list at 3853385377525258881d35850a4247 [ci skip]git
2022-11-26Update default gems list at 534bac04e71efcbb9f4dc877f490b9 [ci skip]git
2022-11-25Revert "Update default gems list at 574896a0ce99ab00676aa5ff2fabd3 [ci skip]"Takashi Kokubun
This reverts commit eb3a6ae524b029e96738f21931d95dfad1caed2f.
2022-11-26Update default gems list at 574896a0ce99ab00676aa5ff2fabd3 [ci skip]git
2022-11-26Revert "Update default gems list at d0bb24c497ceae01cc7b7698365982 [ci skip]"Nobuyoshi Nakada
This reverts commit ba26dd7ba557f1a8d58251bb8437d579e0d5d23a, which duplicates the list.
2022-11-26Update default gems list at d0bb24c497ceae01cc7b7698365982 [ci skip]git
2022-11-26[DOC] Fix loose and tight listsNobuyoshi Nakada
The MarkDown parser of RDoc does not allow mixing loose and tight lists, and the results may be very unexpected otherwise.
2022-11-26[DOC] Fix indents of nested bullet listsNobuyoshi Nakada
2022-11-25MJIT: Change default --mjit-max-cache back to 100Takashi Kokubun
These days we benchmark MJIT using yjit-bench. The warmup duration in yjit-bench is very short, so compiling many methods comes at a cost even while it's actually optimal for MJIT to compile everything / tens of thousands of methods once it reaches the peak performance. yjit-bench doesn't necessarily represent the peak performance on production. It measures the performance of Ruby 30~60s after boot. If your JIT takes more than 1 minute to warm up, there's no way for the JIT to make the numbers good on yjit-bench. Until we make MJIT's compilation much faster, we don't afford compiling 10,000 methods on yjit-bench. This change alone makes MJIT's benchmark number on railsbench 2x better :p
2022-11-25NEWS: "Find pattern" is not related to find.rb [ci skip]Nobuyoshi Nakada
2022-11-25[Feature #18925] [DOC] Add `FileUtils.ln_sr` to NEWSNobuyoshi Nakada
2022-11-25[DOC] Remove extraneous backticksNobuyoshi Nakada
So cross-references to defined classes/modules/methods work.
2022-11-25Fix indents in NEWS [ci skip]Nobuyoshi Nakada
The MarkDown parser in RDoc requires 4 columns indentation for paragraphs following list items.
2022-11-25Add examples to error_tolerant option in NEWS [ci skip]yui-knk
Notes: Merged: https://github.com/ruby/ruby/pull/6808
2022-11-24Add a NEWS entry about erb -S removal [ci skip]Takashi Kokubun
2022-11-24Update YJIT section of `NEWS.md` (#6803)Maxime Chevalier-Boisvert
* Update YJIT section of `NEWS.md` * Update NEWS.md Notes: Merged-By: maximecb <maximecb@ruby-lang.org>
2022-11-22Add Time#deconstruct_keyszverok
Notes: Merged: https://github.com/ruby/ruby/pull/6594
2022-11-22Update default gems list at 805d70f716c782e82ec77ca623b217 [ci skip]git
2022-11-22Update default gems list at 3f960cf445dd387a5497ffad897ea6 [ci skip]git
2022-11-21YJIT: Lower the required Rust version from 1.58.1 to 1.58.0 (#6780)Takashi Kokubun
Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2022-11-21Update default gems list at 509f04ca9159d1dd046af4ffb19cfa [ci skip]git
2022-11-21Add a link to Feature #19070 ticket [ci skip]yui-knk
Notes: Merged: https://github.com/ruby/ruby/pull/6774
2022-11-21Enhance keep_tokens option for RubyVM::AbstractSyntaxTree parsing methodsyui-knk
Implementation for Language Server Protocol (LSP) sometimes needs token information. For example both `m(1)` and `m(1, )` has same AST structure other than node locations then it's impossible to check the existence of `,` from AST. However in later case, it might be better to suggest variables list for the second argument. Token information is important for such case. This commit adds these methods. * Add `keep_tokens` option for `RubyVM::AbstractSyntaxTree.parse`, `.parse_file` and `.of` * Add `RubyVM::AbstractSyntaxTree::Node#tokens` which returns tokens for the node including tokens for descendants nodes. * Add `RubyVM::AbstractSyntaxTree::Node#all_tokens` which returns all tokens for the input script regardless the receiver node. [Feature #19070] Impacts on memory usage and performance are below: Memory usage: ``` $ cat test.rb root = RubyVM::AbstractSyntaxTree.parse_file(File.expand_path('../test/ruby/test_keyword.rb', __FILE__), keep_tokens: true) $ /usr/bin/time -f %Mkb /usr/local/bin/ruby -v ruby 3.2.0dev (2022-11-19T09:41:54Z 19070-keep_tokens d3af1b8057) [x86_64-linux] 11408kb # keep_tokens :false $ /usr/bin/time -f %Mkb /usr/local/bin/ruby test.rb 17508kb # keep_tokens :true $ /usr/bin/time -f %Mkb /usr/local/bin/ruby test.rb 30960kb ``` Performance: ``` $ cat ../ast_keep_tokens.yml prelude: | src = <<~SRC module M class C def m1(a, b) 1 + a + b end end end SRC benchmark: without_keep_tokens: | RubyVM::AbstractSyntaxTree.parse(src, keep_tokens: false) with_keep_tokens: | RubyVM::AbstractSyntaxTree.parse(src, keep_tokens: true) $ make benchmark COMPARE_RUBY="./ruby" ARGS=../ast_keep_tokens.yml /home/kaneko.y/.rbenv/shims/ruby --disable=gems -rrubygems -I../benchmark/lib ../benchmark/benchmark-driver/exe/benchmark-driver \ --executables="compare-ruby::./ruby -I.ext/common --disable-gem" \ --executables="built-ruby::./miniruby -I../lib -I. -I.ext/common ../tool/runruby.rb --extout=.ext -- --disable-gems --disable-gem" \ --output=markdown --output-compare -v ../ast_keep_tokens.yml compare-ruby: ruby 3.2.0dev (2022-11-19T09:41:54Z 19070-keep_tokens d3af1b8057) [x86_64-linux] built-ruby: ruby 3.2.0dev (2022-11-19T09:41:54Z 19070-keep_tokens d3af1b8057) [x86_64-linux] warming up.. | |compare-ruby|built-ruby| |:--------------------|-----------:|---------:| |without_keep_tokens | 21.659k| 21.303k| | | 1.02x| -| |with_keep_tokens | 6.220k| 5.691k| | | 1.09x| -| ``` Notes: Merged: https://github.com/ruby/ruby/pull/6770
2022-11-18Added build instructions of psych and fiddle with source files of libyaml ↵Hiroshi SHIBATA
and libffi
2022-11-17Fix quoting of code in `NEWS.md`.Samuel Williams
2022-11-17Add support for `sockaddr_un` on Windows. (#6513)Samuel Williams
* Windows: Fix warning about undefined if_indextoname() * Windows: Fix UNIXSocket on MINGW and make .pair more reliable * Windows: Use nonblock=true for read tests with scheduler * Windows: Move socket detection from File.socket? to File.stat Add S_IFSOCK to Windows and interpret reparse points accordingly. Enable tests that work now. * Windows: Use wide-char functions to UNIXSocket This fixes behaviour with non-ASCII characters. It also fixes deletion of temporary UNIXSocket.pair files. * Windows: Add UNIXSocket tests for specifics of Windows impl. * Windows: fix VC build due to missing _snwprintf Avoid usage of _snwprintf, since it fails linking ruby.dll like so: linking shared-library x64-vcruntime140-ruby320.dll x64-vcruntime140-ruby320.def : error LNK2001: unresolved external symbol snwprintf x64-vcruntime140-ruby320.def : error LNK2001: unresolved external symbol vsnwprintf_l whereas linking miniruby.exe succeeds. This patch uses snprintf on the UTF-8 string instead. Also remove branch GetWindowsDirectoryW, since it doesn't work. * Windows: Fix dangling symlink test failures Co-authored-by: Lars Kanis <kanis@comcard.de> Notes: Merged-By: ioquatix <samuel@codeotaku.com>
2022-11-17Update default gems list at c76909e551f0f60b7a354ab748ef1a [ci skip]git
2022-11-14Rename --mjit-min-calls to --mjit-call-threshold (#6731)Takashi Kokubun
for consistency with YJIT Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2022-11-14Update default gems list at d019c3a4bd7b0955c630195c585f3f [ci skip]git
2022-11-11[Bug #19100] [DOC] Add NEWS about PRNG update and incompatiblityNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/6697
2022-11-08Update default gems list at 4e728486b93eaec876ea8f876df9ec [ci skip]git
2022-11-03YJIT: Make Code GC metrics available for non-stats builds (#6665)Takashi Kokubun
Notes: Merged-By: maximecb <maximecb@ruby-lang.org>
2022-10-30Update bundled gems list at 2022-10-30git
2022-10-30Fix links and sort [ci skip]Kazuhiro NISHIYAMA
2022-10-26Add NEWS entries about YJIT [ci skip] (#6636)Takashi Kokubun
Notes: Merged-By: maximecb <maximecb@ruby-lang.org>
2022-10-25Add NEWS entries about MJIT [ci skip]Takashi Kokubun
2022-10-25Update default gems list at d6d9b5130e5545e978fc9763e9419b [ci skip]git
2022-10-24Update bundled gems list at 2022-10-24git
2022-10-24Update default gems list at c5f5403f6ed9e62f2a1002417e61c9 [ci skip]git
2022-10-22Add [Feature #19013] to NEWS [ci skip]yui-knk
Notes: Merged: https://github.com/ruby/ruby/pull/6614