Activity
From 02/05/2021 to 02/11/2021
02/11/2021
-
11:30 PM Feature #17363: Timeouts
- This seems like a good idea. Thank you everyone for the great discussion here.
I agree with the following things:
- Move `Timeout` to core.
- Add `Timeout::Error` as base class in core.
- Add new method for predictable timeout during s... -
11:23 PM Feature #17470: Introduce non-blocking `Timeout.timeout`
- @eregon without preemptive scheduling it won't be possible. There are other cases where the GVL is not released, e.g. the sqlite3 gem. In the case of the scheduler, `Timeout.timeout` is completely broken, so this is an improvement any wa...
- 09:56 PM Revision 1a3b68e7 (git): correct the result of casecmp? examples [ci skip]
-
09:26 PM Bug #17622 (Closed): Segfault in new Rails app
- [Pull request on GitHub](https://github.com/ruby/ruby/pull/4175).
There is a segfault in Ruby master and Ruby 3.0.0, but not present in Ruby 2.7.2. A bisect shows that it's present since commit [a53e2850c572135ed657144bc14e47b29c64fa9... -
03:56 PM Bug #17594: Sort order of UTF-16LE is based on binary representation instead of codepoints
- Technically speaking I'm not sure this is a bug per se. The code correctly implements the spec of sorting by byte, but we might consider this a bug in the spec, or a feature request?
### summary for dev meeting
For most encodings, ... -
03:45 PM Revision 2d877327 (git): 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. -
03:34 PM Bug #17505: Can `Thread#group` actually be `nil`?
- Perfect, so this confirms the spec has changed a long time ago 👍
-
02:39 PM Bug #17505: Can `Thread#group` actually be `nil`?
- Just FYI
Japanese documents says
```
死んでいるスレッドは nil を返します。
```
Dead thread's group returns `nil` from 1.8.0 to 1.9.0-0.
```
% docker run -it --rm ghcr.io/ruby/all-ruby env ALL_RUBY_SINCE=ruby-1.8 ./all-ruby -e 'th=Thread.sta... - 03:02 PM Revision b83ad029 (git): * 2021-02-12 [ci skip]
-
03:02 PM Revision b83b27cd (git): [ruby/irb] Fix inverse separator condition
- https://github.com/ruby/irb/commit/33f933196f
-
02:53 PM Revision aea40f44 (git): Fixed time_t conversion modifiers for debug
-
02:48 PM Misc #17535: DevelopersMeeting20210216Japan
- * [Bug #17594] Sort order of UTF-16LE is based on binary representation instead of codepoints (dan0042)
* 'a' < 'ā' is true for UTF-16BE and false for UTF-16LE; imho it would be better to have the same result.
* casecmp compares co... -
01:25 PM Revision 81f17857 (git): Merged too-short salt conditions instead of UNREACHABLE_RETURN
-
01:20 PM Revision f3f78f96 (git): [DOC] Improved regexp.rdoc [ci skip]
- * Sub-sectioned "Repetition" section
* Added examples of "Possessive match" -
01:18 PM Revision 8544f51e (git): Comment in sh needs to be the beginning of a word
-
11:36 AM Revision 6eb5b3ac (git): [ruby/irb] The command "irb_info" should show RUBY_PLATFORM
- https://github.com/ruby/irb/commit/39d1cd874f
-
11:31 AM Revision b2d2d25b (git): [ruby/irb] Suppress colorize on Windows tests
- https://github.com/ruby/irb/commit/5be9354cf9
-
11:27 AM Revision d77a42fb (git): [ruby/irb] Suppress error when File::ALT_SEPARATOR is nil
- https://github.com/ruby/irb/commit/96accf3b95
- 10:14 AM Revision c3b2bb09 (git): The Queue constructor should take an initial set of objects
- Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
-
08:25 AM Revision a0216b1a (git): Do not run File.write while Ractors are running
- also make sure all local variables have the __bmdv_ prefix.
-
05:24 AM Revision 27382eb9 (git): 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 -
05:14 AM Bug #17560: Does `Module#ruby2_keywords` return `nil` or `self`?
- ruby_2_7 ea222b05571741f36b59f615c2e83b3adafbd398 merged revision(s) 49d3830f44031174ad450a0ea1cdcdf0eabf9d0e.
-
05:13 AM Revision ea222b05 (git): merge revision(s) 49d3830f44031174ad450a0ea1cdcdf0eabf9d0e: [Backport #17560]
- Fix documentation for Module#ruby2_keywords
It returns nil, not self.
Fixes [Bug #17560]
---
vm_method.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-) -
05:10 AM Bug #17572: coerceで作成した(0.0/1)を計算に用いるとコアダンプする
- ruby_2_7 4b6df7f735c10f326f09a44fe38dc10b05ced21c merged revision(s) a55eb9a2af7950d180d9d31ffde2bce66710f44f.
-
05:09 AM Bug #17605: Please backport Apple Silicon arm64 vs arm bugfix to 2.6 and 2.7
- ruby_2_7 f03ba00f40e7c964efcfffc7a761074800ecc1a4 merged revision(s) 43a9a974e276dc49b03ec81ccace0adb534a3d20.
-
05:09 AM Bug #17549: Backport e033c9d7db0 Include missing AvailabilityMacros.h
- ruby_2_7 9cc8b2a672f50fa9a849105353e332d3a72d7b28 merged revision(s) e033c9d7db02a4e8d2973364ecb47744b63aecd3.
-
05:08 AM Bug #17192: ISeq.load_from_binary can cause BUG if binary is a rbinc-derived
- ruby_2_7 f49355a720afe492ea49809e469dce36a9ea961a merged revision(s) 555bd83a8e8b1e859f698089cbbd9ad938159a0e.
-
04:52 AM Revision f03ba00f (git): merge revision(s) 43a9a974e276dc49b03ec81ccace0adb534a3d20: [Backport #17021] [Backport #17605]
- [Bug #17021] Make host_* values consistent with target_*
---
configure.ac | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-) -
04:52 AM Revision 4b6df7f7 (git): merge revision(s) a55eb9a2af7950d180d9d31ffde2bce66710f44f: [Backport #17572]
- Make reciprocal properly of non-integral rational [Bug #17572]
---
rational.c | 2 +-
test/ruby/test_rational.rb | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-) -
04:51 AM Revision 9cc8b2a6 (git): merge revision(s) e033c9d7db02a4e8d2973364ecb47744b63aecd3: [Backport #17549]
- Include missing AvailabilityMacros.h
---
random.c | 4 ++++
1 file changed, 4 insertions(+) -
04:51 AM Revision f49355a7 (git): merge revision(s) 555bd83a8e8b1e859f698089cbbd9ad938159a0e: [Backport #17192]
- Raise when loading unprovided builtin function [Bug #17192]
---
compile.c | 7 +++----
test/ruby/test_iseq.rb | 15 +++++++++++++++
2 files changed, 18 insertions(+), 4 deletions(-) -
04:33 AM Revision 9e66c511 (git): Fix 404 link
-
03:52 AM Bug #16695: Stack consistency error when using the return value
- ruby_2_7 c271c7a225c6175f56f00b785e3034cb4a2b7658 merged revision(s) ce7a053475cbebfb2f3e5ed6614e0ba631541917,1cbb1f1720127b0b34b38c77e27b51b182008699.
-
03:52 AM Revision c271c7a2 (git): merge revision(s) ce7a053475cbebfb2f3e5ed6614e0ba631541917,1cbb1f1720127b0b34b38c77e27b51b182008699: [Backport #16695]
- Adjust sp for `x = false; y = (return until x unless x)` [Bug #16695]
---
compile.c | 8 +++-----
test/ruby/test_syntax.rb | 9 +++++++++
2 files changed, 12 insertions(+), 5 deletions(-)
... -
03:32 AM Bug #17621: Ripper can call on_parse_error multiple times for syntax error. Is this correct?
- > What do you mean by "more context"?
The responses from Ilya here make sense https://twitter.com/schneems/status/1359613202460459010. Basically just because a syntax error is reached it doesn't mean that parsing stops. Multiple error... -
01:02 AM Bug #17621: Ripper can call on_parse_error multiple times for syntax error. Is this correct?
- mauro_oto (Mauro Otonelli) wrote:
> The source it's parsing has a syntax error, so I would only expect one parse error. However, when you execute this code, you see two:
> ...
As you can see with `ruby -c`, it is an expected behavior.
... -
03:31 AM Bug #17313: Backport 9fb60672d55162a92ab7e97b000a7e277458aab1 to Ruby 2.7
- ruby_2_7 29bc77f780bbefca60724e52129f5229aa373551 merged revision(s) 9fb60672d55162a92ab7e97b000a7e277458aab1.
-
03:31 AM Revision 29bc77f7 (git): merge revision(s) 9fb60672d55162a92ab7e97b000a7e277458aab1: [Backport #17313]
- Fix a use-after-free bug reported by ASAN
If a fiber and thread are collected at the same time, the thread might
get collected first and the pointer on the fiber will go bad. I don't
think we need to check wheth...
02/10/2021
-
08:48 PM Bug #17621 (Rejected): Ripper can call on_parse_error multiple times for syntax error. Is this correct?
- Here's an example subclass of Ripper:
``` ruby
class MyRipperSubclass < Ripper
def on_parse_error(msg)
@count ||= 0
@count += 1
puts [count: @count, msg: msg]
end
end
source = <<~EOM
module Hey
class Fo... -
04:39 PM Bug #17585: DWARF5 support?
- It seems that GCC emits version 3 `.debug_line` sections even when `-gdwarf-5` is provided, in contrast to Clang/LLVM emitting version 5, which `addr2line.c` simply skips currently.
Not causing crashes with DWARF-5 is one thing, and s... -
04:28 PM Bug #17620 (Closed): doc: StringScanner: incorrect rendering
- Applied in changeset commit:git|c03b723f56c9b31fb566d83ebecaeae5860b78dd.
----------
Update class documentation for StringScanner
The [] wasn't being displayed, and try to fix formatting for bol?
and << (even if they aren't linked).
F... -
02:22 PM Bug #17620 (Closed): doc: StringScanner: incorrect rendering
- Sorry not to be able to provide a fix, but the documentation of strscan.c reads (https://github.com/ruby/ruby/blob/b5de66e13278ec588cbc8b76b7212e22898e6a89/ext/strscan/strscan.c#L1552):
* === Match Data
*
* - #matched
* - #matc... -
04:17 PM Revision c03b723f (git): 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] -
04:04 PM Bug #17607 (Closed): ChildProcess vs RUBY_PIPE_NONBLOCK_DEFAULT
-
03:56 PM Bug #17505 (Closed): Can `Thread#group` actually be `nil`?
- Applied in changeset commit:git|fc83b4896e9d7de084b203b133b84c1209c6ad88.
----------
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 gr... - 03:56 PM Revision b7333b44 (git): * 2021-02-11 [ci skip]
-
03:55 PM Revision fc83b489 (git): 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] -
12:57 PM Bug #17619 (Rejected): if false foo=42; end creates a foo local variable set to nil
- In Ruby, local variables are defined by assignment expressions, and it is never in "undefined" state but is initialized as `nil`.
-
10:14 AM Bug #17619: if false foo=42; end creates a foo local variable set to nil
- While the hoisting issue is meh to mostly okay, I guess, this block:
```
if false
foo = 32
end
defined?(foo)
"local-variable"
```
is arguably an interpreter side effect that can cause problematic issues to developers. Espe... -
10:12 AM Bug #17619: if false foo=42; end creates a foo local variable set to nil
- > but why would a variable be created in a program-flow primitive ie (if etc) if that condition is such that that code is never executed?
Local variables are 'created' (we could say 'declared') during parse-time in Ruby. That's why th... -
10:03 AM Bug #17619: if false foo=42; end creates a foo local variable set to nil
- I think this is specified and intended behaviour.
https://github.com/ruby/spec/blob/7f0a098a57667ccf70f25aa82cb459dab9a3d960/language/variables_spec.rb#L750-L758 -
09:41 AM Bug #17619: if false foo=42; end creates a foo local variable set to nil
- pkmuldoon (Phil Muldoon) wrote in #note-3:
> The second code example is incorrect, it should read
> ...
zverok (Victor Shepelev) wrote in #note-2:
> To the best of my understanding, `if` doesn't create its own scope with its own local... -
09:39 AM Bug #17619: if false foo=42; end creates a foo local variable set to nil
- The second code example is incorrect, it should read
```
1] pry(main)> defined?(bar)
nil
[2] pry(main)> if true
[2] pry(main)* bar = 99
[2] pry(main)* end
[3] pry(main)> defined?(bar)
"local-variable"
[5] pry(main)> ... -
09:39 AM Bug #17619: if false foo=42; end creates a foo local variable set to nil
- To the best of my understanding, `if` doesn't create its own scope with its own local variables. So this `if` means for the interpreter that "local variable `bar` is present in current scope" (just not assigned).
-
09:37 AM Bug #17619: if false foo=42; end creates a foo local variable set to nil
- This affects Ruby 2.7.1 and also Ruby 3.0.0. I've not had time to test earlier versions.
-
09:36 AM Bug #17619 (Rejected): if false foo=42; end creates a foo local variable set to nil
- Take this following code
```
[1] pry(main)> defined?(foo)
nil
[2] pry(main)> if false
[2] pry(main)* foo = 42
[2] pry(main)* end
[3] pry(main)> defined?(foo)
"local-variable"
```
The inner scope inherits the parent ... -
12:18 PM Bug #17612 (Closed): ractor crash with some simple codes
- Applied in changeset commit:git|3acc81d9e41b18380b9e0168fe2b5e5e0c727256.
----------
Fixed race in dtoa [Bug #17612]
Fixed the race condition when replacing `freelist` entry with its
chained next element. At acquiring an entry, hold t... -
12:11 PM Revision e271a3d4 (git): [DOC] Update README files to use autoreconf [ci skip]
-
10:45 AM Revision 4b6347ab (git): Compile debugging code for time always
-
10:45 AM Revision ef59a781 (git): Fixed the signature of find_time_numguess_getter
-
10:44 AM Revision 3acc81d9 (git): 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 anot... -
10:42 AM Revision ad2c7f8a (git): Simple benchmark of Float#to_s
-
09:32 AM Feature #7394: Enumerable#find ifnone parameter could be non-callable
- What's the point of the "default value" as compared to just `find { ... } || default`?
* Would it be more performant? (I believe no)
* Would it read more naturally? I believe no, the statement reads "find (and if not found, use that)... -
07:53 AM Feature #7394: Enumerable#find ifnone parameter could be non-callable
- A second argument, however, could be made that `find_index` provides a different API:
```ruby
(1..100).find_index(50)
```
...in which we have a similar API for predicate methods (`any?`),`grep`, and other `Enumerable` methods.
... -
07:48 AM Feature #7394: Enumerable#find ifnone parameter could be non-callable
- I rather like @ioquatix idea here, and was considering making a similar ticket to suggest that `ifnone` does not make much sense when compared to other Ruby APIs.
Would we still consider merging this? -
07:56 AM Feature #17140: Merge Enumerable#grep(_v) with Enumerable#select/reject
- Would this feature still be of interest?
-
03:54 AM Revision 281dfacb (git): .github/workflows/compilers.yml: clang-13
- LLVM made release/122.x branch. Its master is now version 12.
-
03:50 AM Bug #17560 (Closed): Does `Module#ruby2_keywords` return `nil` or `self`?
- Applied in changeset commit:git|49d3830f44031174ad450a0ea1cdcdf0eabf9d0e.
----------
Fix documentation for Module#ruby2_keywords
It returns nil, not self.
Fixes [Bug #17560] -
03:49 AM Revision e72757a3 (git): [ruby/zlib] Don't use gemspec for gem dependecy
- https://github.com/ruby/zlib/commit/7d3d19710f
-
03:49 AM Revision 231f0f6f (git): [ruby/zlib] test-unit didn't provide __name__ attribute
- https://github.com/ruby/zlib/commit/7d3fc1f325
-
12:04 AM Bug #17590: `M.prepend M` has hidden side effect
- There are two issues I noted here. One is that cyclic prepends modify the ancestor chain before raising an exception. A simple fix for that is to scan the module ancestor chain to look for a cyclic prepend before making a modification....
02/09/2021
-
11:46 PM Bug #17467: What makes strip() and lstrip() not stripping \u0000 from beginning of the string?
- I agree that this is a bug. The documentation for strip and lstrip specifies that the whitespace should be stripped, and defines whitespace to include null. I have submitted a pull request to fix it: https://github.com/ruby/ruby/pull/4164
-
11:42 PM Bug #17618: Exceptions in Fiber Scheduler causes a segv
- Just some observations in case it's useful. Implementing `unblock` in the scheduler and printing out the current thread shows that `unblock` runs on a dead thread:
```ruby
class Scheduler
def block blocker, timeout = nil
end
def ... -
11:12 PM Bug #17618 (Closed): Exceptions in Fiber Scheduler causes a segv
- If the fiber scheduler doesn't define an unblock function, Ruby will segv when threads are joined.
Here is an example program:
``` ruby
class Scheduler
def block blocker, timeout = nil
end
def fiber &block
fiber = ... -
11:13 PM Bug #17505: Can `Thread#group` actually be `nil`?
- I've added a pull request that fixes the documentation and removes code that deals with a missing thread group: https://github.com/ruby/ruby/pull/4163
-
11:03 PM Bug #17574 (Closed): Hash#inspect segfault
-
10:47 PM Revision 49d3830f (git): Fix documentation for Module#ruby2_keywords
- It returns nil, not self.
Fixes [Bug #17560] -
10:45 PM Bug #17556 (Closed): ruby 2.7.2 ::YAML.dump ArgumentError: invalid value for Integer(): "20210101_"
-
10:39 PM Bug #17537 (Closed): === on ranges of strings is not consistant with include?
-
09:59 PM Bug #17484 (Closed): pry & byebug gems not working properly with Ruby 3.0.0
-
09:34 PM Bug #17424 (Rejected): Interactive Ruby で Object#method を再定義して任意の文字を入力するとエラーが発生する
- This isn't a bug. Reline is calling `method` on an object, which by default is implemented by `Kernel#method`. By running `def method; end` in the top level scope, you are defining `Object#method`, which takes precedence over `Kernel#m...
-
09:23 PM Bug #17612: ractor crash with some simple codes
- While I don't have access to a build of ruby with debug symbols (and nmake DOES NOT like spaces in usernames), I have been able to reproduce a crash with Application Verifier enabled with heaps checks. It triggers an access violation see...
-
01:05 PM Bug #17612: ractor crash with some simple codes
- @ko1 Here is my error log when running your simpler code:
irb(main):036:0> 2.times.map{ Ractor.new{ loop{ rand.to_s } } }.each(&:take)
<internal:ractor>:267: warning: Ractor is experimental, and the behavior may change in future vers... -
02:31 AM Bug #17612 (Assigned): ractor crash with some simple codes
- Could you give me an error log?
```ruby
2.times.map{ Ractor.new{ loop{ rand.to_s } } }.each(&:take)
```
I can find an issue on the simpler example, but I also observed different error on the your original example.
I want to conf... -
09:23 PM Bug #17421 (Closed): Enumerable uses overridden classes in examples
- 09:16 PM Revision 189bf010 (git): Fix broken link
- The document should point to doc/syntax/comments.rdoc (with an "s") as there currently no `doc/syntax/comment.rdoc`
-
08:46 PM Bug #17350 (Closed): mongo-ruby-driver causes the segfault at program's exit
-
07:41 PM Feature #17615: Dump machine registers on RISC-V Linux
- Merged, thank you!
-
07:41 PM Feature #17615 (Closed): Dump machine registers on RISC-V Linux
- Applied in changeset commit:git|66394aec9813e52751e2b099ee6a4814ace494f8.
----------
vm_dump.c: Dump machine registers on RISC-V Linux
Fixes [Bug #17615]
Co-Authored-By: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> -
09:33 AM Feature #17615 (Closed): Dump machine registers on RISC-V Linux
- Dump every integer register that is either callee-saved or used for parameter passing on RISC-V Linux. An example output:
```
-- Machine register context ------------------------------------------------
sp: 0x0000004001801550 s0: 0... - 07:40 PM Revision bb10f81c (git): * 2021-02-10 [ci skip]
-
07:39 PM Revision 66394aec (git): vm_dump.c: Dump machine registers on RISC-V Linux
- Fixes [Bug #17615]
Co-Authored-By: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com> -
04:24 PM Bug #17617 (Closed): When a Ractor's incoming port is closed, Ractor.receive_if does not raise Ractor::ClosedError, but instead blocks indefinitely
- If Ractor#close_incoming is called on a Ractor, any pending Ractor.receive call will raise Ractor::ClosedError. However, any pending Ractor.receive_if call will not; instead, it never returns.
```
r1 = Ractor.new do
Ractor.receive... - 01:54 PM Revision ccba4665 (git): * 2021-02-09 [ci skip]
-
01:53 PM Revision 09c681ab (git): Merge RubyGems 3.2.9 and Bundler 2.2.9 (#4158)
- 01:22 PM Revision e7a831de (git): 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 dupli... -
01:12 PM Feature #17616 (Open): Support backtracing on Linux with non-GNU-libc + libunwind
- Currently, `vm_dump.c` assumes that the availability of `backtrace` implies the existence of `execinfo.h`, but it is not the case with non-GNU libc (e.g. musl or Bionic) Linux systems where libunwind is installed.
A patch is attached ... -
08:49 AM Revision 6bb103f0 (git): [ruby/console] Updated depend
-
08:39 AM Revision 5bfca88f (git): [ruby/io-console] Fixed typo
-
08:38 AM Revision df4f8aa2 (git): [ruby/io-console] Fixed regression against 3.0
-
08:15 AM Revision 96441b91 (git): Define macro for fiber/scheduler.h
-
08:11 AM Revision e7416b4c (git): Updated pre-prototype declarations
-
07:59 AM Revision 8776606b (git): strip trailing spaces [ci skip]
- 06:39 AM Revision 5f69a7f6 (git): 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. -
05:48 AM Revision 3c593f28 (git): Fixed default coroutine selection for musl.
-
04:30 AM Feature #17614 (Closed): Improve performance Float#negative? and Float#positive?
- Applied in changeset commit:git|fad7908a5de4ab08367914d53780ff6518d5f552.
----------
Improve performance Float#positive? and Float#negative? [Feature #17614] (#4160) -
04:01 AM Feature #17614 (Closed): Improve performance Float#negative? and Float#positive?
- Improve performance `Float#negative?` and `Float#positive?`(write in Ruby)
benchmark:
```yml
prelude: |
flo = 4.2
benchmark:
negative?: |
flo.negative?
positive?: |
flo.positive?
loop_count: 20000000
```
r... -
04:29 AM Revision fad7908a (git): Improve performance Float#positive? and Float#negative? [Feature #17614] (#4160)
-
03:59 AM Revision 97cf2900 (git): Copy va_list of exception classes
- The list is reused when an exception raised again after retrying
in the rescue procedure. -
03:59 AM Revision a6f5f3cc (git): Also `eclass` loop can raise in `rb_obj_is_kind_of`
02/08/2021
-
11:41 PM Revision e0c100ec (git): Adjusted indent [ci skip]
-
08:08 PM Bug #15852: APPLICATION_VERIFIER_LOCKS_LOCK_IN_FREED_HEAP on exiting ruby
- How do I assign? It looks like this should go to @ko1 (eval) or @nobu (mingw)
-
08:03 PM Bug #15852: APPLICATION_VERIFIER_LOCKS_LOCK_IN_FREED_HEAP on exiting ruby
- Still active as of Ruby 3.0.0p0 (x64-mingw32). I've done some more digging, and it appears to be freeing the Thread_Mutex in rb_call_inits (inits.c), aka the Init_Thread_Mutex function in thread.c.
-
07:37 PM Feature #17613 (Closed): Eliminate useless catch tables and nops from lambdas
- This patch frees catch tables on iseqs that don't use the catch tables. It also eliminates `nop` instructions from lambdas that don't need them.
Before this patch, lambdas have a "prelude nop" that is used for catch table entries:
... -
04:00 PM Revision 265c0022 (git): Do not allocate ractor-local storage in dfree function during GC
-
03:44 PM Revision 0d89aedb (git): Assign TAG_NONE to ruby_tag_type instead of 0
- 03:07 PM Revision 15e933f2 (git): * 2021-02-09 [ci skip]
-
02:56 PM Revision dfff1df9 (git): vcs.rb: update the given option to VCS.detect by keyword arguments
-
02:56 PM Revision a0faad38 (git): vcs.rb: added `base_url` keyword option to GIT#export_changelog
-
02:45 PM Revision ced09d52 (git): vcs.rb: improved export_changelog
- * arguments are optional
* `path` may be passed as a keyword argument
* `nil` or `"-"` path means stdout -
12:46 PM Revision 4186cd64 (git): Revert a part of "[DOC] refined" [ci skip]
- This reverts commit 478716f49a19cdd86f629c6a0673c1ff53630c96
partially -- "Removed unnecessary parentheses" part -- because of
a lambda, see 9e25eb308d4fae9a10e120c2b4601916cc38336c. -
10:54 AM Bug #17482: Ractor.receive doesnt accept Ctrl+C under some condition
- ruby_3_0 9aba46d8d80473594e567dff1652626e7b2a77b0 merged revision(s) 6f727853cee41195b67ee5d793c1ac23fe1a6ae0,b2674c1fd725b43adf51af7935c780359d70c2a4.
-
10:13 AM Revision 9aba46d8 (git): merge revision(s) 6f727853cee41195b67ee5d793c1ac23fe1a6ae0,b2674c1fd725b43adf51af7935c780359d70c2a4: [Backport #17482]
- 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]
---
thread.c | 8 +++++---
1 file changed, 5 i... -
09:56 AM Bug #17599: [BUG] try to mark T_NONE object when object allocation tracing is enabled
- @wanabe I just tested your patch and it seems to work. Thank you!
-
06:56 AM Bug #17612 (Closed): ractor crash with some simple codes
- I found these codes will crash because of **Ractor** :
``` ruby
e = (1..1000).to_a
arr = [e,e,e,e]
arr.map { |sub_arr|
Ractor.new(sub_arr) do |sub_arr|
sub_arr.map {
Digest::MD5.hexdigest(ra... -
05:21 AM Bug #17486: Build fails on darwin due to libtool being removed
- Could you show mkmf.log file for a failed extension?
-
04:06 AM Feature #17601 (Closed): lib/benchmark: adding `Benchmark::Tms#to_h`
- Applied in changeset commit:git|3a7ff66abc0c389851ab3c5cd0ac53ebe0647eec.
----------
[ruby/benchmark] Adds `Tms#to_h`
[Feature #17601] -
04:06 AM Revision 3a7ff66a (git): [ruby/benchmark] Adds `Tms#to_h`
- [Feature #17601]
- 02:38 AM Revision 9328112b (git): * 2021-02-08 [ci skip]
-
02:33 AM Revision bf627e51 (git): Forward keyword arguments to ARGF from global functions
-
02:31 AM Revision 1d686bde (git): Added test for keyword arguments to ARGF
-
01:35 AM Revision 1ba2b5cd (git): Removed unnecessary parentheses at `case` [ci skip]
02/07/2021
-
11:41 PM Bug #17486: Build fails on darwin due to libtool being removed
- I'm running into this exact same issue, it fails on both Catalina and Big Sur.
```
$ ASDF_RUBY_BUILD_VERSION=master RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl) --with-readline-dir=$(brew --prefix readline)" asdf ins... -
02:35 PM Revision 1499f626 (git): [DOC] Modified prefixes to get rid of conflicts
-
02:12 PM Revision 03e3cc2b (git): [DOC] make individual names so that rdoc can find each documents
-
02:11 PM Revision 0261519f (git): [DOC] Module#method_undefined
-
12:24 PM Revision 478716f4 (git): [DOC] refined
- * Adjusted indentation in license section, and used "(c)"
* Commented out invalid syntax to enable highlighting
* Removed unnecessary parentheses - 12:04 PM Revision 6e8e7005 (git): * 2021-02-07 [ci skip]
-
12:04 PM Revision 77700bf0 (git): Backport lib/reline, and lib/irb for 3.0.1 2nd (#4157)
- * [ruby/irb] Stub a screen size for tests
https://github.com/ruby/irb/commit/6663057083
* [ruby/irb] Support GitHub Actions
https://github.com/ruby/irb/commit/8e9e6c4037
* [ruby/irb] Stub a screen size for test_context
http://ci.rvm... -
10:03 AM Bug #17587: Segmentation fault with ractors and unix signals
- The current behavior of stacking appears to be as expected.
The registered signal handler is called from the main thread. https://git.ruby-lang.org/ruby.git/tree/thread.c?id=947d93b715436b13eefa39f87737bdad3c1f870a#n2430
`Ractor.yiel... -
01:52 AM Feature #17611 (Open): Expose `rb_execarg` interfaces and `rb_grantpt`
- An opaque `struct rb_execarg` has been added 9 years ago, and the latest change on functions deal with it was 3 years ago.
Also, it has been 3 years since `rb_grantpt` was added.
These seem stable enough to expose now, but are still in... -
01:30 AM Revision 947d93b7 (git): [DOC] {Array,MatchData}#values_at understand ranges [ci skip]
02/06/2021
-
08:29 PM Revision 93ebfed0 (git): [ruby/reline] Version 0.2.3
- https://github.com/ruby/reline/commit/b26c7d60c8
-
08:28 PM Revision 8aac1148 (git): [ruby/irb] Version 1.3.3
- https://github.com/ruby/irb/commit/4c87035b7c
-
08:12 PM Revision 300084a8 (git): [ruby/reline] Terminate correctly in the middle of lines higher than the screen
- https://github.com/ruby/reline/commit/e1d9240ada
-
08:12 PM Revision fee19da2 (git): [ruby/reline] Autowrap correctly when inserting chars in the middle of a line
- https://github.com/ruby/reline/commit/ebaf37255f
-
08:11 PM Revision a19ed162 (git): [ruby/reline] The vi_histedit supports multiline
- This closes ruby/reline#253.
https://github.com/ruby/reline/commit/f131f86d71 -
08:11 PM Revision a608bb3e (git): [ruby/reline] Move cursor just after the last line when finished
- https://github.com/ruby/reline/commit/ba06e4c480
-
08:11 PM Revision 08162f0e (git): [ruby/reline] Update cursor info by inserting newline even if not in pasting
- https://github.com/ruby/reline/commit/92d314f514
-
08:11 PM Revision b371ca3f (git): [ruby/reline] Handle past logs correctly when the code is higher than the screen
- https://github.com/ruby/reline/commit/f197139b4a
-
08:11 PM Revision bd0f8b36 (git): [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/ru... -
08:11 PM Revision 03523fda (git): [ruby/reline] Scroll down when ^C is pressed
- https://github.com/ruby/reline/commit/6877a7e3f5
-
08:10 PM Revision ec6929a5 (git): [ruby/reline] Remove an unused variable
- https://github.com/ruby/reline/commit/123ea51166
-
08:10 PM Revision 433b975f (git): [ruby/reline] Initialize uninitialized variables in tests
- https://github.com/ruby/reline/commit/25af4bb64b
-
08:09 PM Revision b69c965f (git): [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
unle... - 06:03 PM Revision 132e01a1 (git): .gdbinit: Fix indentation in print_id [ci skip]
- 06:02 PM Revision bfc7bb5d (git): * 2021-02-07 [ci skip]
- 06:02 PM Revision 34c422b6 (git): Fix grammatical error
-
12:09 PM Revision 7b354cf6 (git): [ruby/irb] Enable to reassign a new block with "measure" command
- https://github.com/ruby/irb/commit/b444573aa2
-
11:45 AM Revision 5704b5fe (git): [ruby/irb] Allow "measure" command to take block
- https://github.com/ruby/irb/commit/20f1ca23e9
-
11:00 AM Bug #17599: [BUG] try to mark T_NONE object when object allocation tracing is enabled
- Shouldn't the call to `gc_event_hook()` come after `newobj_fill()`?
Like this:
```patch
diff --git a/gc.c b/gc.c
index 30badf975f..dc90e6177f 100644
--- a/gc.c
+++ b/gc.c
@@ -2254,7 +2254,6 @@ newobj_slowpath(VALUE klass, VALUE ... -
10:47 AM Feature #15504: Freeze all Range objects
- > if I want to check was called refined method or core?
It actually might be a good feature proposal for Ruby. Because currently, you can tell whether the method is defined by this class, by its parent, by included module, by singleto... -
12:29 AM Feature #15504: Freeze all Range objects
- zverok (Victor Shepelev) wrote in #note-15:
> @AlexWayfer
> ...
Thank you, I agree, it's better. But… if I want to check was called refined method or core? Right now I'm doing it via `have_received` once or never (depending on Ruby versi... -
08:27 AM Bug #16651: Extensions Do Not Compile on Mingw64 with mingw32-make
- Sorry, missed your comment. The problem is /C/ is *wrong*.
This is still an issue with Ruby 3.0.0 and causes building extensions to fail.
Install msys2, install mingw64. Then try to build any extension. You'll get this error message:
... -
08:23 AM Revision e1e61e25 (git): 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. -
06:28 AM Bug #16455: coroutine ucontext uses deprecated POSIX getcontext/swapcontext/makecontext, absent in musl and uclibc
- I still the get same issue with 3.0.0.
Ruby cannot blindly try to use ucontext without checking for getcontext swapcontext makecontext presence.
https://github.com/ruby/ruby/pull/3567 does work. It only needs to be refreshed, removin... -
04:40 AM Revision 94fb62e4 (git): [DOC] Fixed a markup in Array#sum [ci skip]
- 04:14 AM Revision 575c77dd (git): * 2021-02-06 [ci skip]
-
04:13 AM Revision 52ce583f (git): Stop disabling firewall
-
01:14 AM Misc #17535: DevelopersMeeting20210216Japan
- * [Feature #17608] Compact and sum in one step (sawa)
* Let `Array#sum` ignore `nil` values, or introduce a method that does that.
* Many actual use cases of `Array#sum` are followed by `compact`.
* If we need to take care of...
02/05/2021
-
08:05 PM Feature #17608: Compact and sum in one step
- I closed it.
It seems clear there is no need for a new method or keyword argument, when `a.sum{_1 || 0}` already works well, is clear and concise.
In general it's a good idea to think about what to do with missing data anyway, ignoring... -
08:03 PM Feature #17608 (Rejected): Compact and sum in one step
-
04:17 PM Feature #17608: Compact and sum in one step
- Then use `sum(&:to_f)`...
I agree, we should close this request. -
02:25 PM Feature #17608: Compact and sum in one step
- Hanmac (Hans Mackowiak) wrote in #note-6:
> [Y]ou can use [the fact] that `nil.to_i` returns 0
> ...
That won't work.
```ruby
[1.2, nil, 3.6].sum{_1 || 0} # => 4.8
[1.2, nil, 3.6].sum(&:to_i) # => 4
```
-
01:27 PM Feature #17608: Compact and sum in one step
- you can use that `nil.to_i` returns 0
`a.sum(&:to_i) #=> 6` -
06:34 AM Bug #17482: Ractor.receive doesnt accept Ctrl+C under some condition
- b2674c1fd725b43adf51af7935c780359d70c2a4 should be backported too.
-
06:33 AM Revision b2674c1f (git): unblock thread is only for main ractor.
- other ractors should not have a unblock thread.
This patch fixes 6f727853cee41195b67ee5d793c1ac23fe1a6ae0. -
04:59 AM Revision 7baedeff (git): Added tests for MakeMakefile#test_egrep_cpp
-
03:34 AM Revision 0acc05ca (git): Add -fdeclspec to CFLAGS instead of CC
-
03:29 AM Revision abf71864 (git): [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 l... -
03:01 AM Revision a1cc044e (git): [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 -
03:01 AM Revision 2a764fe7 (git): [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 -
03:01 AM Revision 8960d6b5 (git): [ruby/io-console] Add console.rb to search for paths
- https://github.com/ruby/io-console/commit/74567376c4
-
02:45 AM Revision 9ef7780b (git): [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 -
01:12 AM Revision fcdccbff (git): travis_retry.sh is not needed on GitHub Actions
- At least check_dependencies.yml has not failed here yet.