Project

General

Profile

Activity

From 04/12/2020 to 04/18/2020

04/18/2020

09:25 PM Feature #16799: Add more functional features,make ruby more friendly.
method1 = (f,n) -> do
return f(n)
end
I think a syntax change such as this may be very problematic.
People would not typically expect this, and even if we, say, assume that this
may be a better syntax for newcomers...
shevegen (Robert A. Heiler)
05:36 PM Feature #16799 (Rejected): Add more functional features,make ruby more friendly.
Classes are currently first-class citizens in Ruby, but functions are not.
This leads to a situation where the function calls are not uniform, for example:
``` ruby
def boo(x)
return x
end
boo2 = -> x { x }
a = boo 10
b = boo2....
jackmaple (maple jack)
08:22 PM Misc #16775: DevelopersMeeting20200514Japan
* [Misc #16778] Should we stop vendoring default gems code? (greggzst)
* it makes maintenance easier and removes the need for synchronization
* removes confusion for external contributors
* Ruby uses git so git submodules could be ...
greggzst (Grzegorz Jakubiak)
05:17 PM Feature #16781: alias :fold :reduce
0x81000000 (/ /) wrote:
> 2. Name "fold" is more common/popular than "reduce" or "inject".
I was surprised to hear this, since I think of "reduce" as most popular. A quick survey of popular languages seems to confirm that "reduce" is...
shan (Shannon Skipper)
03:35 PM Revision cf332f68 (git): * 2020-04-19 [ci skip]
git[bot]
02:31 PM Bug #16776: Regression in coverage library
marcandre (Marc-Andre Lafortune) wrote in #note-3:
> I never realized this limitation. I imagine that for the vast majority of users it's a non issue, but for `byebug` it is quite serious. Would you consider using `deep-cover` instead?
...
deivid (David Rodríguez)
02:29 PM Bug #16798: ENV.replace on Windows with a variable name not respecting case will clear it
Thanks for the quick fix @nobu, and for setting the backports! <3 deivid (David Rodríguez)
02:09 PM Bug #16798 (Closed): ENV.replace on Windows with a variable name not respecting case will clear it
Applied in changeset commit:git|08529a61153e5c40f57a65272211357511d6e6db.
----------
Compare environment variable names in those manor [Bug #16798]
nobu (Nobuyoshi Nakada)
02:19 PM Revision 0a986b81 (git): Env values removed by ENV.clear are not used
nobu (Nobuyoshi Nakada)
02:19 PM Revision 97e8c72e (git): Bypass env key encoding conversion if unnecessary
nobu (Nobuyoshi Nakada)
02:19 PM Revision ec4e57ca (git): Hoisted out reset_by_modified_env
nobu (Nobuyoshi Nakada)
02:19 PM Revision 67e4d5e6 (git): Environment variable values are not case-insensitive
Only the names are case-sensitive. nobu (Nobuyoshi Nakada)
02:12 PM Revision db0d850d (git): [ruby/reline] Add ed_search_next_history
https://github.com/ruby/reline/commit/ca750b676b aycabta (aycabta .)
02:12 PM Revision bea3e31e (git): [ruby/reline] Add ed_search_prev_history
https://github.com/ruby/reline/commit/e9ae288825 aycabta (aycabta .)
02:11 PM Revision 1e4efbb6 (git): [ruby/reline] Rename wrong test name
https://github.com/ruby/reline/commit/8480db575b aycabta (aycabta .)
02:09 PM Revision 08c1c3f2 (git): [ruby/reline] Use vi_search_{prev,next} to incremental search
https://github.com/ruby/reline/commit/cab312f584 aycabta (aycabta .)
02:09 PM Revision afe99785 (git): [ruby/reline] Rename search_history with incremental_search_history
https://github.com/ruby/reline/commit/d563063ea0 aycabta (aycabta .)
02:09 PM Revision 08529a61 (git): Compare environment variable names in those manor [Bug #16798]
nobu (Nobuyoshi Nakada)
12:48 PM Feature #16796 (Rejected): Assigning local variables when using `case when regexp`
Implicit assignment from regular expression matches has been a bad idea. I shouldn't have merged it at the first moment.
I'd like to remove it altogether if I have a chance. So I don't like to enhance it any further.
Matz.
matz (Yukihiro Matsumoto)
11:42 AM Revision e042380e (git): power_assert repository is transferred to ruby/power_assert
ktsj (Kazuki Tsujimoto)
09:05 AM Bug #16797 (Rejected): Array#flatten not checking `respond_to? :to_ary`
Read the error message.
```
-:4:in `flatten': can't convert Object to Array (Object#to_ary gives Object) (TypeError)
```
nobu (Nobuyoshi Nakada)
08:41 AM Revision 04e56958 (git): Make sure newarraykwsplat accesses a correct index
on stack when local_stack_p is enabled.
This fixes `RB_FL_TEST_RAW:"RB_FL_ABLE(obj)"` assertion failure
on power_assert's test with JIT enabled.
k0kubun (Takashi Kokubun)
08:07 AM Revision 0f7d3e4e (git): RUBY_SPECIAL_SHIFT and RUBY_FL_USHIFT are mandatory for rp in lldb_cruby.py
nobu (Nobuyoshi Nakada)
07:48 AM Revision dc8ab86a (git): Super TestJIT#setup to skip unsupported envs
Slightly simplifying 8d6aa06620b316904fd10d0cab1b85e07f2fbf67 k0kubun (Takashi Kokubun)
07:31 AM Revision 9948addd (git): Skip a too-unstable test on s390x-linux
In the last 26-ish hours, it has failed 5 times:
https://travis-ci.org/github/ruby/ruby/jobs/676497718
https://travis-ci.org/github/ruby/ruby/jobs/676480295
https://travis-ci.org/github/ruby/ruby/jobs/676103216
https://travis-ci.org/gith...
k0kubun (Takashi Kokubun)
05:59 AM Revision 8d6aa066 (git): test/ruby/test_jit_debug.rb: Skip unsupported platforms
mame (Yusuke Endoh)
03:34 AM Revision 75f6d706 (git): power_assert repository is transferred to ruby/power_assert
ktsj (Kazuki Tsujimoto)

04/17/2020

