| Age | Commit message (Collapse) | Author |
|
https://github.com/ruby/reline/commit/c8a419beb5
|
|
|
|
|
|
* close fds properly
* define USE_COPY_FILE_RANGE if HAVE_COPY_FILE_RANGE is defined
* avoid errors on cross-compiling environments
|
|
see also: https://gitlab.com/gitlab-org/gitlab/-/issues/218999#note_363225872
|
|
|
|
https://github.com/ruby/reline/commit/187235f88c
|
|
https://github.com/ruby/reline/commit/9c9ba0eff3
|
|
https://github.com/ruby/reline/commit/9b932df544
|
|
https://github.com/ruby/reline/commit/3e2f55c3e0
|
|
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
|
|
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
|
|
https://github.com/ruby/reline/commit/ba800f1461
|
|
https://github.com/ruby/reline/commit/2c5ee54cb3
|
|
https://github.com/ruby/reline/commit/2d32604c9e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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>
|
|
Since 6f3e8df133c7785ff6bb6f18d1faec81fefb3999 in 2014.
|
|
pointed out by Coverity Scan
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3531
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3531
|
|
|
|
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
|
|
|
|
|
|
|
|
|
|
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
|
|
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
|
|
The two main optimization are:
- buffer writes for improved performance
- avoid formatting functions when possible
```
| |compare-ruby|built-ruby|
|:------------------|-----------:|---------:|
|dump_all_string | 1.038| 195.925|
| | -| 188.77x|
|dump_all_file | 33.453| 139.645|
| | -| 4.17x|
|dump_all_dev_null | 44.030| 278.552|
| | -| 6.33x|
```
Notes:
Merged: https://github.com/ruby/ruby/pull/3420
|
|
|
|
This is useful to see what a block of code allocated, e.g.
```
GC.start
GC.disable
ObjectSpace.trace_object_allocations do
# run some code
end
gc_gen = GC.count
allocations = ObjectSpace.dump_all(output: :file, since: gc_gen)
GC.enable
GC.start
retentions = ObjectSpace.dump_all(output: :file, since: gc_gen)
```
Notes:
Merged: https://github.com/ruby/ruby/pull/3368
|
|
|
|
Start with https://github.com/ruby/ruby/commit/fa21985a7a2f8f52a8bd82bd12a724e9dca74934
to https://github.com/ruby/ruby/commit/d7492a0be885ea9f2b9f71e3e95582f9a859c439
|
|
Document difference in behavior between Tempfile.open and
Tempfile.create.
https://github.com/ruby/tempfile/commit/426d6f887f
|
|
|
|
iseq_inline_iv_cache_entry's index is also size_t.
%"PRIuSIZE" seems to print warnings against st_index_t in some environments.
|
|
|
|
|
|
Because macOS 11.0(Big Sur) was removed libc and libm from `/usr/lib`.
|
|
|
|
Pointed out by Coverity Scan
```
** CID 1466646: Control flow issues (MISSING_BREAK)
/ext/-test-/random/loop.c: 63 in loop_get_bytes()
```
|
|
To enclose the initialization of Random::Base part.
Notes:
Merged: https://github.com/ruby/ruby/pull/3024
|
|
Added `WITH_REAL` versions to `RB_RANDOM_INTERFACE` macros. Also
these macros including "without real" versions no longer contain
the terminator (semicolon and comma).
Notes:
Merged: https://github.com/ruby/ruby/pull/3024
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3024
|