Project

General

Profile

Activity

From 05/23/2018 to 05/29/2018

05/29/2018

11:28 PM Revision 47f9dd84 (git): * 2018-05-30
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
11:28 PM Revision 9fd0858c (git): fake.rb: fix RUBY_DESCRIPTION for MJIT
* template/fake.rb.in: switch RUBY_DESCRIPTION at runtime
depending on the MJIT status.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
10:02 PM Bug #14795 (Closed): Should 'net/http' require 'net/http/status' ?
net/http/status.rb has been added (#12935) but it is [not required from net/http.rb](https://github.com/ruby/ruby/blob/0342fcbd51f2f423541f862c8d8e35873d849963/lib/net/http.rb#L1629-L1642) while other net/http/*.rb files are already requ... sakuro (Sakuro OZAWA)
08:34 PM Feature #14718: Use jemalloc by default?
bluz71 (Dennis B) wrote:
> Redis ships jemalloc 4.0.3 (or near to) as seen here:
> ...
The latest Redis 5, ships with Jemalloc 5.1
Ksec (E C)
03:29 PM Feature #14794 (Feedback): Primitive arrays (Ruby 3x3)
dynamic arrays in ruby can contain various object types:
```ruby
[1, 1.0, 'text', Object.new]
```
however if I create a primitive array, let say only with integers (very common case). It should be more efficient.
```ruby
[1, 2, 3...
ahorek (Pavel Rosický)
03:12 PM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
Ksec (Ed Chick) wrote:
> HfCloud (Xiangyu Shi) wrote:
> ...
Sorry for so late my reply...
I do not know mruby very much, I saw the examples using it in C language, It looks nice, according to its interfaces I think it can realize mult...
HfCloud (Xiangyu Shi)
09:12 AM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
HfCloud (Xiangyu Shi) wrote:
> shyouhei (Shyouhei Urabe) wrote:
> ...
Slightly off topic, have you consider mruby?
Ksec (E C)
07:33 AM Feature #14792 (Feedback): Multiple RubyVM in one process to make real multi-threading.
naruse (Yui NARUSE)
05:56 AM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
shyouhei (Shyouhei Urabe) wrote:
> HfCloud (Xiangyu Shi) wrote:
> ...
Oh...I have seen the relative issues and know you are trying making it. Appreciate your work!.
It's really a lesson indicating that don't abuse global variables ...
HfCloud (Xiangyu Shi)
05:46 AM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
HfCloud (Xiangyu Shi) wrote:
> shyouhei (Shyouhei Urabe) wrote:
> ...
Not yet. Ko1 is working on this area. See also https://www.youtube.com/watch?v=mjzmUUQWqco
shyouhei (Shyouhei Urabe)
05:28 AM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
shyouhei (Shyouhei Urabe) wrote:
> This is what we call the MVM feature. There has been rich amount of efforts to make it possible and still not available in a production-ready manner.
Is there any system API, which can divide threa...
HfCloud (Xiangyu Shi)
05:26 AM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
This is what we call the MVM feature. There has been rich amount of efforts to make it possible and still not available in a production-ready manner. shyouhei (Shyouhei Urabe)
05:11 AM Feature #14792 (Closed): Multiple RubyVM in one process to make real multi-threading.
This is an old problem, maybe running multiple RubyVM is a good way, which can really run ruby code in parallel in one process (Each thread runs a RubyVM)and be compatible with old codes(If some codes depend on the GIL, they can still ... HfCloud (Xiangyu Shi)
11:35 AM Feature #12732: An option to pass to `Integer`, `Float`, to return `nil` instead of raise an exception
rbjl (Jan Lelis) wrote:
> Although it does not solve Aaron's use case, I would suggest to have a `Integer.try_convert`, `Float.try_convert`, `Rational.try_convert`, and `Complex.try_convert` which do not raise exceptions, but just retur...
m_s__santos (Matheus Silva)
09:41 AM Bug #14791: String.sub wrong parsing of replacement with capturing group
Thanks for help!
I don't unterstand, why five backslahes are required in single quotes. My understanding was that characters in single quotes won't get interpolated so two backslashes should be sufficient.
churib (Timo Grodzinski)
05:17 AM Bug #14791 (Rejected): String.sub wrong parsing of replacement with capturing group
Let me reject; this is not a bug. shyouhei (Shyouhei Urabe)
08:47 AM Revision 0342fcbd (git): fake.rb: fix RUBY_DESCRIPTION for MJIT
* template/fake.rb.in: reflect MJIT to RUBY_DESCRIPTION.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
08:46 AM Revision 2df80d30 (git): spec/ruby: revert r63503 and r63508
When RUBY_DESCRIPTION has `+JIT` already, it will be doubled.
Just fake.rb.in always has copied `RUBY_DESCRIPTION`, regardless
MJIT is enabled or not. `BOOTSTRAPRUBY` is not involved.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6...
nobu (Nobuyoshi Nakada)
05:49 AM Bug #14793: Hash returned from CGI.parse has [] as default value
My mistake, it looks like all CGI values are always returned as arrays:
~~~
CGI.parse("x=y")
#=> {"x"=>["y"]}
~~~
Please close.
avit (Andrew Vit)
05:39 AM Bug #14793 (Closed): Hash returned from CGI.parse has [] as default value
Is there a valid reason for this behaviour? It looks like a bug to me:
~~~
require 'cgi'
params = CGI.parse("")
params["x"]
#=> []
~~~
(Expected nil)
I looked at history and it looks like it has been there from the very b...
avit (Andrew Vit)
02:48 AM Revision d2c6ed6b (git): mjit_compile.c: drop catch table handling
The loop for `vm_exce_handle_exception` doesn't trigger `mjit_exec`, so
I don't think this code is no longer needed.
This was needed in development of original version of this JIT, but it
seems not needed from the beginning (r62189) at ...
k0kubun (Takashi Kokubun)
01:58 AM Revision 8b9e877b (git): Unused macro and field
* node.h (nd_cnt, struct RNode): nd_cnt has been unused
since r60239, and also cnt field.
* .gdbinit (nd_cnt): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
yui-knk (Kaneko Yuichiro)
01:40 AM Revision 7db2db67 (git): Unused macro
* node.h (nd_noex): nd_noex has been unused since r24128.
* .gdbinit (nd_noex): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
yui-knk (Kaneko Yuichiro)
01:19 AM Revision 3d1a523d (git): Unused macro
* node.h (nd_frml): nd_frml has been unused since r34134.
* .gdbinit (nd_frml): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
yui-knk (Kaneko Yuichiro)
01:18 AM Revision 9e5354eb (git): NEWS: add item about built-in thread cache
This change may impact design of future programs and obviate
thread pools in many cases, so it's worth a mention.
Anyways, this seems stable since r63499 [Feature #14757]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63516 b2dd03c8-...
Eric Wong
01:00 AM Revision d6d130c1 (git): Unused macro
* node.h (nd_argc): nd_argc has been unused since r24128.
* .gdbinit (nd_argc): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63515 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
yui-knk (Kaneko Yuichiro)
12:14 AM Bug #14789 (Feedback): Debian 9, ARM, rails 5.2.0 not works.
> /home/tivgres/.rvm/gems/ruby-2.4.1/gems/bootsnap-1.3.0/lib/bootsnap/compile_cache/iseq.rb:18: [BUG] Bus Error at 0x2b7dff9
Seems failing inside of bootsnap. Can you disable it to see if the problem disappears?
shyouhei (Shyouhei Urabe)

05/28/2018

07:42 PM Misc #14769: DevelopersMeeting20180621Japan
> I'm sorry again.
Don't worry - took us all a little to adapt to the new format. :)
shevegen (Robert A. Heiler)
02:02 AM Misc #14769: DevelopersMeeting20180621Japan
shyouhei (Shyouhei Urabe) wrote:
> wanabe (_ wanabe) wrote:
> ...
I'm sorry for my lack of explanation.
I want the issue status to be clear.
"Feedback", "Assigned", "3rd party's issue", "Rejected".
I just want to know "Who's ball?",...
wanabe (_ wanabe)
01:18 AM Misc #14769: DevelopersMeeting20180621Japan
(sorry for the last message. was a mistake, deleted)
wanabe (_ wanabe) wrote:
> * CRuby uses `pthread_getattr_np()` result for stack-level-check after r59630, but the function behaviour is different in glibc and musl.
@wanbe wh...
shyouhei (Shyouhei Urabe)
07:06 PM Bug #14790: DateTime.iso8601 parses incorrect ISO8601
Yes, you are right. It was a bug after all but not in the way I originally thought :D.
Hanmac (Hans Mackowiak) wrote:
> you mean the offset right?
> ...
Quintasan (Michał Zając)
03:19 PM Bug #14790 (Closed): DateTime.iso8601 parses incorrect ISO8601
Applied in changeset trunk|r63512.
----------
time.rb: fix parsing time zone in iso8601
* lib/time.rb (Time.xmlschema): a colon in time zone designator
can be omitted. [ruby-core:87277] [Bug #14790]
nobu (Nobuyoshi Nakada)
01:36 PM Bug #14790: DateTime.iso8601 parses incorrect ISO8601
you mean the offset right?
https://en.wikipedia.org/wiki/ISO_8601#Time_zone_designators says that "±hhmm" is valid too in iso8601
so i think the bug is more in Time because the offset should be valid?
Time itself does print it a...
Hanmac (Hans Mackowiak)
01:20 PM Bug #14790 (Closed): DateTime.iso8601 parses incorrect ISO8601
I noticed it today when migrating to Time in my library but DateTime somehow parses incorrect ISO8601 dates. Technically that's a feature but I believe this behaviour is incorrect. Time#iso8601 behaves correctly in this case.
# Steps ...
Quintasan (Michał Zając)
04:04 PM Feature #14788: `Hash#keys` Could Accept a Block
How about `each_key`?
```ruby
{ 1 => '1', 2 => '2', 3 => '3', 4 => '4' }.each_key.select(&:odd?) # => [1, 3]
```
znz (Kazuhiro NISHIYAMA)
12:25 PM Feature #14788: `Hash#keys` Could Accept a Block
I personally understand what Ryan suggested and meant; the example shows that he
can integrate the ".select" step .keys, through the use of block.
To me the example is also readable and the intent is clear, so in that particular
cas...
shevegen (Robert A. Heiler)
07:35 AM Feature #14788: `Hash#keys` Could Accept a Block
If I were you, I would rather request a new method named `Hash#select_keys` for that purpose. sawa (Tsuyoshi Sawada)
06:19 AM Feature #14788: `Hash#keys` Could Accept a Block
I don't like it.
From `keys {|k| k.something }` I wouldn't know what it does with the keys, if they would select or map the keys or both.
Is probably against that "least surprise" thing
Hanmac (Hans Mackowiak)
03:35 PM Revision dc2a979b (git): time.rb: fix parsing time zone in iso8601
* lib/time.rb (Time.xmlschema): the minute in time zone designator
can be omitted together with the preceding colon.
[ruby-core:87277] [Bug #14790]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63514 b2dd03c8-39d4-4d8f-98ff-823f...
nobu (Nobuyoshi Nakada)
03:25 PM Bug #14791: String.sub wrong parsing of replacement with capturing group
need 5 or 6 (6 when using ")
~~~ ruby
"abc".sub(/(b)/, '\\\\\1') #=> "a\\bc"
"abc".sub(/(b)/, "\\\\\1") #=> "a\\\x01c"
"abc".sub(/(b)/, "\\\\\\1") #=> "a\\bc"
~~~
but be careful that irb returns inspected value, that is impor...
Hanmac (Hans Mackowiak)
02:28 PM Bug #14791: String.sub wrong parsing of replacement with capturing group
Can you give a solution for my second example?
~~~ ruby
"abc".sub(/(b)/, '\\1') # doesn't works, should be "a\bc"
~~~
I want to replace the 'b' with '\b'. How many backslashes do I need?
The #sub method has problems with consecuti...
churib (Timo Grodzinski)
02:01 PM Bug #14791: String.sub wrong parsing of replacement with capturing group
read the Docs:
~~~
If replacement is a String it will be substituted for the matched text. It may contain back-references to the pattern's capture groups of the form "\d", where d is a group number, or "\k<n>", where n is a group nam...
Hanmac (Hans Mackowiak)
01:44 PM Bug #14791 (Rejected): String.sub wrong parsing of replacement with capturing group
~~~ ruby
irb(main):001:0> "abc".sub(/(b)/, '#\1#') # works
=> "a#b#c"
irb(main):002:0> "abc".sub(/(b)/, '\\1') # doesn't works, should be "a\bc"
=> "abc"
irb(main):003:0> "abc".sub(/(b)/, '\\\1') # doesn't works, should be "a\\bc"
...
churib (Timo Grodzinski)
03:19 PM Revision 7b4671f0 (git): * 2018-05-29
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:19 PM Revision 71fed537 (git): time.rb: fix parsing time zone in iso8601
* lib/time.rb (Time.xmlschema): a colon in time zone designator
can be omitted. [ruby-core:87277] [Bug #14790]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
02:24 PM Revision 3e2ff59f (git): Unused macro and field
* node.h (nd_cfnc, struct RNode): nd_cfnc has been unused
since r49938, and also cfunc field.
* .gdbinit (nd_cfnc): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
yui-knk (Kaneko Yuichiro)
12:22 PM Bug #14789 (Third Party's Issue): Debian 9, ARM, rails 5.2.0 not works.
Hello, I try to use rails at orange pi board on armbian (debian 9 for ARM), but it's have a bug?
ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [armv7l-linux-eabihf]
`rails -v
/home/tivgres/.rvm/gems/ruby-2.4.1/gems/bootsnap-...
Tivgres (Sergey D)
12:00 PM Feature #12906: do/end blocks work with ensure/rescue/else
Old issue, but still perhaps the right place to mention this: the new syntax ONLY works in do/end, not in {} blocks (as mentioned above.)
It also does not work in "block-like" places like a for loop. So this is not valid syntax:
``...
perlun (Per Lundberg)
12:42 AM Revision dceecfb6 (git): * 2018-05-28
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
12:42 AM Revision 1f4796a1 (git): Merge etc gemspec from github repository.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e hsbt (Hiroshi SHIBATA)

05/27/2018

10:13 PM Misc #14769: DevelopersMeeting20180621Japan
* [Bug #14387] Ruby 2.5 を Alpine Linux で実行すると比較的浅めで SystemStackError 例外になる (koshigoe)
* CRuby uses `pthread_getattr_np()` result for stack-level-check after r59630, but the function behaviour is different in glibc and musl.
wanabe (_ wanabe)
08:07 PM Feature #14788 (Open): `Hash#keys` Could Accept a Block
Sometimes I only need to fetch *some* of the keys from a Hash. With the current `Hash#keys` implementation, this requires fetching all the keys and then selecting the ones I'm interested in. It would be nice if `Has#keys` accepted a bloc... rringler (Ryan Ringler)
02:49 PM Bug #14464: MJIT & MinGW / gcc 7.3.0 seemed ok as of 62337, fail or skip after
@k0kubun,
> Thanks for letting me know that
Not being a c type, it's the least I can do. I often feel like a dumb rock, as I can identify issues, but I can't fix them...
FYI, as of:
```
ruby 2.6.0dev (2018-05-27 trunk 63508...
MSP-Greg (Greg L)
09:52 AM Revision 96e6eb38 (git): Specs must keep working on older versions and other implementations
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63508 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Eregon (Benoit Daloze)
07:33 AM Revision f13b0fd8 (git): jit_support.rb: debug check_support stderr
rubyci freebsd11zfs doesn't pass this check. I want to know the stderr.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
05:52 AM Revision 783e2b57 (git): st.c: remove redundant export declaration
rb_hash_bulk_insert is added to official C API in r63488. It's no longer
exported only for MJIT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
05:47 AM Revision 9aefa90c (git): * 2018-05-27
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
05:47 AM Revision 6d389356 (git): jit_support.rb: cahce JIT support check
* Before
make test-all -C .ruby-svn TESTS="../test/ruby/test_jit.rb" 22.40s user 5.38s system 91% cpu 30.196 total
* After
make test-all -C .ruby-svn TESTS="../test/ruby/test_jit.rb" 12.91s user 3.33s system 91% cpu 17.648 total
Also...
k0kubun (Takashi Kokubun)

05/26/2018

12:56 PM Bug #14464: MJIT & MinGW / gcc 7.3.0 seemed ok as of 62337, fail or skip after
Thanks for letting me know that. I also confirmed r63479 doesn't pass the tests but r63480 does. So somehow r63480 fixed the issue. k0kubun (Takashi Kokubun)

05/25/2018

10:57 PM Feature #14787: Show documents when completion
I am fine with the suggestion.
If possible, a configuration option for IRB would be nice for people
to decide on their own whether to use the above or not, but this is
a small detail, not really that important anyway.
However had...
shevegen (Robert A. Heiler)
10:44 PM Feature #14787 (Closed): Show documents when completion
The "irb/completion" provides completion for classes, modules, symbols, and methods. This patch provides a new feature for it that shows documents when press TAB key one more after exact matches. This uses RDoc as a library.
Example:
...
aycabta (aycabta .)
08:48 PM Misc #12474: Wishlist for Windows Unix compatibility features
> Remove a file which is opened by another process
Fall Creators Update added FILE_DISPOSITION_POSIX_SEMANTICS.
https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/content/ntddk/ns-ntddk-_file_disposition_information_ex
...
emk (Masatoshi Kimura)
04:09 PM Bug #14742: Deadlock when autoloading different constants in the same file from multiple threads
It looks like the fix was un-reverted in r63392. Thank you for working on this, Eric! eugeneius (Eugene Kenny)
05:46 AM Feature #14785: Parse guard statements like regular conditionals
```ruby
def test
result = calculate_result and return result
# ...
end
```
nobu (Nobuyoshi Nakada)

05/24/2018

07:33 PM Feature #14097: Add union and difference to Array
I cannot say that I am a fan of this proposal. To be fair, I'm not a fan of #|.
Arrays are not sets. Trying to treat them as if they are is an error, and will create subtle problems.
What should be the result of the following ope...
Student (Nathan Zook)
12:08 AM Feature #14097: Add union and difference to Array
and this is not necessarily related to Feature #14105. I would say that they are two different topics even if both of them aim for readability. In the case of set is only an alias and there is not a similar case as it happens here with `... ana06 (Ana Maria Martinez Gomez)
12:06 AM Feature #14097: Add union and difference to Array
@matz
> I am not sure your real intention. Do you want mutating variation of or-operator?
> ...
Thanks for taking a look at the issue. What I am proposing is a new union method that it is an alias for `|` in the case of two arrays bu...
ana06 (Ana Maria Martinez Gomez)
04:46 PM Feature #14785: Parse guard statements like regular conditionals
Ah you're right Jeremy, I hadn't thought about that case. I still think it's unexpected though that in your example the behavior would change if we split the conditional into an `if...end`, but I don't know if others agree, and I don't k... jacobevelyn (Jacob Evelyn)
02:12 PM Feature #14785: Parse guard statements like regular conditionals
jacobevelyn (Jacob Evelyn) wrote:
> I agree the `did_you_mean` message is not good, but I would rather change the behavior so that line of code works and doesn't produce an error at all.
Doing that would change the behavior of code t...
jeremyevans0 (Jeremy Evans)
01:34 PM Feature #14785: Parse guard statements like regular conditionals
I agree the `did_you_mean` message is not good, but I would rather change the behavior so that line of code works and doesn't produce an error at all. jacobevelyn (Jacob Evelyn)
05:47 AM Feature #14785: Parse guard statements like regular conditionals
Seems the recent `did_you_mean` omits `result` in that case.
It may be able to improve the message, I guess.
nobu (Nobuyoshi Nakada)
02:32 PM Revision 506512c0 (git): spec/ruby: fix RUBY_DESCRIPTION check with JIT enabled
`make test-spec` adds `-r./$(arch)-fake` to pass header options.
But the $(arch)-fake.rb unexpectedly modifies RUBY_DESCRIPTION and it
always drops +JIT from it since the fake.rb is built with BOOTSTRAPRUBY,
which can be miniruby. miniru...
k0kubun (Takashi Kokubun)
01:25 PM Revision 34d56255 (git): test_rubyoptions.rb: RbConfig::CONFIG['cppflags'] can be nil
not '' at least on AppVeyor
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
01:22 PM Feature #2631: Allow IO#reopen to take a block
The idea of temporary intercepting any output to another IO is worth considering. Though I doubt to name that feature a "reopen".est/ruby/test_io.rb: add a test NEWS: add an entry for this change, he new Google Flights offers all of the... Bookgoogleflights (google flights)
01:18 PM Feature #14783: String#chars_at / String#bytes_at
Is the frequency of #bytes_at common? I understand the use case
stated by Stefan (extract multiple indices via one method call
on a String) but #bytes_at may seem to be quite rare.
As for returning a String or Array, I personally ex...
shevegen (Robert A. Heiler)
05:04 AM Feature #14783: String#chars_at / String#bytes_at
sos4nt (Stefan Schüßler) wrote:
> Because `String#[]` also returns a string in such case:
It's a different, single argument case.
I don't think that `values_at` should return same class as the receiver, as `Hash#values_at`.
nobu (Nobuyoshi Nakada)
12:57 PM Revision 8d988784 (git): test_rubyoptions.rb: allow passing test_verbose
with -DMJIT_FORCE_ENABLE. With -DMJIT_FORCE_ENABLE, absence of --jit
doesn't mean JIT disabled.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
08:39 AM Feature #14784: Comparable#clamp with a range
@nobu
> Why not `[chain.of.calculations, 0].max`?
Because this `chain.of.calculations` in reality could be something like
```ruby
[paragraphs
.group_by(&:speaker)
.map { |speaker, paragraphs| paragraph.sort_by(&:length).f...
zverok (Victor Shepelev)
04:55 AM Feature #14784: Comparable#clamp with a range
zverok (Victor Shepelev) wrote:
> 3. Why do you need one-sided clamp at all? Because alternatives is much more wordy, making reader think:
Why not `[chain.of.calculations, 0].max`?
nobu (Nobuyoshi Nakada)
06:15 AM Revision 9fa4766e (git): mjit.c: use remove_file in clean_so_file too
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
02:52 AM Revision 72ad0811 (git): thread_pthread.c: avoid reading th pointer for thread cache
I suspect GC may free the rb_thread_t (th) pointer by the time
we call register_cached_thread_and_wait.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong

05/23/2018

09:17 PM Feature #14757 (Closed): [PATCH] thread_pthread.c: enable thread cache by default
Applied in changeset trunk|r63498.
----------
thread_pthread.c: enable thread cache by default
Since r62466 ("thread_pthread.c: shorten and fix thread cache implementation"),
our thread cache is no longer buggy with programs using fork...
normalperson (Eric Wong)
09:16 PM Revision fa31e1a4 (git): thread_pthread.c: enable thread cache by default
Since r62466 ("thread_pthread.c: shorten and fix thread cache implementation"),
our thread cache is no longer buggy with programs using fork.
This makes significant improvements in vm_thread_alive_check1
and vm_thread_create_join benchma...
Eric Wong
08:58 PM Revision 8a2aa4ed (git): benchmark/bm_*erb*: fix for --measure=size/peak in driver.rb
benchmark/memory_wrapper.rb will Kernel#load these
scripts, preventing DATA from being initialized, so
use heredoc instead.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
08:50 PM Feature #14785: Parse guard statements like regular conditionals
Interesting. I personally very rarely do assignment of variables
followed by if-conditionals in my ruby code.
Perhaps there may be some parsing limitation? Otherwise it does
indeed looks like the same code to me (from the semantics)...
shevegen (Robert A. Heiler)
02:58 PM Feature #14785 (Open): Parse guard statements like regular conditionals
I just learned that these two pieces of code are not the same:
~~~ ruby
def test
if result = calculate_result
return result
end
...
end
~~~
~~~ ruby
def test
return result if result = calculate_result
.....
jacobevelyn (Jacob Evelyn)
08:44 PM Feature #14784: Comparable#clamp with a range
Considering that Ranges allow a ruby hacker to omit the end value,
for infinity/endless, since about ... a month or so, I think your
example makes sense in this regard, e. g.
begin .. end
being the same as:
begin ..
...
shevegen (Robert A. Heiler)
01:04 PM Feature #14784 (Closed): Comparable#clamp with a range
**Proposal**
Allow "one-sided" `clamp` to limit only upper bound (and, ideally, only lower too).
Proposed implementation: allow `clamp(begin..end)` call sequence (without deprecating `clamp(begin, end)`), to take advantage from ope...
zverok (Victor Shepelev)
08:00 PM Bug #14464: MJIT & MinGW / gcc 7.3.0 seemed ok as of 62337, fail or skip after
@k0kubun,
I narrowed it down using ruby-loco builds:
```
All ruby 2.6.0dev
(2018-05-21 trunk 63475) [x64-mingw32] 73 tests, 429 assertions, 10 failures, 0 errors, 5 skips
(2018-05-21 trunk 63480) [x64-mingw32] 73 tests, 448 as...
MSP-Greg (Greg L)
12:06 PM Bug #14464 (Closed): MJIT & MinGW / gcc 7.3.0 seemed ok as of 62337, fail or skip after
Oh, that's very good to know. TBH I don't know which revision fixed the problem, but I'm very happy to know the tests can succeed on the platform. Thank you to report this. k0kubun (Takashi Kokubun)
03:59 PM Bug #14786 (Closed): PTY duplicated "\r" problem on Solaris
Applied in changeset trunk|r63495.
----------
ext/pty/pty.c: I_FIND before I_PUSH if possible
* ext/pty/pty.c: Check whether each STREAMS module is already pushed
or not by using I_FIND ioctl call, before pushing it by using I_PUSH.
...
ngoto (Naohisa Goto)
03:42 PM Bug #14786: PTY duplicated "\r" problem on Solaris
ext/pty/pty.c にて、以下のように STREAMS モジュールを挿入しています。
~~~
if (ioctl(slavefd, I_PUSH, "ptem") == -1) goto error;
if (ioctl(slavefd, I_PUSH, "ldterm") == -1) goto error;
if (ioctl(slavefd, I_PUSH, "ttcompat") == -1) goto error;
...
ngoto (Naohisa Goto)
03:30 PM Bug #14786 (Closed): PTY duplicated "\r" problem on Solaris
Solaris 10 にて、コンパイル時のオプション、実行時の環境やそれらの組み合わせにより、
make test-all にて以下の Failure や Error が出る場合があります。
(r63444 にて確認)
`TestPTY`や`TestIO_Console`のFailureを見るとわかりやすいですが、
PTYが返す文字列に余計な `"\r"` が付加されています。
`TestRubyOptions` のエラーは、余計な `"\r"` が無いこ...
ngoto (Naohisa Goto)
03:58 PM Revision 5ce3f8c9 (git): * 2018-05-24
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:58 PM Revision 26cbe46e (git): ext/pty/pty.c: I_FIND before I_PUSH if possible
* ext/pty/pty.c: Check whether each STREAMS module is already pushed
or not by using I_FIND ioctl call, before pushing it by using I_PUSH.
Solved test failure on Solaris. On a Solaris 10 machine, ioctl I_PUSH
"ldterm" twice was the...
ngoto (Naohisa Goto)
12:21 PM Misc #14769: DevelopersMeeting20180621Japan
* [Feature #14781] `Enumerator#generate`: more reasonable version of `Object#enumerate` proposed for the previous meeting. zverok (Victor Shepelev)
10:38 AM Feature #14783: String#chars_at / String#bytes_at
Hanmac (Hans Mackowiak) wrote:
> why does it return a new string instead of array of strings?
Because `String#[]` also returns a string in such case:
```ruby
a = [1, 2, 3, 4]
s = "1234"
a[1..2] #=> [2, 3]
s[1..2] #=> "23"
`...
sos4nt (Stefan Schüßler)
10:35 AM Feature #14783: String#chars_at / String#bytes_at
```ruby
string = 'hello, world!'
string.chars.values_at(0, 5, 7, 12)
# => ["h", ",", "w", "!"]
string.chars.values_at(0, 5, 7, 12).join
# => "h,w!"
```
¯\\\_(ツ)_/¯
zverok (Victor Shepelev)
10:30 AM Feature #14783: String#chars_at / String#bytes_at
@sos4nt
why does it return a new string instead of array of strings?
you might like this:
~~~ ruby
string = 'hello, world!'
[0, 5, 7, 12].map(&string.method(:[])).join #=> "h,w!"
[0..4, 7..11].map(&string.method(:[])).join #=...
Hanmac (Hans Mackowiak)
10:23 AM Feature #14783 (Open): String#chars_at / String#bytes_at
I just wanted to extract characters at certain indices from a string and noticed that there's no `values_at` counterpart for `String`.
I'd therefore like to propose two new `String` methods:
* `chars_at(selector, ...) → new_str`
*...
sos4nt (Stefan Schüßler)
09:47 AM Feature #13581: Syntax sugar for method reference
Matz, could you give your thoughts on obj::method (with lowercase on right side) syntax?
AFAICT it's synonym to obj.method?
Does anybody use :: for method calls in practice?
I understand breaking compatibility can't be justified her...
cben (Beni Cherniavsky-Paskin)
06:56 AM Bug #14782 (Closed): binding.eval("proc") with &:to_s dumps core
Applied in changeset trunk|r63494.
----------
remove VM_ENV_DATA_INDEX_ENV_PROC.
* vm_core.h (VM_ENV_DATA_INDEX_ENV_PROC): ep[VM_ENV_DATA_INDEX_ENV_PROC] is
allocated to mark a Proc which is created from iseq block.
However, `lep[0...
ko1 (Koichi Sasada)
06:56 AM Revision e6ad53be (git): remove VM_ENV_DATA_INDEX_ENV_PROC.
* vm_core.h (VM_ENV_DATA_INDEX_ENV_PROC): ep[VM_ENV_DATA_INDEX_ENV_PROC] is
allocated to mark a Proc which is created from iseq block.
However, `lep[0]` keeps Proc object itself as a block handler (Proc).
So we don't need to keep i...
ko1 (Koichi Sasada)
05:51 AM Revision b32b2a61 (git): internal.h: export ruby_sized_* for systems w/o malloc_usable_size
[ruby-core:87232]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
04:22 AM Feature #14718: Use jemalloc by default?
> Ideally I would like a new Ruby runtime flag --long-lived that was tuned for long run times (e.g low malloc arena count, JIT enabled) vs script/short usages where I want maximum performance.
> ...
The JVM has had server and client VMs...
mperham (Mike Perham)
03:04 AM Feature #14718: Use jemalloc by default?
dennisb55@hotmail.com wrote:
> normalperson (Eric Wong) wrote:
> > Reading some glibc mailing list (libc-alpha) posts last year,
> > I remember excessive RSS usage is one of the areas they're
> > tackling due to user complaints.
...
normalperson (Eric Wong)
12:38 AM Feature #14718: Use jemalloc by default?
mperham (Mike Perham) wrote:
> If jemalloc 5.1.0 is using too much memory, you can tune its arenas in the same way as glibc:
> ...
Interesting.
So can we make the observation that low arena count equals low fragmentation but higher ...
bluz71 (Dennis B)
12:32 AM Bug #14387: Ruby 2.5 を Alpine Linux で実行すると比較的浅めで SystemStackError 例外になる
It seems to be reasonable not to rely `pthread_getattr_np()` on `defined(__linux__) && !defined(__GLIBC__)` environment because the function has suffix ["_np"](https://bugs.ruby-lang.org/issues/14387#note-12).
I guess it would be ideal ...
wanabe (_ wanabe)
 

Also available in: Atom