summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-09-14Update dependenciesSamuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3434
2020-09-14Make Mutex per-Fiber instead of per-ThreadBenoit Daloze
* Enables Mutex to be used as synchronization between multiple Fibers of the same Thread. * With a Fiber scheduler we can yield to another Fiber on contended Mutex#lock instead of blocking the entire thread. * This also makes the behavior of Mutex consistent across CRuby, JRuby and TruffleRuby. * [Feature #16792] Notes: Merged: https://github.com/ruby/ruby/pull/3434
2020-09-14Prefer `rb_thread_current_scheduler`.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3434
2020-09-14Add support for hooking `IO#read`.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3434
2020-09-14Rename `Fiber{}` to `Fiber.schedule{}`.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3434
2020-09-14Standardised scheduler interface.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3434
2020-09-14Simplify bitmasks for IO events.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3434
2020-09-14Add RB_ prefix to `GetOpenFile` and `MakeOpenFile`.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3434
2020-09-14Add `rb_thread_current_scheduler()`.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3434
2020-09-14Added promoted libraries to default gems section on NEWSHiroshi SHIBATA
2020-09-14* 2020-09-14 [ci skip]git
2020-09-14[ruby/irb] Version 1.2.6aycabta
https://github.com/ruby/irb/commit/5a7dd8c3bf
2020-09-14[ruby/irb] Need calculate_width and split_by_width of Reline::Unicode of ↵aycabta
reline 0.1.5 or later https://github.com/ruby/irb/commit/c05bc9e595
2020-09-14[ruby/irb] Omit output if first line of multiline is too longaycabta
https://github.com/ruby/irb/commit/0feeae38c5
2020-09-14[ruby/irb] Add OMIT_ON_ASSIGNMENTaycabta
Omit the results evaluated at assignment if they are too long. The behavior of ECHO_ON_ASSIGNMENT being on by default is hard to understand, so I change it to off by default. Instead, we turn OMIT_ON_ASSIGNMENT on by default. The result is displayed on assignment, but it will always be short and within one line of the screen. https://github.com/ruby/irb/commit/c5ea79d5ce
2020-09-14[ruby/irb] Version 1.2.5aycabta
https://github.com/ruby/irb/commit/07beb3964d
2020-09-14[ruby/reline] Version 0.1.5aycabta
https://github.com/ruby/reline/commit/c8a419beb5
2020-09-13* 2020-09-13 [ci skip]git
2020-09-13Fix typos [ci skip]Kazuhiro NISHIYAMA
2020-09-12Fix compile-time check for copy_file_range(2)Masaki Matsushita
* close fds properly * define USE_COPY_FILE_RANGE if HAVE_COPY_FILE_RANGE is defined * avoid errors on cross-compiling environments
2020-09-12Check copy_file_range(2) is actually supported.Masaki Matsushita
see also: https://gitlab.com/gitlab-org/gitlab/-/issues/218999#note_363225872
2020-09-12Suppress "assigned but unused variable" warningaycabta
2020-09-12[ruby/reline] Support for word movement escape sequences in iTerm2aycabta
https://github.com/ruby/reline/commit/187235f88c
2020-09-12[ruby/reline] Treat prompt correctly when Reline.prompt_proc isn't setaycabta
https://github.com/ruby/reline/commit/9c9ba0eff3
2020-09-12[ruby/reline] Move cursor to currect vertical pos after rendering a logical lineaycabta
https://github.com/ruby/reline/commit/9b932df544
2020-09-12[ruby/reline] Stop using chomp option of lines methodaycabta
https://github.com/ruby/reline/commit/3e2f55c3e0
2020-09-12[ruby/reline] Stop erasing chars after the cursor at eolaycabta
When the cursor is at the end of the line and erases characters after the cursor, some terminals delete the character at the cursor position. https://github.com/ruby/reline/commit/e96ec97b02
2020-09-12[ruby/reline] Skip the nil obtained from getcaycabta
The nil means there is nothing in the buffer in some systems. Incidentally, Errno::EIO is raised if the I/O is closed. https://github.com/ruby/reline/commit/c698634e74
2020-09-12[ruby/reline] not clear scrollback bufferYoshinao Muramatu
https://github.com/ruby/reline/commit/ba800f1461
2020-09-12[ruby/reline] clear_screen use Windows APIYoshinao Muramatu
https://github.com/ruby/reline/commit/2c5ee54cb3
2020-09-12[ruby/reline] Use str.encoding by default for split_by_widthaycabta
https://github.com/ruby/reline/commit/2d32604c9e
2020-09-12* 2020-09-12 [ci skip]git
2020-09-12Promote time.rb to default gemsHiroshi SHIBATA
2020-09-11Promote resolv-replace to default gemsHiroshi SHIBATA
2020-09-11Promote resolv to default gemsHiroshi SHIBATA
2020-09-11Promote securerandom to default gemsHiroshi SHIBATA
2020-09-11Promote open-uri to default gemsHiroshi SHIBATA
2020-09-11Let String#slice! return nil (#3533)Soutaro Matsumoto
Returns `nil` instead of an empty string when non-integer number is given (to make it 2.7 compatible). Notes: Merged-By: soutaro <matsumoto@soutaro.com>
2020-09-11rbinstall.rb: OpenStruct has not been needed for yearsNobuyoshi Nakada
Since 6f3e8df133c7785ff6bb6f18d1faec81fefb3999 in 2014.
2020-09-11Add missing breakKazuhiro NISHIYAMA
pointed out by Coverity Scan
2020-09-11Removed DRb.default_safe_level and DRb#safe_levelHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3531
2020-09-11Removed Thread#safe_levelHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3531
2020-09-11* 2020-09-11 [ci skip]git
2020-09-10If the GC runs before the Mutex's are initialised then we get a crash in ↵Matt Valentine-House
pthread_mutex_lock. It is possible for GC to run during initialisation due to objects being allocated Notes: Merged: https://github.com/ruby/ruby/pull/3510
2020-09-10Promote syslog to default gemsHiroshi SHIBATA
2020-09-10Promote base64 to default gemsHiroshi SHIBATA
2020-09-10Promote shellwords to default gemsHiroshi SHIBATA
2020-09-10Promote abbrev to default gemsHiroshi SHIBATA
2020-09-10sync callable_method_entry()Koichi Sasada
callable_method_entry() read/write method table structures so that this function should be synchronized between Ractors. Notes: Merged: https://github.com/ruby/ruby/pull/3529
2020-09-09Make SecureRandom support RactorAaron Patterson
SecureRandom lazily defines `get_random`. Accessing the mutex to define the `get_random` method is not supported inside a Ractor. This commit defines `gen_random` when `securerandom` is required and makes it suppore Ractor (as well as thread safe). Here is a test program: ```ruby require "securerandom" r = Ractor.new do loop do Ractor.yield SecureRandom.hex end end p r.take ``` Before this commit: ``` $ make runruby ./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems ./test.rb <internal:ractor>:38: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues. /Users/aaron/git/ruby/lib/securerandom.rb:94:in `gen_random': can not access instance variables of classes/modules from non-main Ractors (RuntimeError) <internal:ractor>:124:in `take': thrown by remote Ractor. (Ractor::RemoteError) from ./test.rb:9:in `<main>' /Users/aaron/git/ruby/lib/securerandom.rb:94:in `gen_random': can not access instance variables of classes/modules from non-main Ractors (RuntimeError) from /Users/aaron/git/ruby/lib/securerandom.rb:155:in `random_bytes' from /Users/aaron/git/ruby/lib/securerandom.rb:176:in `hex' from ./test.rb:5:in `block (2 levels) in <main>' from ./test.rb:4:in `loop' from ./test.rb:4:in `block in <main>' make: *** [runruby] Error ``` After this commit: ``` $ make runruby ./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems ./test.rb <internal:ractor>:38: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues. "3fc8885157e3911bab4b5d7619bb0308" ``` Notes: Merged: https://github.com/ruby/ruby/pull/3518