10:20 PM Bug #16787: [patch] allow Dir.home to work for non-login procs when $HOME not set
nobu (Nobuyoshi Nakada) wrote in #note-10:
> Thank you, I left some comments at the PR for the details.
> ...
Thanks; I'm taking a look now.
salewski (Alan Salewski)
03:07 PM Bug #16787: [patch] allow Dir.home to work for non-login procs when $HOME not set
Thank you, I left some comments at the PR for the details.
IMHO, the new functions may fit more in process.c.
nobu (Nobuyoshi Nakada)
10:05 AM Bug #16787: [patch] allow Dir.home to work for non-login procs when $HOME not set
Attaching the "v5" version of the patch (for real this time). salewski (Alan Salewski)
05:18 PM Revision 0511bef9 (git): Remove invalid webhook config
According to warnings on Travis, there's no such key. We handle this on
webhook side anyway.
k0kubun (Takashi Kokubun)
05:12 PM Revision 7c0bc724 (git): * 2020-04-18 [ci skip]
git[bot]
05:11 PM Revision f8b79ef5 (git): Compilation error does not impact exit status
We failed to ignore
https://ci.appveyor.com/project/ruby/ruby/builds/32245902/job/xcfxw67uexxysvni
k0kubun (Takashi Kokubun)
04:38 PM Feature #16796: Assigning local variables when using `case when regexp`
sawa wrote:
> I have met such use cases, and agree this would be useful.
I don't disagree in the sense that there may be valid use cases,
but the syntax is kind of weird:
/s(?<mid>.)r/
I use regexes a lot of course, sinc...
shevegen (Robert A. Heiler)
11:11 AM Feature #16796: Assigning local variables when using `case when regexp`
sawa (Tsuyoshi Sawada) wrote in #note-2:
> Alternatively, in order to access even unnamed matches, assigning the last matched data to a variable with the following syntax may be useful.
> ...
That's too confusing. The following code w...
shyouhei (Shyouhei Urabe)
10:20 AM Feature #16796: Assigning local variables when using `case when regexp`
I have met such use cases, and agree this would be useful.
Alternatively, in order to access even unnamed matches, assigning the last matched data to a variable with the following syntax may be useful.
```ruby
case "str"
when /s(...
sawa (Tsuyoshi Sawada)
08:53 AM Feature #16796: Assigning local variables when using `case when regexp`
It is because `when` calls `===` method but not `=~`. nobu (Nobuyoshi Nakada)
08:23 AM Feature #16796 (Rejected): Assigning local variables when using `case when regexp`
I want to use
```ruby
case "str"
when /s(?<mid>.)r/
p mid
end
```
instead of
```ruby
case
when /s(?<mid>.)r/ =~ "str"
p mid
end
```
I also do not like using `$1`.
This feature is extremely useful when there are a lot...
UlyssesZhan (Ulysses Zhan)
04:20 PM Bug #16788: T_CLASS counts classes double
Thank you so much for the explanations @jeremyevans0 @Eregon!!!! ana06 (Ana Maria Martinez Gomez)
02:13 PM Feature #16794: Rightward operators
Actually instead of using `|>` as the common element between rightward operators, maybe just the pipe character would be enough.
`|:` (because `|=` is taken)
`|~`
`|>`
`|>>`
`|**`
Dan0042 (Daniel DeLorme)
02:57 AM Feature #16794: Rightward operators
It's an interesting idea. I am not sure if I can easily adjust to the syntax,
but this may be best to just ask matz directly (I think he suggested the
pipeline operator, and streem kind of also taps into that whole handling of
data id...
shevegen (Robert A. Heiler)
01:22 PM Feature #16795: build ruby.exe on Windows against ruby-static.lib omitting x64-vcruntime-ruby.dll (no '--enable-shared' option for Windows)
shevegen (Robert A. Heiler) wrote in #note-1:
> I feel you here. Not so much due to windows, but I totally understand every
> ...
just simple instructions how to build ruby.exe against static library instead of linking with x64-vcrunti...
repu1sion (Andrii Guriev)
03:01 AM Feature #16795: build ruby.exe on Windows against ruby-static.lib omitting x64-vcruntime-ruby.dll (no '--enable-shared' option for Windows)
I feel you here. Not so much due to windows, but I totally understand every
preference for --enable-shared and --enable static. :-)
Perhaps nobu and greg can help for the windows-related issues; perhaps greg
even through some automa...
shevegen (Robert A. Heiler)
11:19 AM Bug #16798 (Closed): ENV.replace on Windows with a variable name not respecting case will clear it
On Windows, environment variable names are case insensitive:
```
PS C:\Users\deivi> ruby -e "puts ENV['Path']; ENV['PATH'] = 'foo'; puts ENV['Path']" ...
deivid (David Rodríguez)
10:04 AM Bug #16797 (Rejected): Array#flatten not checking `respond_to? :to_ary`
```ruby
def (a = Object.new).method_missing(...)
Object.new
end
[a].flatten # TypeError
```
It should check whether an object responds to `to_ary` before trying to convert it into an array.
UlyssesZhan (Ulysses Zhan)
08:59 AM Revision 92c82588 (git): Fix a typo [ci skip]
znz (Kazuhiro NISHIYAMA)
08:49 AM Revision c8178687 (git): NEWS.md: Mentioned the removal of NIL/TRUE/FALSE [ci skip]
nobu (Nobuyoshi Nakada)
08:40 AM Revision 5257a530 (git): Removed NIL/TRUE/FALSE from documents too
This is follow up of 62554ca97812b454e78a0a9daf6e962ff7a2f589 znz (Kazuhiro NISHIYAMA)
08:35 AM Revision 62554ca9 (git): Removed NIL/TRUE/FALSE
Deprerecated constants which had been warned since 2.4. nobu (Nobuyoshi Nakada)
05:42 AM Feature #16786: Light-weight scheduler for improved concurrency.
Tidy up proposal. ioquatix (Samuel Williams)
05:27 AM Feature #16786: Light-weight scheduler for improved concurrency.
Make `wait_readable`, `wait_writable` and `wait_any` take `IO` argument. Add explicit wrappers for CRuby. ioquatix (Samuel Williams)
05:25 AM Revision 3152977b (git): Rescue EPIPE in _report
Instead of letting callers rescue the error always. nobu (Nobuyoshi Nakada)
05:08 AM Revision b5132d91 (git): Refactored rb_readwrite_syserr_fail
* renamed argument `writable` as `waiting`
* hosited out creating and raising exception
* turned into a `switch`
nobu (Nobuyoshi Nakada)
05:07 AM Revision 00d92783 (git): fileutils now depends on rbconfig.rb due to JRuby support
nobu (Nobuyoshi Nakada)
03:38 AM Bug #9573: descendants of a module don't gain its future ancestors, but descendants of a class, do
@jeremyevans0 thanks so much for fixing this at least in the #include case. ioquatix (Samuel Williams)
12:24 AM Revision 75a0447c (git): Suppress C4267 "possible loss of data" warnings
Just cast down explicitly. nobu (Nobuyoshi Nakada)
12:22 AM Revision 36353b27 (git): test/ruby/test_process.rb: Skip GID.from_name on Android
The user management on Android seems very different
https://rubyci.org/logs/rubyci.s3.amazonaws.com/android28-x86_64/ruby-master/log/20200416T234122Z.fail.html.gz
mame (Yusuke Endoh)

