Project

General

Profile

Activity

From 10/13/2017 to 10/19/2017

10/19/2017

09:39 PM Feature #14033: Add String#append
I +1 agree with Stefan for symmetry. :)
However had, I may be biased since I discussed in favour of the
Array-methods .prepend() and .append() so it may be best if others
can comment here too, to avoid "mono-view bias". :)
shevegen (Robert A. Heiler)
08:10 PM Feature #14033 (Open): Add String#append
Ruby 2.5 introduces `Array#append` as an alias for `<<` / `push`.
Likewise, there should be `String#append` as an alias for `<<` / `concat`. The documentation for `<<` even says "append":
> Append—Concatenates the given object to s...
sos4nt (Stefan Schüßler)
09:36 PM Bug #14034 (Closed): Time.parse does not handle timezone offsets with seconds
`DateTime.parse` handles them correctly, and `DateTime.parse.to_time` results in the correct time. `Time.parse` doesn't handle them correctly because `Time.zone_offset` uses a different regexp that only considers hours and minutes, not ... jeremyevans0 (Jeremy Evans)
03:38 PM Feature #12589: VM performance improvement proposal
k0kubun (Takashi Kokubun) wrote:
> > An alternative approach can be useful but it might be a waste of your time at the end. But any performance work requires a lot alternative implementations (e.g. the current global RA in GCC was act...
vmakarov (Vladimir Makarov)
08:23 AM Feature #12589: VM performance improvement proposal
> Saving stack insns is what we discussed with Koichi at RubyKaigi and after that. I promised to investigate another way of RTL generation through stack insns. I am now realizing that it might be a better way than generating RTL directly... k0kubun (Takashi Kokubun)
04:19 AM Feature #12589: VM performance improvement proposal
k0kubun (Takashi Kokubun) wrote:
> Hi Vladimir. I was happy to talk with you about JIT at RubyKaigi.
> ...
Hi. I am also glad that I visited RubyKaigi and I got a lot of feedback from my discussions with Koichi, Matz, and you.

> T...
vmakarov (Vladimir Makarov)
02:25 PM Bug #1388 (Rejected): cygwin-1.7, gcc4-4.3, and ruby-1.9. make btest #236 test_io.rb Segmentation fault
Sorry for leaving this ticket untouched, but Ruby 1.9 has been EOL status since a long time ago. If there is anyone who is willing to maintain cygwin ruby, please investigate the current status of the issue and write a patch. mame (Yusuke Endoh)
01:03 PM Feature #908 (Rejected): Should be an easy way of reading N characters from am I/O stream
I'm rejecting this issue since it has been stalled for five years. If anyone really needs it, it would be good to re-organize the discussion all over again. mame (Yusuke Endoh)
12:51 PM Feature #855: HTTP/1.1 fixes and other enhancements to webrick
Eric Wong,
Could you handle this very old ticket about webrick?
mame (Yusuke Endoh)
11:24 AM Bug #13829 (Closed): NUL char in $0
Applied in changeset trunk|r60215.
----------
ruby.c: reject NUL in $0
* ruby.c (ruby_setproctitle): raise if the argument contains NUL
char. process title is a NUL-terminated string.
[ruby-core:82425] [Bug #13829]
nobu (Nobuyoshi Nakada)
11:24 AM Revision f16f0441 (git): ruby.c: reject NUL in $0
* ruby.c (ruby_setproctitle): raise if the argument contains NUL
char. process title is a NUL-terminated string.
[ruby-core:82425] [Bug #13829]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60215 b2dd03c8-39d4-4d8f-98ff-823fe69...
nobu (Nobuyoshi Nakada)
11:10 AM Feature #8948: Frozen regex
matz (Yukihiro Matsumoto) wrote:
> I agree with frozen regexp literals. If you want to freeze all regexp objects, you need more info to persuade me.
> ...
I think the inconsistency between Regexp being freezed by default or not (based ...
Eregon (Benoit Daloze)
08:58 AM Feature #8948: Frozen regex
This change will break compatibility.
If the change has clear benefit, such incompatibility is acceptable.
But this benefit seems not so much.
If so this should be postponed on introducing parallelization.
naruse (Yui NARUSE)
08:26 AM Feature #8948: Frozen regex
I agree with frozen regexp literals. If you want to freeze all regexp objects, you need more info to persuade me.
Matz.
matz (Yukihiro Matsumoto)
11:10 AM Feature #13985 (Closed): Avoid exception for #dup/#clone on Rational and Complex
nobu (Nobuyoshi Nakada)
10:58 AM Feature #13983 (Closed): Rational and Complex should be frozen
Applied in changeset trunk|r60214.
----------
freeze Complex and Rational
* complex.c (nucomp_s_new_internal, nucomp_loader): Complex
instances are always frozen now. [Feature #13983]
* rational.c (nurat_s_new_internal, nurat_loade...
nobu (Nobuyoshi Nakada)
08:16 AM Feature #13983: Rational and Complex should be frozen
Agreed.
Matz.
matz (Yukihiro Matsumoto)
10:58 AM Revision 42c98194 (git): freeze Complex and Rational
* complex.c (nucomp_s_new_internal, nucomp_loader): Complex
instances are always frozen now. [Feature #13983]
* rational.c (nurat_s_new_internal, nurat_loader): Rational
instances are always frozen now. [Feature #13983]
git-svn-i...
nobu (Nobuyoshi Nakada)
10:51 AM Bug #13794: Infinite loop of sched_yield
I'd just like to confirm that after several weeks, I have not seen a recurrence of this issue while running the original PID check patch. Thanks all! catphish (Charlie Smurthwaite)
10:13 AM Feature #12753: Useful operator to check bit-flag is true or false
I think plural makes most sense:
~~~ruby
a.allbits? b #→ a & b == b
a.anybits? b #→ a & b != 0
a.nobits? b #→ a & b == 0
~~~
It introduces a strange paradox, though:
~~~ruby
a.allbits? 0 #→ true
a.nobits? 0 #→ true
~~~
phluid61 (Matthew Kerwin)
07:11 AM Feature #12753: Useful operator to check bit-flag is true or false
Speaking of plurality, what about:
`a.bit?(b)` → `a & b != 0`
`a.bits?(b)` → `a & b == b`
knu (Akinori MUSHA)
06:58 AM Feature #12753: Useful operator to check bit-flag is true or false
`has_*` is not acceptable. It's not compatible with other method names.
I vote for `allbit?`, `anybit?` and `nobit?`. I am not sure about plurality though.
Matz.
matz (Yukihiro Matsumoto)
06:49 AM Feature #12753: Useful operator to check bit-flag is true or false
How about Integer#has_allbits?(n), Integer#has_somebits?(n) and Integer#has_nobits?(n) ?
```ruby
class Integer
def has_allbits?(n) self & n == n end
def has_somebits?(n) self & n != 0 end
def has_nobits?(n) self & n == 0 end...
akr (Akira Tanaka)
09:05 AM Feature #614 (Rejected): instance_method(ancestor)
Even if we provide the proposed feature, we cannot implement `Module#conflict?`, because ancestor order is not common.
```
module A
end
module B
end
module C
include A
include B
end
module D
include B
include ...
matz (Yukihiro Matsumoto)
08:56 AM Feature #13869: Filter non directories from Dir.glob
Just an idea: a flag to say directories should end with a slash so you can collect directories with `"...*/"` and non-directories with `"...*"`. knu (Akinori MUSHA)
08:30 AM Feature #13873: Optimize Dir.glob with FNM_EXTGLOB
Agreed.
Matz
matz (Yukihiro Matsumoto)
07:54 AM Feature #13712: String#start_with? with regexp
Agreed. Need to update `Regexp.last_math`.
Matz.
matz (Yukihiro Matsumoto)
07:48 AM Feature #8499 (Closed): Importing Hash#slice, Hash#slice!, Hash#except, and Hash#except! from ActiveSupport
As `Hash#slice` has been accepted in #13563, I decided to close this issue.
I intend to open the different issue for discussing other methods such as `Hash#except`.
Thanks.
mrkn (Kenta Murata)
07:28 AM Feature #8499: Importing Hash#slice, Hash#slice!, Hash#except, and Hash#except! from ActiveSupport
One concern is that Array#slice! returns deleted elements whereas this Hash#slice! would return pairs left after slicing. knu (Akinori MUSHA)
07:28 AM Feature #13777 (Rejected): Array#delete_all
The name `delete_all` is not acceptable. This method works as a modifying version of `partition`. The name does not indicate the fact. This can be achieved by
```
result = []
ary.delete_if do|e|
if cond(e)
result << e
t...
matz (Yukihiro Matsumoto)
06:50 AM Feature #14025: #initialize with ivars
Where did I define that only one argument could be passed?
I don't want to initialize ivar explicitly in #initialize.
I would like that instead of:
def initialize name='default_name', age=0
@name, @age = name, age
end
I c...
frankpimenta (Frank Pimenta)
05:28 AM Feature #14025: #initialize with ivars
I don't quite understand your second example.
class Person
initialize name: 'person', age: 18
Did you not define before that only one argument can be passed?
class Person
def initialize name = 'person'
B...
shevegen (Robert A. Heiler)
06:49 AM Feature #13969: Dir#each_child
```diff
diff --git a/dir.c b/dir.c
index 44d309195c..242afa131d 100644
--- a/dir.c
+++ b/dir.c
@@ -2743,6 +2743,13 @@ dir_s_each_child(int argc, VALUE *argv, VALUE io)
return Qnil;
}

+static VALUE
+dir_each_child_m(VALU...
nobu (Nobuyoshi Nakada)
06:32 AM Feature #13653 (Assigned): Bundled zlib helper
hsbt (Hiroshi SHIBATA)
06:31 AM Feature #13713 (Feedback): socketの便利メソッドのdatagramのUNIXSocket用対応
こんな感じでどうですかね。
```
Addrinfo.unix(ENV["NOTIFY_SOCKET"], :DGRAM).connect
```
akr (Akira Tanaka)
06:19 AM Feature #12882: Add caller/file/line information to internal Kernel#warn calls
```diff
diff --git a/error.c b/error.c
index 9bd8c31386..499212cdd8 100644
--- a/error.c
+++ b/error.c
@@ -321,10 +321,28 @@ end_with_asciichar(VALUE str, int c)
static VALUE
rb_warn_m(int argc, VALUE *argv, VALUE exc)
{
- ...
nobu (Nobuyoshi Nakada)
05:52 AM Feature #12882 (Feedback): Add caller/file/line information to internal Kernel#warn calls
I prefer option 1. The issue is the name (and semantics) of the keyword argument.
`caller:` seems ambiguous. How about `uplevel:n` to prepend `caller(n,1)` to the message.
Matz.
matz (Yukihiro Matsumoto)
06:10 AM Feature #9323: IO#writev
I vote for making `IO#write` take multiple arguments, probably using `writev(2)` inside.
Matz
matz (Yukihiro Matsumoto)
05:32 AM Bug #14031: WeakRef example misleading and wrong
Semi-off topic - a variable named "omg" is for the win ... ;) shevegen (Robert A. Heiler)
02:43 AM Bug #14031 (Closed): WeakRef example misleading and wrong
I just noticed that the second part of the doc of `WeakRef` is misleading and later plainly wrong.
I'm talking about the example with `WeakHash` in
https://ruby-doc.org/stdlib-2.4.0/libdoc/weakref/rdoc/WeakRef.html
The example sho...
marcandre (Marc-Andre Lafortune)
05:31 AM Feature #14022: String#surround
> After joining the elements of an array into a string using Array#join,
> ...
I do not need to do this often, but I have had a need to do this, largely
due to file names on the *nix commandline that have ' ' characters (space),
so I ...
shevegen (Robert A. Heiler)
05:10 AM Bug #14032 (Closed): squiggly heredoc with an interpolation at the beginning is unindented wrongly
Applied in changeset trunk|r60213.
----------
parse.y: indent at '#'
* parse.y (parser_here_document): update indent at '#', which is
not a space. [ruby-core:83368] [Bug #14032]
nobu (Nobuyoshi Nakada)
05:02 AM Bug #14032 (Closed): squiggly heredoc with an interpolation at the beginning is unindented wrongly
This result should be prefixed with spaces, not unindented.
```ruby
p <<~E
a
#{1}
E
```
nobu (Nobuyoshi Nakada)
05:10 AM Revision 8b501f6d (git): parse.y: indent at '#'
* parse.y (parser_here_document): update indent at '#', which is
not a space. [ruby-core:83368] [Bug #14032]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
04:25 AM Bug #14027 (Closed): Ripper parses squiggly heredoc incorrectly
Applied in changeset trunk|r60212.
----------
lexer.rb: no dedent strings in middle
* ext/ripper/lib/ripper/lexer.rb (on_heredoc_dedent): dedent only
strings at the beginning, not strings in middle.
[ruby-core:83343] [Bug #14027]
nobu (Nobuyoshi Nakada)
01:39 AM Bug #14027: Ripper parses squiggly heredoc incorrectly
I'm very sorry nobu, I copy and pasted the wrong script.
This is what I meant to express:
~~~
diff -u <(ruby -v -rripper -rpp -e 'pp Ripper.lex("<<-E\n\#{1} \#{2}\nE")') \
<(ruby -v -rripper -rpp -e 'pp Ripper.lex("<<~E\n\#{1} \#...
mjago (Martyn Jago)
04:25 AM Revision 0e7936f8 (git): lexer.rb: no dedent strings in middle
* ext/ripper/lib/ripper/lexer.rb (on_heredoc_dedent): dedent only
strings at the beginning, not strings in middle.
[ruby-core:83343] [Bug #14027]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60212 b2dd03c8-39d4-4d8f-98ff-823fe6...
nobu (Nobuyoshi Nakada)
01:46 AM Feature #13581: Syntax sugar for method reference
matz (Yukihiro Matsumoto) wrote:
> I am for adding syntax sugar for method reference. But I don't like proposed syntax (e.g. `->`).
> ...
What do you think about: `Kernel:puts`, `Kernel~>puts`, `Kernel:>puts` ?
americodls (Americo Duarte)
01:02 AM Bug #14013: [PATCH] Webrick 60172 fix
Greg.mpls@gmail.com wrote:
> Thanks. I tested 60211. My local build passed, Travis passed, and Appveyor passed.

Thanks for your help with testing this!

> Now maybe I can finally write the code to run a Webrick SSL server locall...
normalperson (Eric Wong)
12:05 AM Bug #14013: [PATCH] Webrick 60172 fix
Eric,
Thanks. I tested 60211. My local build passed, Travis passed, and Appveyor passed.
Now maybe I can finally write the code to run a Webrick SSL server locally. I normally use Puma or Thin...
> I've considered it, but it...
MSP-Greg (Greg L)

10/18/2017

11:41 PM Bug #14013: [PATCH] Webrick 60172 fix
```
Eric Wong <normalperson@yhbt.net> wrote:
> Oops, try r60210; I moved the return outside of the timeout
> block.

Erm, make that r60211 :x

```
normalperson (Eric Wong)
11:31 PM Bug #14013: [PATCH] Webrick 60172 fix
```
Greg.mpls@gmail.com wrote:
> Bad news. Appveyor just failed with:

Oops, try r60210; I moved the return outside of the timeout
block.

> Re the patch you included above, can you please bracket it
> with triple backticks (\`...
normalperson (Eric Wong)
10:59 PM Bug #14013: [PATCH] Webrick 60172 fix
Eric,
Bad news. Appveyor just failed with:
```
1) Failure:
TestNetHTTPS#test_certificate_verify_failure [C:/projects/ruby/test/net/http/utils.rb:48]:
<[]> expected but was
<["[2017-10-18 22:01:37] ERROR LocalJumpError: unexp...
MSP-Greg (Greg L)
09:51 PM Bug #14013: [PATCH] Webrick 60172 fix
Eric Wong <normalperson@yhbt.net> wrote:
> Greg.mpls@gmail.com wrote:
> > Issue #14013 has been updated by MSP-Greg (Greg L).
> >
> > File webrick_ssl.patch added
> >
> > I posted [GitHub PR #1718](https://github.com/ruby/ruby/p...
normalperson (Eric Wong)
09:02 PM Bug #14013: [PATCH] Webrick 60172 fix
Greg.mpls@gmail.com wrote:
> Issue #14013 has been updated by MSP-Greg (Greg L).
>
> File webrick_ssl.patch added
>
> I posted [GitHub PR #1718](https://github.com/ruby/ruby/pull/1718), which passed both Travis & Appveyor. It al...
normalperson (Eric Wong)
08:51 PM Bug #14013: [PATCH] Webrick 60172 fix
Greg.mpls@gmail.com wrote:
> Eric wrote:
> > Also, does test/openssl/test_pair.rb work for you?

Oops, I mean how accept_nonblock worked in that test. In other
words, can you try this to dump all the outputs?

diff --git a/test...
normalperson (Eric Wong)
07:29 PM Bug #14013: [PATCH] Webrick 60172 fix
I posted [GitHub PR #1718](https://github.com/ruby/ruby/pull/1718), which passed both Travis & Appveyor. It also passes on my local MinGW trunk build
Rather than an OS check, it checks to see if the `#wait_*` methods return `nil`.
B...
MSP-Greg (Greg L)
03:51 AM Bug #14013: [PATCH] Webrick 60172 fix
Eric,
I'm about to 'go offline', but the following fails when replacing the case statement group
```ruby
ret = sock.accept_nonblock(exception: false)
if ret == :wait_readable || ret == :wait_writable
sock.to_io.__send__(ret)
...
MSP-Greg (Greg L)
03:09 AM Bug #14013: [PATCH] Webrick 60172 fix
normalperson (Eric Wong) wrote:
> Also, does test/openssl/test_pair.rb work for you?
Yes.
> ...
Yes. Changes (needed `#to_io`), starting at line 401:
```ruby
th = Thread.new do
rets = []
begin
rv...
MSP-Greg (Greg L)
11:37 PM Bug #14005 (Closed): [PATCH] webrick: do not hang acceptor on slow TLS connections
normalperson (Eric Wong)
11:37 PM Bug #14005 (Open): [PATCH] webrick: do not hang acceptor on slow TLS connections
needs r60211, too :x
normalperson (Eric Wong)
11:34 PM Revision cda27e1a (git): webrick: fix up r60172 and r60210
Thanks to MSP-Greg (Greg L) for helping with this.
* lib/webrick/server.rb (start_thread): properly fix non-local return
introduced in r60208 and r60210
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60211 b2dd03c8-39d4-4d8f-98ff-...
Eric Wong
11:23 PM Revision 834c252e (git): webrick: fix up r60172 and r60208
Thanks to MSP-Greg (Greg L) for helping with this.
* lib/webrick/server.rb (start_thread): fix non-local return
introduced in r60208
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
10:13 PM Bug #14027 (Feedback): Ripper parses squiggly heredoc incorrectly
I can see only difference at the first line.
```
$ diff -u <(./ruby -v -rripper -rpp -e 'pp Ripper.lex("%{<<-E\n\#{1} \#{2}\nE}")') \
<(./ruby -v -rripper -rpp -e 'pp Ripper.lex("%{<<~E\n\#{1} \#{2}\nE}")')
```
```diff
--- /dev...
nobu (Nobuyoshi Nakada)
03:15 PM Bug #14027 (Closed): Ripper parses squiggly heredoc incorrectly
Where you have two or more embedded expressions on the same line within a squiggly heredoc
seperated by whitespace, Ripper considers that whitespace as ignored space despite it not being at the
beginning of a line. Below is a diff of l...
mjago (Martyn Jago)
09:45 PM Revision 60702188 (git): * 2017-10-19
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
09:45 PM Revision 3b1db7d3 (git): webrick: fix up r60172 and revert r60189
Thanks to MSP-Greg (Greg L) for helping with this.
* lib/webrick/server.rb (start_thread): ignore ECONNRESET, ECONNABORTED,
EPROTO, and EINVAL on TLS negotiation errors the same way they
were ignored before r60172 in the accept_clie...
Eric Wong
09:16 PM Bug #14015: Enumerable & Hash yielding arity
Would it be possible to issue a warning for cases of lambdas with arity 1 used in 2.5, so we can go forward in the next version? marcandre (Marc-Andre Lafortune)
07:44 PM Feature #14025: #initialize with ivars
~~~ ruby
module ObjectInitialization
def self.included base
base.class_eval do
extend ClassMethods
end
end
module ClassMethods
def attr_initializer default_arguments={}
raise Ru...
frankpimenta (Frank Pimenta)
02:47 PM Feature #14025 (Open): #initialize with ivars
For:
class Person
def initialize name = 'person'
@name = name
end
end
I thought that the following would be nice:
class Person
initialize :name
end
class Person
initialize name: 'person', age: 18...
frankpimenta (Frank Pimenta)
07:22 PM Bug #14028 (Closed): RubyVM logic backported into Ruby 2.3 tests
For https://bugs.ruby-lang.org/issues/12517 a test was added to test/coverage/test_coverage.rb that uses RubyVM.
This test is used by JRuby (at least) which does not support the MRI-specific RubyVM module. As a result, we cannot run t...
headius (Charles Nutter)
07:04 PM Feature #14022: String#surround
+1, I often do "<" + long_chain + ">" because "<#{long_chain}>" tends to be harder to read, and wished there was such a method.
Making it part of #join might be slightly more efficient, but it would make the signature more complex, li...
Eregon (Benoit Daloze)
12:41 PM Feature #14022: String#surround
+1
i thought i have seen something like that before, but i don't remember where
ah now i remember, it was for JQuery#wrap http://api.jquery.com/wrap/
i think such a surround method might be used for xml stuff and other similar one...
Hanmac (Hans Mackowiak)
09:10 AM Feature #14022: String#surround
+1 for that (and exactly for the method chains).
Always define `String#surround` in my internal projects.
zverok (Victor Shepelev)
06:20 AM Feature #14022: String#surround
@mame In addition to conciseness, I often need to do this kind of string formatting after having done a long method chaining on an array. In that case, having to do string format from the beginning is not convenient.
```ruby
"<#{some...
sawa (Tsuyoshi Sawada)
06:07 AM Feature #14022: String#surround
IMO `"<#{ foo }>"` is more concise than `foo.surround("<", ">")`. mame (Yusuke Endoh)
04:43 AM Feature #14022: String#surround
I would like both destructive and non-destructive versions of the method. sawa (Tsuyoshi Sawada)
04:38 AM Feature #14022 (Rejected): String#surround
After joining the elements of an array into a string using `Array#join`, I frequently need to put substrings before and after the string. In such case, I would have to use either of the following:
```ruby
[1, 2, 3].join(", ").prepend...
sawa (Tsuyoshi Sawada)
06:45 PM Feature #12589: VM performance improvement proposal
Hi Vladimir. I was happy to talk with you about JIT at RubyKaigi.
To help introducing RTL and MJIT to upstream Ruby core safely, I'm wondering if we might experimentally introduce optional (switchable by -j option) JIT infrastructure ...
k0kubun (Takashi Kokubun)
03:13 PM Bug #14024 (Closed): Segment fault on OpenSSL::Cipher#auth_data=
Since CFB isn't an authenticated encryption mode, OpenSSL::Cipher#auth_data= must not be called. It is definitely a bug that calling it crashes, though.
https://github.com/ruby/openssl/commit/bb10767b0570d44f240632a7399c882764a48649
rhenium (Kazuki Yamaguchi)
02:03 PM Bug #14024 (Closed): Segment fault on OpenSSL::Cipher#auth_data=
The doc of *auth_data=* says that "If no associated data shall be used, this method must still be called with a value of '' . " http://ruby-doc.org/stdlib-2.4.2/libdoc/openssl/rdoc/OpenSSL/Cipher.html#method-i-auth_data-3D
But if I cal...
darfux (Lee YX)
02:53 PM Bug #14026: RUBY ERROR ON DIVISION with FDIV
Screen shot is better for the eye. frankpimenta (Frank Pimenta)
02:49 PM Bug #14026 (Closed): RUBY ERROR ON DIVISION with FDIV
~$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-darwin16]
~$ rvm use 2.4.2
Using /Users/frankpimenta/.rvm/gems/ruby-2.4.2
~$ ruby -rbigdecimal -e 'p 196.fdiv(BigDecimal("13.0"))'
2.203413367e-314
~$ rvm use 2....
frankpimenta (Frank Pimenta)
01:08 PM Revision 4a375f3e (git): parse.y: serial comparisons
* parse.y (rel_expr): warn sequence of comparisons, which would be
probably unintentional. [EXPERIMENTAL]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:08 PM Revision c1c3d073 (git): parse.y: relop
* parse.y (relop): extract to simplify comparisons.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
08:10 AM Bug #14023 (Rejected): SyntaxError on array argument and block
~~~
$ RBENV_VERSION=2.4.2 ruby -v
ruby 2.4.2p198 (2017-09-14 revision 59899) [x86_64-darwin16]
$ RBENV_VERSION=2.4.2 ruby -c -e 'a [] {}'
Syntax OK
$ RBENV_VERSION=2.5.0-preview1 ruby -v
ruby 2.5.0preview1 (2017-10-10 trunk 601...
k0kubun (Takashi Kokubun)
06:24 AM Bug #13959 (Rejected): IO.write(filename, Marshal.dump(obj), :encoding => 'binary') != File.open(filename, 'wb') { |fil| Marshal.dump(obj, fil) }
`:encoding => 'binary'` does not set binmode, but just makes the result encoding ASCII-8bit.
Use `IO.binread` and `IO.binwrite` to read/write binary data.
nobu (Nobuyoshi Nakada)
04:35 AM Revision 05fee6c1 (git): * 2017-10-18
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
04:35 AM Revision 20685cdc (git): Get rid of shadowing local variables
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
02:12 AM Feature #13996: [PATCH] file.c: apply2files releases GVL
In the same vein as https://bugs.ruby-lang.org/issues/13996

There's 4 more patches to dir.c around opendir, readdir, openat,
and chdir.

I don't think releasing GVL around rewinddir is necessary, since
AFAIK; it's just an lseek a...
normalperson (Eric Wong)
12:22 AM Feature #13996: [PATCH] file.c: apply2files releases GVL
I wrote:
> > https://bugs.ruby-lang.org/issues/13996
>
> Updated patch with benchmark, now:
>
> https://80x24.org/spew/20171012191218.1624-1-e@80x24.org/raw
>
> This hurts performance on fast filesystem, but these methods
...
normalperson (Eric Wong)

10/17/2017

07:32 PM Bug #13887: test/ruby/test_io.rb may get stuck with FIBER_USE_NATIVE=0 on Linux
s.wanabe@gmail.com wrote:
> Assignee set to ko1 (Koichi Sasada)
> https://bugs.ruby-lang.org/issues/13887#change-66853

ko1: ping?
normalperson (Eric Wong)
04:32 PM Bug #14013: [PATCH] Webrick 60172 fix
Greg.mpls@gmail.com wrote:
> diff --git a/lib/webrick/server.rb b/lib/webrick/server.rb
> index 2d678273e5..57ffe5a48b 100644
> --- a/lib/webrick/server.rb
> +++ b/lib/webrick/server.rb
> @@ -295,12 +295,14 @@ def start_thread(sock...
normalperson (Eric Wong)
03:49 PM Bug #14013: [PATCH] Webrick 60172 fix
Eric, thanks.
I was working some read_nonblock code at the same time...
> There's also no need to call .to_io with IO.select, as it's already done transparently.
Aware of that, it was used in several ruby doc examples...
Anyw...
MSP-Greg (Greg L)
12:40 PM Misc #14019 (Closed): Layout fixes in rdoc of lib/tempfile.rb
Applied in changeset trunk|r60203.
----------
tempfile.rb: [DOC] all arguments [ci skip]
* lib/tempfile.rb (Tempfile.create): mention the other arguments
too. [ruby-core:83321] [Misc #14019]
nobu (Nobuyoshi Nakada)
12:07 PM Misc #14019: Layout fixes in rdoc of lib/tempfile.rb
Why change from `*args` to `**options`?
I thinks `all arguments` do not mean `**options` only but basename, tmpdir, `mode:`, and `**options`.
znz (Kazuhiro NISHIYAMA)
05:44 AM Misc #14019: Layout fixes in rdoc of lib/tempfile.rb
The change has been merged, this report can be closed herwinw (Herwin Quarantainenet)
12:40 PM Revision 593d9786 (git): tempfile.rb: [DOC] all arguments [ci skip]
* lib/tempfile.rb (Tempfile.create): mention the other arguments
too. [ruby-core:83321] [Misc #14019]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60203 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:30 PM Revision ecf61fa5 (git): node.c: all node types
* node.c (dump_node): moved rb_bug for unknown node outside to let
unhandled node types be warned.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:30 PM Revision 4e01c507 (git): node.c: adjust indent
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
12:05 PM Revision ee34bbbc (git): compile.c: compile_for
* compile.c (compile_for): extract from iseq_compile_each.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:05 PM Revision e0ef514a (git): compile.c: compile_iter
* compile.c (compile_iter): extract from iseq_compile_each.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
11:59 AM Bug #14020 (Closed): Not really a bug, more a warning - in net/ftp.rb line 331, unused variable sock
Applied in changeset trunk|r60198.
----------
Fix warning: assigned but unused variable
[Bug #14020][ruby-core:83313]
Anonymous
11:58 AM Revision 73d128ff (git): Fix warning: assigned but unused variable
[Bug #14020][ruby-core:83313]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
znz (Kazuhiro NISHIYAMA)
11:38 AM Revision c5fd4cd7 (git): Improve some annotation names of output of parsetree-with-comment
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e mame (Yusuke Endoh)
11:13 AM Revision 0c8292cb (git): node.c: Add NODE_OP_CDECL to dump node list.
* node.c (dump_node): Add NODE_OP_CDECL to dump node list.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
yui-knk (Kaneko Yuichiro)
09:30 AM Bug #13872: Duplicate assignment no longer silences "assigned but unused variable" warning
There could be:
1. add assignments in user code
2. enable duplicate assignment as a special case
3. add another way to suppress warnings, e.g. magic comment
4. etc
nobu (Nobuyoshi Nakada)
12:16 AM Bug #13872: Duplicate assignment no longer silences "assigned but unused variable" warning
Yes, in my understanding that is exactly the case we use this idiom for, usually when the contents of ERB is user-given and so it's uncertain if the local variable 'foo' will be used there or not.
```diff
require 'erb'
-foo = :bar
...
matsuda (Akira Matsuda)
07:41 AM Revision 2075bc51 (git): Fix the leak in `TestRDocGeneratorDarkfish#test_generated_method_with_html_tag_yield`
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e mame (Yusuke Endoh)
07:41 AM Revision 16b6fe17 (git): Suppress leak of file descriptors
`Bundler.ui=` in `Gem::TestCase#setup` creates `Bundler::UI::RGProxy`
which inherites `::Gem::SilentUI` whose `initialize` opens `/dev/null`,
and assigns it to `Gem::DefaultUserInteraction.ui`.
After that, `Gem::TestCase#setup` forces to...
mame (Yusuke Endoh)

10/16/2017

11:11 PM Revision 6b4cd8a9 (git): Layout fixes in rdoc of lib/tempfile.rb [ci skip]
RDoc doesn't understand an asterisk inside the plus markers. Moving them
out of the markers looks better.
[Fix GH-1716]
From: Herwin Weststrate <herwinw@herwinw.nl>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60193 b2dd03c8-39...
nobu (Nobuyoshi Nakada)
08:50 PM Bug #14021 (Rejected): Block parsing with arguments
Duplicate of #13547, #13691, #13898, #13939, and #13976 jeremyevans0 (Jeremy Evans)
08:27 PM Bug #14021 (Rejected): Block parsing with arguments
It appears that between 2.4.1 and 2.4.2, something changed with method argument parsing:
~~~
$ cat test.rb
#!/usr/bin/env ruby
def test(num)
p num
yield
end
test 5 { puts 'hello world' }
$ rbenv shell 2.4.1
$ ruby -...
kddnewton (Kevin Newton)
08:21 PM Bug #14013: [PATCH] Webrick 60172 fix
Odd, so using IO#wait_*able methods doesn't work for you, but
IO.select does? Can you try the following patch?

It's basically your patch with "writable" spelled correctly:

```
diff --git a/lib/webrick/server.rb b/lib/webrick/se...
normalperson (Eric Wong)
03:23 PM Bug #14013: [PATCH] Webrick 60172 fix
Eric,
Thank you for looking at this, along with r60189. It seems that the Appveyor mswin builds are still failing on TestNetHTTPS#test_certificate_verify_failure.
Since many contributors are not using (or familiar with) Windows, I...
MSP-Greg (Greg L)
04:41 AM Bug #14013: [PATCH] Webrick 60172 fix
Greg.mpls@gmail.com wrote:
> Issue #14013 has been updated by MSP-Greg (Greg L).
>
> File webrick_60172_fix.patch added

Thanks, I based r60189 on your patch to webrick/server.rb

However, I'm unsure about the test/net/http/test...
normalperson (Eric Wong)
04:34 AM Bug #14013 (Closed): [PATCH] Webrick 60172 fix
Applied in changeset trunk|r60189.
----------
webrick: fix up r60172
By making the socket non-blocking in r60172, TLS/SSL negotiation
via the SSL_accept function must handle non-blocking sockets
properly and retry on SSL_ERROR_WANT_REA...
Anonymous
07:42 PM Revision dc8865e8 (git): * 2017-10-17
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
07:42 PM Revision 00308ec0 (git): spec/ruby/optional/capi/io_spec.rb: speling fics
* spec/ruby/optional/capi/io_spec.rb: speling: s/writeable/writable/
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60191 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
04:57 PM Feature #13610: IPAddr doesn't provide helpful methods to get the subnet or IP address
I think #11210 is the better solution here, since that has additional possibilities to get the formatting of the subnet mask (so you could easily output /24 instead of 255.255.255.0) herwin (Herwin W)
03:34 PM Bug #14020 (Closed): Not really a bug, more a warning - in net/ftp.rb line 331, unused variable sock
Hello ruby folks,
Just a tiny warning after I compiled the latest svn from source:
/Programs/Ruby/16.10.2017/lib/ruby/2.5.0/net/ftp.rb:331: warning: assigned but unused variable - sock
Not sure how to resolve this; if it is no...
shevegen (Robert A. Heiler)
11:25 AM Misc #14019 (Closed): Layout fixes in rdoc of lib/tempfile.rb
https://github.com/ruby/ruby/pull/1716 herwinw (Herwin Quarantainenet)
06:44 AM Bug #14009: macOS High Sierra and “fork” compatibility
myst (Boaz Segev) wrote:
> It would probably work exactly like the patch, except it will be user controlled instead of persistent.
It's a temporary repair until the next release, of course.
nobu (Nobuyoshi Nakada)
01:01 AM Bug #14009: macOS High Sierra and “fork” compatibility
I'm happy this was merged to the Ruby trunk.
> Just an idea, environment variable DYLD_INSERT_LIBRARIES=/System/Library/Frameworks/Foundation.framework/Versions/Current/Foundation doesn't work?
Interesting idea :)
It would proba...
myst (Boaz Segev)
06:16 AM Bug #14018: Sidekiq rejects output of Marshal.dump
Cross-submitted to Sidekiq at https://github.com/mperham/sidekiq/issues/3638 zheka (Eugene Mirkin)
06:13 AM Bug #14018 (Third Party's Issue): Sidekiq rejects output of Marshal.dump
I encountered this bug when using ActiveJob in Rails. Here is what happens...
`parcel = Marshal.dump(1508129809)` # => "\x04\bl+\a\x11<\xE4Y"
`MyJob.perform_later(parcel)` # this is where the error happens (as the parcel is being pr...
zheka (Eugene Mirkin)
05:00 AM Revision 90ab739a (git): configure.ac: fix SOEXT on Windows
* configure.ac (SOEXT): shoud be "dll" on Windows.
[ruby-core:83208] [Bug #14002]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
04:33 AM Revision 525ebb86 (git): webrick: fix up r60172
By making the socket non-blocking in r60172, TLS/SSL negotiation
via the SSL_accept function must handle non-blocking sockets
properly and retry on SSL_ERROR_WANT_READ/SSL_ERROR_WANT_WRITE.
OpenSSL::SSL::SSLSocket#accept cannot do that p...
Eric Wong
04:19 AM Revision 885c16c1 (git): test_complex.rb: NaN Complex
* test/ruby/test_complex.rb (test_finite_p): assertions for NaN
Complex. NaN is not an infinite nor a finite number.
[ruby-core:83272] [Bug #14014]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60188 b2dd03c8-39d4-4d8f-98ff-823...
nobu (Nobuyoshi Nakada)
04:15 AM Revision ae0eea21 (git): fix missing variables in ruby.pc
* configure.ac (LIBRUBY_SO): get rid of referrence to
LIBRUBY_SONAME which is not present in ruby.pc.
* template/ruby.pc.in (RUBY_API_VERSION, SOEXT): add new
variables. [ruby-core:83208] [Bug #14002]
git-svn-id: svn+ssh://ci.ruby...
nobu (Nobuyoshi Nakada)
04:08 AM Bug #13872: Duplicate assignment no longer silences "assigned but unused variable" warning
ronnie@dio.jp wrote:
> Please upgrade your code to actually "use" all the assigned
> local variables, in this case, to `var = "foo"; var = var`.

The problem is with binding:

require 'erb'
foo = :bar
puts ERB.new('<%= foo %>...
normalperson (Eric Wong)
02:23 AM Bug #13872: Duplicate assignment no longer silences "assigned but unused variable" warning
This is not a bug. The warning you see is a result of an improvement of "unused variable" detection at r59585.
Now it simply checks whether each variable is actually "used" or not. Please also take a look at #13809 to see what was solve...
matsuda (Akira Matsuda)
02:43 AM Feature #14007: open mode 'x' to raise error if file exists
Sorry, I didn't know that feature #11258 existed. I might have searched bugs.ruby-lang.org for "open mode" but not looked through the long list of results. kernigh (George Koehler)

10/15/2017

11:21 PM Feature #10085 (Closed): Add non-ASCII case conversion to String#upcase/downcase/swapcase/capitalize
Close way overdue, should have happened somewhere around r55281. duerst (Martin Dürst)
08:02 PM Feature #6647: Exceptions raised in threads should be logged
FWIW, I enabled Thread.report_on_exception = true by default in ruby/spec.
I had to change a few specs, but I think it really improved the specs rather than being cumbersome.
See https://github.com/ruby/spec/pull/517 for details.
I ...
Eregon (Benoit Daloze)
05:50 PM Bug #13163: Uncaught exceptions may not be reported when Thread#report_on_exception=true and Thread#abort_on_exception=true
I believe we only need a 2.4 backport, Thread#report_on_exception is only defined from Ruby 2.4+. Eregon (Benoit Daloze)
05:34 PM Bug #14017: Hash.sort_by inconsistent between 2.2.6 and upper versions
nobu (Nobuyoshi Nakada) wrote:
> Ruby's sort method is not stable sort.
> ...
Just to be cristal clear:
A sort being stable means that when values are the same, the elements stay in the original order.
This would mean that the or...
duerst (Martin Dürst)
05:11 PM Bug #14017: Hash.sort_by inconsistent between 2.2.6 and upper versions
got it, forgot to check the doc. Thx for clearing that up! chucke (Tiago Cardoso)
04:57 PM Bug #14017: Hash.sort_by inconsistent between 2.2.6 and upper versions
chucke (Tiago Cardoso) wrote:
> The bug occurs when sorting by a numeric value and two different keys have similar values: It is very easily demonstrated here:
It is not a bug.
> ...
Ruby's sort method is not stable sort.
The d...
nobu (Nobuyoshi Nakada)
04:54 PM Bug #14017 (Rejected): Hash.sort_by inconsistent between 2.2.6 and upper versions
Ruby 2.2 is in the security maintenance phase, see https://bugs.ruby-lang.org/projects/ruby/wiki/ReleaseEngineering
As this is not a security issue, it is not suitable for backporting to ruby 2.2.
jeremyevans0 (Jeremy Evans)
04:25 PM Bug #14017 (Rejected): Hash.sort_by inconsistent between 2.2.6 and upper versions
The bug occurs when sorting by a numeric value and two different keys have similar values: It is very easily demonstrated here:
```ruby
enc = {"foo"=>0.9, "bar"=>1.0, "identity"=>1.0}
enc.sort_by { |_, q| -q }
# in ruby 2.2.6
#=...
chucke (Tiago Cardoso)
04:05 PM Revision 653263d0 (git): * 2017-10-16
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60186 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
04:05 PM Revision 1ebb148a (git): error.c: [DOC] fix typo [ci skip]
* error.c (RuntimeError): example code uses Kernel#raise instance
method, not Kernel.raise singleton method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60185 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:31 PM Bug #14015: Enumerable & Hash yielding arity
Perhaps ruby 3.x?
To be honest, while I agree with Marc here, if only for consistency, I
think it is probably not the biggest issue overall. I use yield a lot
but most of my use cases are very simple with yield. Not that I am sayin...
shevegen (Robert A. Heiler)
04:40 AM Bug #14015: Enumerable & Hash yielding arity
Reading more, I see that in some cases there were differences between a lambda with arity 2 and a method with arity 2.
In particular, the change of `Hash#map` in Ruby 2.4.2 was only for methods, but lambdas were working before. What a m...
marcandre (Marc-Andre Lafortune)
01:21 AM Bug #14015: Enumerable & Hash yielding arity
We know, but can't fix for backward compatibilities, now. nobu (Nobuyoshi Nakada)
11:24 AM Bug #14014 (Closed): NaN.finite?
nobu (Nobuyoshi Nakada)
09:26 AM Bug #14014: NaN.finite?
Should this be marked as closed rather than rejected and a test be added for NaN for the backport to be performed then? Eregon (Benoit Daloze)
09:50 AM Bug #14009: macOS High Sierra and “fork” compatibility
Just an idea, environment variable `DYLD_INSERT_LIBRARIES=/System/Library/Frameworks/Foundation.framework/Versions/Current/Foundation` doesn't work? nobu (Nobuyoshi Nakada)
04:46 AM Bug #14016: URI IPv6 address can't be used to open socket
> if someone be so kind as to edit/replace the original description,
> ...
I think there may be a few who could modify it (not me); at the
least the title can be changed, but possibly also the body of
the message. For some reason, the...
shevegen (Robert A. Heiler)
03:10 AM Feature #13224: Add FrozenError as a subclass of RuntimeError
Out of topic, `Kernel.raise` in examples should be `Kernel#raise`, I think. nobu (Nobuyoshi Nakada)
02:51 AM Feature #13224: Add FrozenError as a subclass of RuntimeError
Matz accepted this feature about 6 months ago, but it didn't make it into 2.5.0-preview1. Attached is an updated patch that applies to current trunk. jeremyevans0 (Jeremy Evans)
02:31 AM Revision b6251910 (git): configure.ac: fix SONAME
* configure.ac (RUBY_SO_NAME): revert $(RUBY_API_VERSION:.=) to
$(MAJOR)$(MINOR), as a string in middle is not replaced.
[ruby-core:83208] [Bug #14002]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60184 b2dd03c8-39d4-4d8f-98ff-...
nobu (Nobuyoshi Nakada)
02:20 AM Revision b1ef4d80 (git): envutil.rb: precommand in invoke_ruby [ci skip]
* test/lib/envutil.rb (invoke_ruby): add precommand option to
invoke ruby via some other commands, e.g., sudo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)

10/14/2017

11:28 PM Bug #14016: URI IPv6 address can't be used to open socket
And more inconsistencies when trying to patch Net::HTTP's usage:
```ruby
# forcing here "::1" so that I can open the socket
irb(main):015:0> conn = Net::HTTP.new("::1", 9292)
=> #<Net::HTTP ::1:9292 open=false>
irb(main):016:0> co...
chucke (Tiago Cardoso)
11:15 PM Bug #14016: URI IPv6 address can't be used to open socket
Another notable inconsistency (when compared with the second example above):
```ruby
uri.host = "::1" #=> URI::InvalidComponentError: bad component(expected host component): ::1
```
chucke (Tiago Cardoso)
11:08 PM Bug #14016: URI IPv6 address can't be used to open socket
I got the last one wrong:
```ruby
TCPSocket.new("[::1]", 9292) #=> getaddrinfo: nodename nor servname provided, or not known)
```
if someone be so kind as to edit/replace the original description, I'd be very thankful.
chucke (Tiago Cardoso)
11:07 PM Bug #14016 (Rejected): URI IPv6 address can't be used to open socket
The example occurred when trying to use IPv6 to establish communication between HTTP client and server.
I first created an URI, passed it to Net::HTTP.get, and it blew with the following message:
```
SocketError: Failed to open TC...
chucke (Tiago Cardoso)
08:26 PM Bug #14015: Enumerable & Hash yielding arity
I'm attaching a script I used to test this, in case it can be helpful marcandre (Marc-Andre Lafortune)
08:19 PM Bug #14015 (Closed): Enumerable & Hash yielding arity
The subtle difference between `yield 1, 2` and `yield [1, 2]` has always confused me.
Today I wanted to pass a method to Hash#flat_map and realized how it's even more confusing than I thought.
I assumed that `Hash#each` was calling...
marcandre (Marc-Andre Lafortune)
04:28 PM Bug #14014: NaN.finite?
Thanks, sorry I should have tested trunk. marcandre (Marc-Andre Lafortune)
03:28 PM Bug #14014: NaN.finite?
Not yet, it's r60040. nobu (Nobuyoshi Nakada)
11:53 AM Bug #14014: NaN.finite?
Has this been backported to the 2.4 branch? I think it should.
What commit fixed it?
Eregon (Benoit Daloze)
01:44 AM Bug #14014 (Rejected): NaN.finite?
NaN is not a (either infinite or finite) number, definitely.
Also it is not positive nor negative, so its signedness is nonsense too.
`Complex(0/0.0, 0).finite?` returns `false` in the trunk already.
nobu (Nobuyoshi Nakada)
03:55 PM Bug #14009 (Closed): macOS High Sierra and “fork” compatibility
Applied in changeset trunk|r60182.
----------
configure.ac: link Foundation framework
* configure.ac (XLDFLAGS): link against Foundation framework and
let __NSPlaceholderDictionary initialize, to get rid of crash
after fork on macO...
nobu (Nobuyoshi Nakada)
01:54 AM Bug #14009: macOS High Sierra and “fork” compatibility
Thank you for the confirmation.
As for "useless" library link, `-u` linker option could force to link it.
You can see which libraries are linked dynamically, by `otool -L` command.
nobu (Nobuyoshi Nakada)
03:55 PM Revision 8b182a7f (git): configure.ac: link Foundation framework
* configure.ac (XLDFLAGS): link against Foundation framework and
let __NSPlaceholderDictionary initialize, to get rid of crash
after fork on macOS High Sierra. [ruby-core:83239] [Bug #14009]
git-svn-id: svn+ssh://ci.ruby-lang.org/r...
nobu (Nobuyoshi Nakada)
03:38 PM Bug #14002: libruby soname is changing in Ruby 2.4.x while it should always be libruby.so.2.4.0
And created a gem to update `RbConfig`.
https://github.com/nobu/rbconfig-update
nobu (Nobuyoshi Nakada)
03:35 PM Bug #14002 (Closed): libruby soname is changing in Ruby 2.4.x while it should always be libruby.so.2.4.0
Applied in changeset trunk|r60180.
----------
configure.ac: LIBRUBY_SONAME
* configure.ac (LIBRUBY_SONAME): add new variable for the name of
the library name with compatibility version.
[ruby-core:83208] [Bug #14002]
nobu (Nobuyoshi Nakada)
03:35 PM Revision 52fcf03d (git): * 2017-10-15
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:35 PM Revision c739150c (git): configure.ac: LIBRUBY_SONAME
* configure.ac (LIBRUBY_SONAME): add new variable for the name of
the library name with compatibility version.
[ruby-core:83208] [Bug #14002]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60180 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
03:34 AM Bug #14013: [PATCH] Webrick 60172 fix
Original patch file did not allow for cert file values of nil. Corrected in attached version. Patch was used on most recent Appveyor build, all tests passed. MSP-Greg (Greg L)
02:17 AM Revision 25aec0b8 (git): distinguish pass and fail by highlight [ci skip]
* tool/colorize.rb: remove highlight attribute from "pass" to make
distinguishable from "fail" by other than red-green colors.
* tool/ifchange: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60179 b2dd03c8-39d4-4d8f-98ff-82...
nobu (Nobuyoshi Nakada)
01:59 AM Revision fa302747 (git): * 2017-10-14
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
01:59 AM Revision 7402c35c (git): configure.ac: no _objc_msgSend trick
* configure.ac (XLDFLAGS): _objc_msgSend is no longer needed to
link CoreFoundation, that framework is always used for CFString
functions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)

10/13/2017

09:34 PM Bug #14009: macOS High Sierra and “fork” compatibility
@mperham loading `pg` within a fork works just fine with this patch :) ticky (Jessica Stokes)
08:49 PM Bug #14009: macOS High Sierra and “fork” compatibility
Regarding nobu's comment on whether linkers can ignore "useless" library links (comment #8): yes they can, but both on GNU/Linux systems as well as on macOS, this behavior is at present not the default.
On GNU systems, [--as-needed](h...
hongli (Hongli Lai)
07:24 PM Bug #14009: macOS High Sierra and “fork” compatibility
The original cause was lazy loading the `pg` gem in the forked child process. Does this fix allow the same `pg` gem loading to work as before? mperham (Mike Perham)
05:30 PM Bug #14009: macOS High Sierra and “fork” compatibility
Alright, I’ve checked it out, and can confirm that the patch @nobu suggested does indeed work around the original issue I encountered in Puma, with my mitigations removed from our application code.
I can also confirm that with that pa...
ticky (Jessica Stokes)
05:18 PM Bug #14009: macOS High Sierra and “fork” compatibility
Thank you all for your input! :)
I’ll look at getting 2.4.2 built with nobu’s patch and check how it looks from High Sierra.
ticky (Jessica Stokes)
02:55 PM Bug #14009: macOS High Sierra and “fork” compatibility
**EDIT**:
Please ignore the original comment.
I tested linkage in Sierra (not High Sierra), the `-framework` instruction is honored even when no symbols are used.
The linker approach seems safe to use in macOS. I wish I could te...
myst (Boaz Segev)
07:04 AM Bug #14009: macOS High Sierra and “fork” compatibility
"linking `Foundation` framework" means linking ruby and libruby.dylib with `-framework Foundation` compiler option.
You need to apply my patch to the source then rebuild it.
nobu (Nobuyoshi Nakada)
06:02 AM Bug #14009: macOS High Sierra and “fork” compatibility
nobu (Nobuyoshi Nakada) wrote:
> Does linking `Foundation` framework instead of `CoreFoundation` framework work?
According to my tests on High Sierra, linking to Foundation helps, but linking to CoreFoundation does not. CoreFoundatio...
hongli (Hongli Lai)
02:35 AM Bug #14009: macOS High Sierra and “fork” compatibility
I can't test because I can't install High Sierra on my machine (I'm also a musician and my professional audio applications don't support High Sierra).... @ticky? myst (Boaz Segev)
02:23 AM Bug #14009 (Feedback): macOS High Sierra and “fork” compatibility
Does linking `Foundation` framework instead of `CoreFoundation` framework work?
For 2.4:
```diff
diff --git a/configure.in b/configure.in
index bb7cc4daa5..4a2243afa1 100644
--- a/configure.in
+++ b/configure.in
@@ -4144,8 +41...
nobu (Nobuyoshi Nakada)
12:58 AM Bug #14009: macOS High Sierra and “fork” compatibility
I should point out that `"Foundation.framework/Foundation"` seems to be enough.
This is the C code I'm currently considering for the iodine Ruby server.
~~~ c
#ifdef __APPLE__
void *obj_c_runtime = dlopen("Foundation.framework/...
myst (Boaz Segev)
09:23 PM Bug #14014 (Closed): NaN.finite?
Ruby gives contradictory answers for NaN:
```
> (0/0.0).finite?
=> false
> ...
=> true
```
Note that `(0/0.0).infinite?` returns `nil`, so the float answer of `false` looks even more wrong.
The two solutions I see are ei...
marcandre (Marc-Andre Lafortune)
06:30 PM Bug #14013 (Closed): [PATCH] Webrick 60172 fix
I was looking at the failure from 60172, and just tried changing some code. Low and behold, it passed all tests. But, since I'm not that familiar with 'nonblock' issues, I thought asking someone with more knowledge would be appropriate... MSP-Greg (Greg L)
04:50 PM Feature #12602: Add NilClass#to_d
I think this is a good addition to make behavior of numeric types consistent. Is there a reason this was not done initially? wizardofogz (Andy Ogzewalla)
01:43 PM Bug #14012: NameError is raised when use class variables in Refinements
I have no idea if this is a bug or a feature, but I believe it seems more
of a bug. The @@variables should be accessible within the namespace of
the specific class right? So it should be viewable in a refinement too -
but admittedly, ...
shevegen (Robert A. Heiler)
11:32 AM Bug #14012 (Rejected): NameError is raised when use class variables in Refinements
Sorry in advance if other ticket exists.
In a case, Reference to class variables raises unnatural NameError.
A class variable is defined in a module.
And include the module in "refine" block.
Refined method cannot use the class ...
joker1007 (Tomohiro Hashidate)
08:29 AM Revision 41910c0d (git): defines.h: warn EXTERN
* include/ruby/defines.h (EXTERN): warn as deprecated.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60176 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:50 AM Bug #14002: libruby soname is changing in Ruby 2.4.x while it should always be libruby.so.2.4.0
jeremyevans0 (Jeremy Evans) wrote:
> nobu (Nobuyoshi Nakada) wrote:
> ...
So similar changes weren't in previous teeny releases like 2.3.0., 2.3.1 etc., so last number in library name didn't change and stayed 0?
>
> ...
What I wou...
zdohnal (Zdenek Dohnal)
02:52 AM Bug #14002: libruby soname is changing in Ruby 2.4.x while it should always be libruby.so.2.4.0
nobu (Nobuyoshi Nakada) wrote:
> jeremyevans0 (Jeremy Evans) wrote:
> ...
Sorry for spreading misinformation. I see now where RUBY_SYMBOL_EXPORT_BEGIN and RUBY_SYMBOL_EXPORT_END are used in internal.h for symbol visibility, and also t...
jeremyevans0 (Jeremy Evans)
02:11 AM Bug #14002: libruby soname is changing in Ruby 2.4.x while it should always be libruby.so.2.4.0
nobu (Nobuyoshi Nakada) wrote:
> And they are stripped from libruby.so, on most platforms (gcc 4+, and Windows).
Correction: they are not stripped on Windows.
nobu (Nobuyoshi Nakada)
01:49 AM Bug #14002: libruby soname is changing in Ruby 2.4.x while it should always be libruby.so.2.4.0
jeremyevans0 (Jeremy Evans) wrote:
> Added functions (minor bump):
> ...
And they are stripped from libruby.so, on most platforms (gcc 4+, and Windows).
> Even if you are just concerned about functions that appear in public header f...
nobu (Nobuyoshi Nakada)
04:14 AM Bug #14011: Appveyor failure - svn 60172 - ‘webrick: do not hang acceptor on slow TLS connections’
My rolling Appveyor trunk build completed. It had the same failure as the mswin builds currently have. So the next builds pass, I may reverse this until it's resolved.
Summary:
```
1 Total Failures/Errors ...
MSP-Greg (Greg L)
02:18 AM Bug #14011: Appveyor failure - svn 60172 - ‘webrick: do not hang acceptor on slow TLS connections’
From reading normalperson's (Eric Wong's) description in [60172](https://bugs.ruby-lang.org/projects/ruby-trunk/repository/revisions/60172), it sounds like this change may have shown an issue involving 'per-client threading' on Windows b... MSP-Greg (Greg L)
01:54 AM Bug #14011: Appveyor failure - svn 60172 - ‘webrick: do not hang acceptor on slow TLS connections’
normalperson (Eric Wong) wrote:
> OK, so the puma failures are independent of my webrick change
> ...
Yes. They happened before your commit. I mentioned them just because 'nonblock' in ruby std-lib code seems common to both...
...
MSP-Greg (Greg L)
12:51 AM Bug #14011: Appveyor failure - svn 60172 - ‘webrick: do not hang acceptor on slow TLS connections’
Greg.mpls@gmail.com wrote:
> Re this issue, it seems that it (mostly) involves code in ruby
> openssl ot net/*, not code that's part of either webrick or
> puma.

OK, so the puma failures are independent of my webrick change
(r601...
normalperson (Eric Wong)
12:16 AM Bug #14011: Appveyor failure - svn 60172 - ‘webrick: do not hang acceptor on slow TLS connections’
Eric,
Thanks for the quick response. I've attached the two logs. I really hate the posts where people have a gazillion lines of a seg fault report...
Re this issue, it seems that it (mostly) involves code in ruby openssl or net/*...
MSP-Greg (Greg L)
02:45 AM Bug #14010: RubyVM logic in forwardable backported to 2.3, not removed
Makes sense. shevegen (Robert A. Heiler)
01:35 AM Bug #14006 (Closed): 2.5.0preview1でWarning.warnを再定義するとSystemStackErrorが発生する
Applied in changeset trunk|r60175.
----------
error.c: infinite recursion at Warning#warn
* error.c (rb_warn_m): write the message to rb_stderr directly, to
get rid of infinite recursion when called on Warning module
itself, by sup...
nobu (Nobuyoshi Nakada)
01:34 AM Revision 8a2a882e (git): error.c: infinite recursion at Warning#warn
* error.c (rb_warn_m): write the message to rb_stderr directly, to
get rid of infinite recursion when called on Warning module
itself, by super in redefined Warning#warn.
[ruby-dev:50293] [Bug #14006]
git-svn-id: svn+ssh://ci.ruby...
nobu (Nobuyoshi Nakada)
01:26 AM Revision 6a16d033 (git): rbinstall.rb: fix for --cmd-type=cmd
* tool/rbinstall.rb (PROLOG_SCRIPT): fix wrapper code for cmd
script. [Bug#13997]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
 

Also available in: Atom