04/16/2020

09:30 PM Bug #11143: it should always be possible to return from an if
Just got hit by this. Is this difficult to backport to supported versions? marcandre (Marc-Andre Lafortune)
09:23 PM Revision c23efbaa (git): Remove lib/rss.rb
This is a follow-up of 83240f315a10b42b53c3b62c1fbc428f97912665 . Sutou Kouhei
07:23 PM Feature #16795 (Open): build ruby.exe on Windows against ruby-static.lib omitting x64-vcruntime-ruby.dll (no '--enable-shared' option for Windows)
I'm trying to build ruby for embedded windows environment. It would help a lot if I would be able to do it without '--enable-shared'
as it could be done for Linux platform. So on linux just ruby-static.a built, without any .so.
Execu...
repu1sion (Andrii Guriev)
06:41 PM Bug #16787: [patch] allow Dir.home to work for non-login procs when $HOME not set
Attaching the "v5" version of the patch. This version corresponds with the changes I just pushed on my [ads/b.r-l.o-issue-16787](https://github.com/salewski/ruby/tree/ads/b.r-l.o-issue-16787) branch for [PR 3034](https://github.com/ruby/... salewski (Alan Salewski)
04:17 AM Bug #16787: [patch] allow Dir.home to work for non-login procs when $HOME not set
Slightly cleaned-up patch: v4
[still just a wip; please ignore]
salewski (Alan Salewski)
03:45 AM Bug #16787: [patch] allow Dir.home to work for non-login procs when $HOME not set
Just attaching the "v3" version of the patch. This one is /not/ a commit candidate; needs some beautification.
The functionality is there to start with the password record lookup by username, and only if that fails to then fall back o...
salewski (Alan Salewski)
05:21 PM Bug #16788: T_CLASS counts classes double
The reason is documented here:
https://github.com/ruby/ruby/blob/f2c3848a5bf2bec0b27a6035c4b7399594c32509/class.c#L1775-L1778
Otherwise, methods on the class (i.e. class methods/singleton methods of that class) wouldn't inherit from the...
Eregon (Benoit Daloze)
04:02 PM Bug #16788: T_CLASS counts classes double
Unfortunately, I do not know the reason behind the automatic creation of singleton classes for classes. I'm guessing it is necessary for correct method lookup, but I'm not sure.
Looking at the repository, automatic creation of single...
jeremyevans0 (Jeremy Evans)
11:24 AM Bug #16788: T_CLASS counts classes double
@jeremyevans0 thank you so much for your answer. Why are two singleton classes created and why only the second one is accesible to the user?
Also, could you please tell me how do you do to see the debugger output?
ana06 (Ana Maria Martinez Gomez)
04:23 PM Bug #16793 (Third Party's Issue): [BUG] object allocation during garbage collection phase
Based on the error message and control frame info, it appears puma is allocating an object during garbage collection, which would be a bug in puma. Try upgrading to puma 4.3.3 (the latest release), and if you still have the same issue, ... jeremyevans0 (Jeremy Evans)
11:50 AM Bug #16793 (Third Party's Issue): [BUG] object allocation during garbage collection phase
Hi
Our Puma server periodically stops working, and returns to command line without error message.
Nothing has changed to the configuration, but today, for the first time, the attached message was raised.
I hope this is a good clue!
...
FreddieFrog (Frédéric Champreux)
03:53 PM Revision a0bc3f2a (git): Suppress C4267 "possible loss of data" warnings
nobu (Nobuyoshi Nakada)
03:52 PM Revision 99a04815 (git): * 2020-04-17 [ci skip]
git[bot]
03:52 PM Revision 3cca0d19 (git): core_assertions.rb: fixed fd leak at timeout
nobu (Nobuyoshi Nakada)
03:52 PM Revision e231f8e8 (git): envutil.rb: not try to close pipes twice
nobu (Nobuyoshi Nakada)
02:07 PM Feature #16670: Reverse order of `expression` in `pattern` for 1-line pattern matching while it's still experimental
I think the `in` syntax and order feels natural when you're actually matching a pattern. It's not AI-like pattern recognition like "find a pattern _in_ this" but rather pattern correspondence like "is this _in_ the range expressed by thi... Dan0042 (Daniel DeLorme)
01:59 PM Feature #15921: R-assign (rightward-assignment) operator
Until now I thought `=>` made perfect sense, given that it's already used in `rescue`, but Jeremy's counterpoint examples are very convincing. There's a high potential for confusion and bugs. Even matz says confusing cases should be warn... Dan0042 (Daniel DeLorme)
01:55 PM Feature #16794 (Open): Rightward operators
While reading #15921 (r-assign) and #16670 (reverse pattern matching order) I felt a certain commonality to these and #15799 (pipeline) and I thought maybe there's currently a narrow window of opportunity to adopt an overarching and harm... Dan0042 (Daniel DeLorme)
01:12 PM Feature #16791: Shortcut for Process::Status.exitstatus
This is not a good feature request, IMO.
There is not really any explanation as to what the idea is about. Why is
p pid and s existatus suddenly? And why should that be common if one
can already extend these classes as-is? What is t...
shevegen (Robert A. Heiler)
06:06 AM Feature #16791 (Open): Shortcut for Process::Status.exitstatus
[Updated]
```
s = `csc x.cs`.sub(/.*?\n\n/m, '')
puts s if s != ''; exit $?.exitstatus if $?.exitstatus > 0
system 'mono x.exe'; exit $?.exitstatus
```
```
class Process::Status
alias :es :exitstatus
end
```
```
s = `cs...
0x81000000 (/ /)
11:54 AM Bug #16498: Hash#transform_values in 2.7.0 sets new hash's default to old hash's default_proc
This does break ActiveSupport 5.2 test suite. vo.x (Vit Ondruch)
11:50 AM Revision fedc8075 (git): Preserve encoding in error messages for invalid user/group name
nobu (Nobuyoshi Nakada)
11:50 AM Revision 748c7c7c (git): Added tests for Process::UID.from_name and Process::GID.from_name
nobu (Nobuyoshi Nakada)
11:50 AM Revision f57e2d72 (git): Preserve encoding in error message for invalid env exec option
nobu (Nobuyoshi Nakada)
11:38 AM Revision 33aaa2aa (git): Added test for invalid env exec option
nobu (Nobuyoshi Nakada)
10:39 AM Feature #16786: Light-weight scheduler for improved concurrency.
Thanks @eregon for your feedback.
> Maybe we can make `Fiber.new(blocking: false)` call `Thread.current.scheduler.fiber {}` or `Thread.current.scheduler.register(fiber_instance)` ?
`Fiber.new` is a constructor and is independent of the...
ioquatix (Samuel Williams)
09:15 AM Feature #16786: Light-weight scheduler for improved concurrency.
I think is a great proposal.
I think we need to try to support existing code as much as possible, because all the existing Ruby code will never be rewritten to use a different pattern.
So we need the proposal to compose really well w...
Eregon (Benoit Daloze)
09:05 AM Feature #16786: Light-weight scheduler for improved concurrency.
I created #16792 to change Mutex to be held per Fiber instead of per Thread.
Based on that it should be easy to integrate with the Scheduler.
I agree that seems an important case to address, and I think we shouldn't have any builtin op...
Eregon (Benoit Daloze)
10:26 AM Feature #16792: Make Mutex held per Fiber instead of per Thread
My initial reply might have come across as overly critical and that was not my intention.
I want to say, I agree with this proposal, and I think it's a good idea.
I would like to see that we merge the scheduler proposal first, which pr...
ioquatix (Samuel Williams)
09:57 AM Feature #16792: Make Mutex held per Fiber instead of per Thread
> Any example? Please don't claim such things if there is no example.
I'll have to defer to @headius for examples, since he was the one that mentioned it. I can only assume he is telling the truth when he said some application code was ...
ioquatix (Samuel Williams)
09:37 AM Feature #16792: Make Mutex held per Fiber instead of per Thread
ioquatix (Samuel Williams) wrote in #note-5:
> Can you check the Crystal implementation? How do they implement fair scheduling?
It's linked in the description.
Mutex is already not fair so I don't think it matters.
> ...
It doesn...
Eregon (Benoit Daloze)
09:32 AM Feature #16792: Make Mutex held per Fiber instead of per Thread
> Application code which expects per-thread mutex
I'm happy to see examples of that.
I've never seen it in 5+ more years of bug reports on TruffleRuby, and JRuby AFAIK always had Mutex per Fiber and yet no real issue because of it.
...
Eregon (Benoit Daloze)
09:24 AM Feature #16792: Make Mutex held per Fiber instead of per Thread
Characterising this as trivial hides the impact of this both on the scheduler design and application code which expects per-thread mutex.
Once the scheduler lands into master, we will need to scope out something like `wait_mutex` and al...
ioquatix (Samuel Williams)
09:01 AM Feature #16792 (Closed): Make Mutex held per Fiber instead of per Thread
Currently, Mutex in CRuby is held per Thread.
In JRuby and TruffleRuby, Mutex is held per Fiber (because it's simply easier implementation-wise).
While a user could theoretically notice the difference, it seems extremely uncommon in ...
Eregon (Benoit Daloze)
09:02 AM Revision 693378f1 (git): Moved noreturn call to end of noreturn function
nobu (Nobuyoshi Nakada)
08:59 AM Revision d4215daf (git): Use UNREACHABLE_RETURN for non-void function
nobu (Nobuyoshi Nakada)
08:39 AM Feature #11747: "bury" feature, similar to 'dig' but opposite
I think the issues/problems specified in the comments are not present with a Hash-only implementation. :)
I would be supportive of re-considering this feature just for use with a Hash, where I believe 80% of the real-life use cases wo...
schwad (Nick Schwaderer)
08:19 AM Revision 3eb05a80 (git): fix compiler error on gcc 4.x
It seems gcc prior to 5 suffered from preprocessor bug. We have to
provide workarounds.
See https://github.com/ruby/ruby/runs/591138012
----
Here is something interesting. According to C99, strictly speaking,
the gcc behaviour was i...
shyouhei (Shyouhei Urabe)
05:22 AM Revision 4ab14aec (git): * 2020-04-16 [ci skip]
git[bot]
05:22 AM Revision 48273534 (git): Support for FreeBSD <sys/cdefs.h>
FreeBSD's <sys/cdefs.h> is broken. Cygwin is also affected by that.
We need to avoid using them.
See also:
https://github.com/freebsd/freebsd/commit/d1c67819db000c02d3a9c79f3651c10aeedad1a0
https://sourceware.org/git/?p=newlib-cygwin.g...
shyouhei (Shyouhei Urabe)

04/15/2020

11:36 PM Feature #16790: string format and refinements
This isn't a bug, as it is currently expected that refinements would not be used in this case. Switching this to a feature request. jeremyevans0 (Jeremy Evans)
11:25 PM Feature #16790 (Open): string format and refinements
I did:
```ruby
require 'pathname'
module PathRefinement
refine Pathname do
def to_s
'"%s"' % self
end
end
end
module Builder
using PathRefinement
def call(s,params)
cmd = s % param...
dsisnero (Dominic Sisneros)
09:57 PM Bug #16787: [patch] allow Dir.home to work for non-login procs when $HOME not set
Just attaching the "v2" version of the patch, which adds functionality to fallback on using getpwuid() when getpwuid_r() is not available at compile time. This patch is already obsolete, as we are discussing doing name based lookups, and... salewski (Alan Salewski)
09:50 PM Bug #16787: [patch] allow Dir.home to work for non-login procs when $HOME not set
nobu (Nobuyoshi Nakada) wrote in #note-2:
> The reason to prefer `getpwnam` over `getpwuid` is that some login names who have different home directories can share the same user id.
> ...
Thanks; I agree. I hadn't considered that possib...
salewski (Alan Salewski)
01:06 PM Bug #16787: [patch] allow Dir.home to work for non-login procs when $HOME not set
The reason to prefer `getpwnam` over `getpwuid` is that some login names who have different home directories can share the same user id.
I think it looks good as the _next_ fallback when `getlogin` and/or `getpwnam` fail.
nobu (Nobuyoshi Nakada)
11:38 AM Bug #16787: [patch] allow Dir.home to work for non-login procs when $HOME not set
I created a pull request for this over on GitHub:
https://github.com/ruby/ruby/pull/3034
The automated intgration tests there have some complaints. I'll see what I can do about getting those fixed up, and will report back.
salewski (Alan Salewski)
11:19 AM Bug #16787 (Closed): [patch] allow Dir.home to work for non-login procs when $HOME not set
The 'Dir.home' method in versions of Ruby 2.x through the latest (2.7.1,
released 2020-03-31) is unable to reliably locate the user's home directory
when all three of the following are true at the same time:
1. Ruby is running o...
salewski (Alan Salewski)
07:23 PM Bug #16789 (Closed): Compaction callback for C extensions not documented
The compaction callback for C extensions not documented in the extension rdoc.
Here's the section of the C code where the callback is called, if it exists:
https://github.com/ruby/ruby/blob/master/gc.c#L8343
Here's the relevant ...
mooreds (Dan Moore)
05:45 PM Bug #16788 (Rejected): T_CLASS counts classes double
This is expected and not a bug. Creating a class automatically creates a singleton class. Output from debugger when doing `c = Class.new`:
```
#0 class_alloc (flags=0, klass=120258865952) at class.c:172
#1 0x0000073abf1eadcd in ...
jeremyevans0 (Jeremy Evans)
05:22 PM Bug #16788 (Rejected): T_CLASS counts classes double
Consider the following code:
``` ruby
h = {}
ObjectSpace.count_objects(h)
puts "Counts: #{ h[:T_CLASS] }, #{ h[:T_ICLASS] }"
objects = []
classes = []
ObjectSpace.each_object(Object){|x| objects << x}
ObjectSpace.each_object(...
ana06 (Ana Maria Martinez Gomez)
12:05 PM Revision 155f64e3 (git): Raise EPIPE at broken pipe for the backward compatibility
Instead of SignalException for SIGPIPE, raise `Errno::EPIPE` with
instance variable `signo` and re-send that signal at exit.
[Feature #14413]
nobu (Nobuyoshi Nakada)
12:00 PM Revision d72fd1e4 (git): Added rb_syserr_new_path
Similar to rb_syserr_fail_path, but just returns the created
exception instance instead of raising it.
nobu (Nobuyoshi Nakada)
10:51 AM Bug #16785: ruby 2.8.0-dev 5c27681813 causes Rails CI failure
I have confirmed 79f3403b addresses the issue.
```
% ruby -v
ruby 2.8.0dev (2020-04-15T06:49:29Z master 79f3403be0) [x86_64-darwin19]
% PARALLEL_WORKERS=1 bin/test test/controller/base_test.rb --seed 31701 -n "/^(?:UrlOptionsTest#...
yahonda (Yasuo Honda)
06:53 AM Bug #16785: ruby 2.8.0-dev 5c27681813 causes Rails CI failure
Thanks to the easy way to reproduce the issue, I could fix the failure in commit:8355a99883 at least in my environment. Also I fixed a similar problem in commit:79f3403be0.
Could you check if commit:79f3403be0 fixes the problem?
k0kubun (Takashi Kokubun)
06:42 AM Bug #16785 (Closed): ruby 2.8.0-dev 5c27681813 causes Rails CI failure
Applied in changeset commit:git|8355a998839f17ff214a89062821a0a4287f6a54.
----------
Invalidate fastpath when calling attr_writer by super
We started to use fastpath on invokesuper when a method is not refinements
since 5c27681813, but...
k0kubun (Takashi Kokubun)
07:06 AM Revision 69b3e0ac (git): Create succ_index_table as a part of `iseq_setup`
With compiling `CPDEBUG >= 2`, `rb_iseq_disasm` segfaults if this
table has not been created. Also `ibf_load_iseq_each` calls
`rb_iseq_insns_info_encode_positions`.
nobu (Nobuyoshi Nakada)
07:06 AM Revision a9567cc2 (git): Added test for `debug_level:` option of `RubyVM::InstructionSequence.compile`
nobu (Nobuyoshi Nakada)
06:59 AM Revision 1dad9fa5 (git): This test is not testing attr_writer
k0kubun (Takashi Kokubun)
06:49 AM Revision 79f3403b (git): Invalidate fastpath when calling attr_reader by super
The same bug as 8355a99883 existed in attr_reader too. k0kubun (Takashi Kokubun)
06:32 AM Revision 8355a998 (git): Invalidate fastpath when calling attr_writer by super
We started to use fastpath on invokesuper when a method is not refinements
since 5c27681813, but we shouldn't have used fastpath for attr_writer either.
`cc->aux_.attr_index` is for an actual receiver class, while we store
its superclas...
k0kubun (Takashi Kokubun)
03:34 AM Revision 2c12d111 (git): Disassemble nop-inserted list
nobu (Nobuyoshi Nakada)
03:28 AM Revision de2afcbf (git): Show heading for update_catch_except_flags
nobu (Nobuyoshi Nakada)
03:17 AM Revision f9822d17 (git): Shrink diassembled result string
nobu (Nobuyoshi Nakada)
01:37 AM Revision 0d6737cb (git): * 2020-04-15 [ci skip]
git[bot]
01:33 AM Revision 478135f4 (git): Disallow line-continuation before R-assign
nobu (Nobuyoshi Nakada)
01:18 AM Feature #16786: Light-weight scheduler for improved concurrency.
I looked at C interface.
We can introduce new interface, something like:
```c
int rb_wait_readable(VALUE io);
int rb_wait_writable(VALUE io);
// Similar to wait_for_single_fd:
int rb_wait_events(VALUE io, int events, struct timeval * ...
ioquatix (Samuel Williams)
12:42 AM Feature #16786: Light-weight scheduler for improved concurrency.
Added `autoclose: false` to reflect discussion point from @headius. ioquatix (Samuel Williams)
12:47 AM Feature #14736 (Closed): Thread selector for flexible cooperative fiber based concurrency
Closing in favour of https://bugs.ruby-lang.org/issues/16786 ioquatix (Samuel Williams)

04/14/2020

11:58 PM Feature #16786: Light-weight scheduler for improved concurrency.
In addition, I thought about it more, and I think `Fiber do ... end` without a scheduler should be a hard error, otherwise, the default implementation needs to expose symmetric/asymmetric co-routine (`resume`/`transfer`). In addition, ev... ioquatix (Samuel Williams)
11:55 PM Feature #16786: Light-weight scheduler for improved concurrency.
> Why not differentiate what we think of as Fiber today with this new type of Fiber (e.g. ScheduledFiber)?
From the user's point of view, it's still a fiber, and can be scheduled like a fiber: `resume`/`yield`/`transfer` and so on. The ...
ioquatix (Samuel Williams)
06:55 PM Feature #16786: Light-weight scheduler for improved concurrency.
I have not had much time to digest this from a single reading but a question immediately screams out at me in reading this: Why not differentiate what we think of as Fiber today with this new type of Fiber (e.g. ScheduledFiber)?
It fe...
enebo (Thomas Enebo)
06:45 PM Feature #16786: Light-weight scheduler for improved concurrency.
A thought occurs: if you have to create a "special" fiber to get nonblocking behavior anyway, why isn't it named something else? How about something like Worker?
* Create a new nonblocking worker fiber with `Worker.new do`
* Workers ...
headius (Charles Nutter)
06:15 PM Feature #16786: Light-weight scheduler for improved concurrency.
Notes from recent discussions about this on Slack:
Scheduler API should pass IO objects, not file descriptors
----------------------------------------------------------
The current design calls for the Scheduler methods like `wait...
headius (Charles Nutter)
03:31 PM Feature #16786: Light-weight scheduler for improved concurrency.
> One issue I see is that this adds another API (Scheduler) for people to have to
In practice, users do not see this interface. If you check `Async` implementation, it's completely hidden from user, but allows `Async` to handle native R...
ioquatix (Samuel Williams)
02:54 PM Feature #16786: Light-weight scheduler for improved concurrency.
One issue I see is that this adds another API (Scheduler) for people to have to
remember. They will have to know how/when to use Mutex, Thread, Fibers, perhaps
Guilds, and now Scheduler.
Is this really what we want to have in ruby? ...
shevegen (Robert A. Heiler)
02:38 PM Feature #16786 (Closed): Light-weight scheduler for improved concurrency.
# Abstract
We propose to introduce a light weight fiber scheduler, to improve the concurrency of Ruby code with minimal changes.
# Background
We have been discussing and considering options to improve Ruby scalability for severa...
ioquatix (Samuel Williams)
04:57 PM Bug #16785 (Assigned): ruby 2.8.0-dev 5c27681813 causes Rails CI failure
> commit:5c27681813
Thank you for your report. Let me take a look at this.
k0kubun (Takashi Kokubun)
09:16 AM Bug #16785 (Closed): ruby 2.8.0-dev 5c27681813 causes Rails CI failure
Rails CI has been failing since https://buildkite.com/rails/rails/builds/68202#ee7fdd62-d66b-48a1-a55f-af28a2bff287 , according to git bisect it is triggered since ruby 2.8.0-dev 5c27681813
# Steps to reproduce (I have not found how t...
yahonda (Yasuo Honda)
04:37 PM Misc #16047: Reconsider impact of frozen_string_literal on dynamic strings
I find myself only applying ".freeze" to all-cap constants:
RED = "red".freeze
I think it would nice if Ruby 3 only (automatically) froze string that are declared/assigned to constants.
ngan (Ngan Pham)
10:47 AM Revision a520ee47 (git): Removed duplicate value_expr checks
`arg_rhs` has the same check and is always a non-void value
expression.
nobu (Nobuyoshi Nakada)
08:02 AM Feature #11816: Partial safe navigation operator
> Given the fact that `foo&.bar.baz` have basically no use whatsover, it is difficult to see what functioning code could be broken though
I can imagine some!
* Not from production, but it does not seem too obscure: `foo&.bar.nil?...
zverok (Victor Shepelev)
03:49 AM Feature #11816: Partial safe navigation operator
> The &. operator has pretty well-defined semantics by now and changing it may break some existing code.
Any change may break some existing code. Given the fact that `foo&.bar.baz` have basically no use whatsover, it is difficult to s...
marcandre (Marc-Andre Lafortune)
06:48 AM Revision f8886265 (git): Fix logic to detect vs120
MJIT_CC seems not defined
https://ci.appveyor.com/project/ruby/ruby/builds/32161572/job/u5sw8yn4in87heki
k0kubun (Takashi Kokubun)
06:13 AM Revision 7a85d31c (git): [ruby/date] Suppress -Wchar-subscripts warnings by Cygwin gcc 9.3.0
https://github.com/ruby/date/commit/9968eb69f0 nobu (Nobuyoshi Nakada)
06:11 AM Revision e6677503 (git): Add missing call in 70b7304f03
k0kubun (Takashi Kokubun)
06:08 AM Revision 70b7304f (git): Ignore AppVeyor vs120's pdb corruption
We tried to fix this like https://github.com/ruby/ruby/pull/3029, but it
didn't work. The failure has never been helpful for developing MJIT, and
currently it's not prioritized to be fixed. Until we try to figure out
the root cause on Ap...
k0kubun (Takashi Kokubun)
04:37 AM Revision f883d621 (git): Unify vm benchmark prefixes to vm_ (#3028)
The vm1_ prefix and vm2_ had had special meaning until
820ad9cb1d72d0897b73dae282df3793814b27e8 and
12068aa4e980ab32a0438408a519030e65dabf5e. AFAIK there's no special
meaning in vm3_ prefix.
As they have confused people (like "In `bench...
k0kubun (Takashi Kokubun)
04:10 AM Revision 9fa24018 (git): Make y.output in ripper unlocalized [ci skip]
Often it is easy to search, grep, etc from command line, for
debugging purpose.
nobu (Nobuyoshi Nakada)
03:39 AM Revision c79e3a59 (git): Add {Regexp,String}#match with block to call-seq [ci skip]
znz (Kazuhiro NISHIYAMA)
03:32 AM Revision 310ef9f4 (git): Make vm_call_cfunc_with_frame a fastpath (#3027)
when there's no need to call CALLER_SETUP_ARG and CALLER_REMOVE_EMPTY_KW_SPLAT
(i.e. !rb_splat_or_kwargs_p(ci) && !calling->kw_splat).
Micro benchmark:
```
$ benchmark-driver -v --rbenv 'before;after' benchmark/vm_send_cfunc.yml --repea...
k0kubun (Takashi Kokubun)
02:32 AM Bug #16784 (Closed): Compiling with --enable-load-relative and "musl-gcc -static" yields "negative string size (or size too big) (ArgumentError)"
```
$ uname -ar
Linux localhost 5.4.27-0-lts #1-Alpine SMP Mon, 23 Mar 2020 18:15:20 UTC ppc64le Linux
$ gcc --version
gcc (Alpine 9.2.0) 9.2.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the sour...
runlevel5 (Trung Le)

04/13/2020

11:45 PM Revision b9d3ceee (git): Unwrap vm_call_cfunc indirection on JIT
for VM_METHOD_TYPE_CFUNC.
This has been known to decrease optcarrot fps:
```
$ benchmark-driver -v --rbenv 'before --jit;after --jit' benchmark.yml --repeat-count=24 --output=all
before --jit: ruby 2.8.0dev (2020-04-13T16:25:13Z master...
k0kubun (Takashi Kokubun)
07:16 PM Feature #16783: Implicit vs explicit self
😻 koriroys (Kori Roys)
05:59 PM Feature #16783 (Closed): Implicit vs explicit self
This was implemented in Ruby 2.7:
```ruby
class A
def b
self.a
self.a = 1
end
private
attr_accessor :a
end
p A.new.b
# 2.7: 1
# 2.6 and below: NoMethodError
```
See #11297 and #16123.
jeremyevans0 (Jeremy Evans)
05:49 PM Feature #16783: Implicit vs explicit self
phrasing koriroys (Kori Roys)
05:48 PM Feature #16783 (Closed): Implicit vs explicit self
I recently ran into this case while trying to explain why `self` is needed for calling setters (can't disambiguate between creating a local variable versus calling the setter because of the syntactic sugar). However, I couldn't come up w... koriroys (Kori Roys)
05:37 PM Feature #16688: Allow #to_path object as argument to system()
There's maybe just one small gotcha to consider:
```ruby
o = File.open("o","w")
system("ls", out: o) #should be equivalent
system("ls", out: o.fileno) #to this
system("ls", out: o.to_path) #not to this
```
Dan0042 (Daniel DeLorme)
05:29 PM Feature #11816: Partial safe navigation operator
The `&.` operator has pretty well-defined semantics by now and changing it *may* break some existing code. Maybe a possible alternative would be a similar but separate operator like `&&.` / `and.` which would then intuitively have the sa... Dan0042 (Daniel DeLorme)
04:26 PM Bug #16740: Deprecating and removing the broken Process.clock_getres
I added an explicit list based on the file linked above in a6f7458ea81e084f6ebe7dc5c8cb5b7cb70fe2be.
On the upside it should be even clearer nobody should use this method.
I consider this issue resolved.
Eregon (Benoit Daloze)
04:16 PM Bug #16740: Deprecating and removing the broken Process.clock_getres
I don't think a list of ~15 cases of OS+clock would be helpful there, it's basically all OS we test.
And I doubt anyone would ever bother to update that list anyway.
I think clock_getres() will remain broken or inaccurate forever.
Eregon (Benoit Daloze)
04:25 PM Revision fb40495c (git): * 2020-04-14 [ci skip]
git[bot]
04:23 PM Revision a6f7458e (git): Add a a list of cases for which clock_getres() has been observed to be inaccurate
* See [Bug #16740] Eregon (Benoit Daloze)
01:57 PM Revision c28e230a (git): Improve Hash documentation.
burdettelamar (Burdette Lamar)
12:51 PM Revision 67bcac87 (git): Allow simple R-assign in endless def
nobu (Nobuyoshi Nakada)
07:38 AM Revision 5dc6080c (git): delete CACHELINE
Since https://github.com/ruby/ruby/pull/2888 this macro is no longer
used in any place.
shyouhei (Shyouhei Urabe)
07:06 AM Revision c37a357c (git): include what you use.
This reverts commit 443389effc37308ce1a3c3a840082a344fc6af56.
This reverts commit d94960f22ec2de3a3855305cb51343806d2b46c7.
Inclusion of header files must be explicit. Every file shall directly
include what is necessary.
https://githu...
shyouhei (Shyouhei Urabe)
07:06 AM Revision 4ff3f205 (git): add #include guard hack
According to MSVC manual (*1), cl.exe can skip including a header file
when that:
- contains #pragma once, or
- starts with #ifndef, or
- starts with #if ! defined.
GCC has a similar trick (*2), but it acts more stricter (e. g. there
m...
shyouhei (Shyouhei Urabe)
06:10 AM Revision a3f6f679 (git): Add MJIT_COUNTER macro to dump total_calls
k0kubun (Takashi Kokubun)
03:43 AM Bug #16782: `lock': deadlock; recursive locking (ThreadError) in 2.7.1
Total stab in the dark, but I wonder if it's because the signal handling is interrupting the same thread it's already on? Or something else weird? ioquatix (Samuel Williams)
03:42 AM Bug #16782 (Closed): `lock': deadlock; recursive locking (ThreadError) in 2.7.1
Using the latest `async-http` repo:
```
% bundle exec rspec spec/async/http/performance_spec.rb
Traceback (most recent call last):
11: from /home/samuel/.gem/ruby/2.7.1/gems/async-1.24.2/lib/async/task.rb:258:in `block in make_f...
ioquatix (Samuel Williams)
03:31 AM Feature #15897: `it` as a default block parameter
jeremyevans0 (Jeremy Evans) wrote in #note-39:
> I'm going to close this feature since numbered block parameters were introduced to address it.
Noted. But I think there might have been some confusion.
In my opinion, the spirit o...
joallard (Jonathan Allard)
12:51 AM Misc #16778: Should we stop vendoring default gems code?
CI in general, and in particular Actions (along with actions/checkout@v2) can be done from any repo.
There could a repo (maybe ruby-std-lib-ci) that contained nothing but Actions workflow scripts using Ruby master for all std-lib repo...
MSP-Greg (Greg L)

04/12/2020

08:47 PM Feature #16781 (Open): alias :fold :reduce
1. Method "collect" has short synonym "map", short synonym of "inject" and "reduce" doesn't exist.
2. Name "fold" is more common/popular than "reduce" or "inject".
In my own code I use:
```
module Enumerable
alias :fold :redu...
0x81000000 (/ /)
07:19 PM Revision 82fdffc5 (git): Avoid UB with flexible array member
Accessing past the end of an array is technically UB. Use C99 flexible
array member instead to avoid the UB and simplify allocation size
calculation.
See also: DCL38-C in the SEI CERT C Coding Standard
alanwu (Alan Wu)
03:02 PM Revision f2c3848a (git): * 2020-04-13 [ci skip]
git[bot]
02:29 PM Revision 4c8e3f12 (git): Make rb_scan_args implementations same
between rb_scan_args_set and rb_scan_args_assign +
rb_scan_args_result.
nobu (Nobuyoshi Nakada)
02:04 PM Bug #16776: Regression in coverage library
Eregon (Benoit Daloze) wrote in #note-5:
> Maybe coverage could use a second type of internal tracepoint to fix this issue (internal coverage handlers are likely pure C and so don't emit any extra event)?
Yes, it is the plan B that I...
mame (Yusuke Endoh)
02:01 PM Bug #16776: Regression in coverage library
IMO, TracePoint hooks should have a priority. A TracePoint hook that is first enabled should monitor a hook code that is second enabled:
```ruby
1: TracePoint.new(:line) do |tp|
2: p [:parent, tp]
3: end.enable do
4: TracePoi...
mame (Yusuke Endoh)
01:14 PM Bug #16776: Regression in coverage library
I'm surprised too the coverage stdlib gets hit by this issue.
Maybe coverage could use a second type of internal tracepoint to fix this issue (internal coverage handlers are likely pure C and so don't emit any extra event)?
Eregon (Benoit Daloze)
06:27 AM Bug #16776: Regression in coverage library
I'm not super familiar with `TracePoint`, but at first sight `DeepCover` shouldn't generate any extra callbacks as the instrumenting is minimal, typically adding `$tracker[42] += 1` and taking care to never change the line numbers.
So...
marcandre (Marc-Andre Lafortune)
05:32 AM Bug #16776: Regression in coverage library
I never realized this limitation. I imagine that for the vast majority of users it's a non issue, but for `byebug` it is quite serious. Would you consider using `deep-cover` instead? marcandre (Marc-Andre Lafortune)
01:11 PM Feature #16779: Add sprintf %q format option
`%p` is part of the documentation of `sprintf` but maybe it's not so clear.
PR welcome to improve that documentation.
Eregon (Benoit Daloze)
01:10 PM Feature #16779 (Rejected): Add sprintf %q format option
Eregon (Benoit Daloze)
11:54 AM Feature #16779: Add sprintf %q format option
I am not aware of `%p` format option, this option exactly did what i try to solve.
Thanks.
Someone can close this issue?
gearnode (Bryan Frimin)
10:59 AM Feature #16779: Add sprintf %q format option
`.inspect.dump` double quotes, that doesn't seem readable/useful to me:
```ruby
puts sprintf("%s", "abc".inspect.dump)
# "\"abc\""
```
Eregon (Benoit Daloze)
10:57 AM Feature #16779: Add sprintf %q format option
Isn't `%p` enough (which uses `#inspect`)? Eregon (Benoit Daloze)
11:16 AM Misc #16778: Should we stop vendoring default gems code?
I believe that is a good practice in general because:
* Contributions don't get affected by changes in external dependencies (in this case, the language). So it avoids "CI failures are unrelated" kind of issues.
* It makes finding break...
deivid (David Rodríguez)
11:04 AM Misc #16778: Should we stop vendoring default gems code?
> One issue might be that ruby/ruby changes frequently but the CI of e.g. ruby/ostruct might run infrequently because commits are less frequent there. And yet it could be very useful to identity which ruby/ruby commit broke some standard... deivid (David Rodríguez)
10:45 AM Misc #16778: Should we stop vendoring default gems code?
I think this is a great idea and it would make the stdlib really "just a set of gems".
I'm not sure what should happen regarding CI testing.
One issue might be that ruby/ruby changes frequently but the CI of e.g. ruby/ostruct might...
Eregon (Benoit Daloze)
10:19 AM Misc #16778: Should we stop vendoring default gems code?
Hei @mame!
> When Ruby CI fails, we need to stop the error as soon as possible. It is not acceptable to send a pull request and wait for acceptance. Otherwise, the notification flood makes it hard to detect a new type of failure. This...
deivid (David Rodríguez)
05:05 AM Misc #16778: Should we stop vendoring default gems code?
mame (Yusuke Endoh) wrote in #note-11:
> As a committer who is involved in security release, I'm concerned about the maintenance policy of default gems.
> ...
With git submodules it’s possible to address that issue by applying patch file...
greggzst (Grzegorz Jakubiak)
03:29 AM Misc #16778: Should we stop vendoring default gems code?
As a committer who is involved in security release, I'm concerned about the maintenance policy of default gems.
Consider a recent vulnerability issue of JSON gem (CVE-2020-10663). It looks that JSON gem maintains its only latest versio...
mame (Yusuke Endoh)
02:56 AM Misc #16778: Should we stop vendoring default gems code?
I have one favor as a maintainer of Ruby CIs. If the copies of default gems are removed from ruby/ruby, please allow us (ruby committers) to directly change the upstream of default gems (and rubygems, if you want to remove the rubygems ... mame (Yusuke Endoh)
10:26 AM Feature #16494: Allow hash unpacking in non-lambda Proc
Honestly, after how Matz has stated his opinion, I don't expect there is any room for dialogue.
The only thing I'd like to add is I feel a huge discrepancy in this decision, in my head it happens this way:
1. On the one hand, a lot...
zverok (Victor Shepelev)
09:45 AM Feature #16494: Allow hash unpacking in non-lambda Proc
I am another person with blocks affected in a production application codebase, found sixteen uses.
I see a cluster of people reporting an issue. Are we the tip of an iceberg, or the entire iceberg? There is a school of programmer tha...
inopinatus (Joshua GOODALL)
05:58 AM Feature #16754 (Closed): Pager for `--help`
Applied in changeset commit:git|f22c4ff359498ab342e4b6d6feb21af6004ee270.
----------
View the help message with PAGER [Feature #16754]
View the help message wth pager designed by RUBY_PAGER or PAGER
environment variable, unless that va...
nobu (Nobuyoshi Nakada)
05:58 AM Revision a07cbacd (git): Honor COLUMNS [Feature #16754]
nobu (Nobuyoshi Nakada)
05:58 AM Revision cc68d2fb (git): Hightlight usage [Feature #16754]
nobu (Nobuyoshi Nakada)
05:58 AM Revision 3825662d (git): Set up environment variable for pager [Feature #16754]
nobu (Nobuyoshi Nakada)
05:58 AM Revision e6551d83 (git): PAGER without fork&exec too [Feature #16754]
nobu (Nobuyoshi Nakada)
05:58 AM Revision f22c4ff3 (git): View the help message with PAGER [Feature #16754]
View the help message wth pager designed by RUBY_PAGER or PAGER
environment variable, unless that value is empty.
nobu (Nobuyoshi Nakada)
03:45 AM Revision 5c276818 (git): Enable fastpath on invokesuper (#3021)
Fastpath has not been used for invokesuper since it has set vm_call_super_method on every invocation.
Because it seems to be blocked only by refinements, try enabling fastpath on invokesuper when cme is not for refinements.
While this p...
k0kubun (Takashi Kokubun)
03:20 AM Feature #11816: Partial safe navigation operator
FWIW, EcmaScript 2020 introduced a similar operator, see https://github.com/tc39/proposal-optional-chaining/
. The precedence is between `[]` and `*`, higher than I propose in https://bugs.ruby-lang.org/issues/11816#note-6 but at least ...
marcandre (Marc-Andre Lafortune)
01:09 AM Bug #13962: Change http://unicode.org to https
znz (Kazuhiro NISHIYAMA) wrote in #note-13:
> Making snapshots of 2.5 and 2.6 sometimes failed to download from `http://www.unicode.org`.
> ...
This may be related to http://blog.unicode.org/2020/04/technical-alert-unicode-technical.ht...
duerst (Martin Dürst)
 

Also available in: Atom