Project

General

Profile

Activity

From 05/22/2017 to 05/28/2017

05/28/2017

07:48 PM Feature #13606: Enumerator equality and comparison
MSP-Greg (Greg L) wrote:
> Could be helpful, but some `Enumerators` are not ordered. So how would `==` work for 'hash like' objects (assuming they're not based on a hash, which has an `==` operator)?
> ...
Equal objects should produce...
glebm (Gleb Mazovetskiy)
06:21 PM Feature #13606: Enumerator equality and comparison
Could be helpful, but some `Enumerators` are not ordered. So how would `==` work for 'hash like' objects (assuming they're not based on a hash, which has an `==` operator)?
I suppose it could be considered 'restricted' to ordered col...
MSP-Greg (Greg L)
04:55 PM Feature #13606: Enumerator equality and comparison
duerst (Martin Dürst) wrote:
> Sounds interesting in theory, but do you have actual use cases? And do you think that the potential inefficiency is worth it?
The use cases are the same as for comparing `Array`s.
The potential ineffic...
glebm (Gleb Mazovetskiy)
04:50 PM Feature #13606: Enumerator equality and comparison
shevegen (Robert A. Heiler) wrote:
> [...] but they are not entirely the same are they? Different
> ...
Most objects in Ruby are compared semantically if the object IDs are different, including `Array` and `Hash`.
> What would the...
glebm (Gleb Mazovetskiy)
02:01 PM Feature #13606: Enumerator equality and comparison
I am not even sure that I understand the proposal.
If I understood it correctly then two enumerable objects (did I get this part right)
should return true if they behave/return the same? I think I can see it being
related to duck t...
shevegen (Robert A. Heiler)
08:29 AM Feature #13606 (Feedback): Enumerator equality and comparison
Sounds interesting in theory, but do you have actual use cases? And do you think that the potential inefficiency is worth it? duerst (Martin Dürst)
06:47 PM Feature #13604: Exposing alternative interface of readline
It should be possible. The bool is easy (I just set it on `Readline` module just like I do the handler block and I try to find a way to pass `char *` inside VALUE. I'll find a way and post updated patch.
I don't really see a benefit t...
graywolf (Gray Wolf)
04:41 PM Revision abbfc048 (git): suppress warning: ambiguous first argument; put parentheses or a space even after `-' operator
Introduced at r58905
http://rubyci.s3.amazonaws.com/ubuntu/ruby-trunk/log/20170526T153003Z.diff.html.gz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58948 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
naruse (Yui NARUSE)
04:40 PM Revision dd014800 (git): Revert "Update to ruby/spec@2a047c8"
This reverts commit 2531a1013b56a030f99ea4c2ee36e66dbf38a855.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
naruse (Yui NARUSE)
04:29 PM Revision 5fcbdd3d (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
04:29 PM Revision 8847d0b6 (git): * 2017-05-29
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
04:29 PM Revision 0f9fa1dd (git): Revert r58939 and r58942
This reverts following commits because it breaks mswinci
* Update to ruby/spec@2a047c8
* Update to ruby/spec@ca32ae2
see also the result:
http://rubyci.org/logs/mswinci.japaneast.cloudapp.azure.com/vc12-x64/ruby-trunk/log/20170528T14001...
naruse (Yui NARUSE)
02:53 PM Bug #13607 (Closed): .rvm/rubies/ruby-2.4.0/lib/ruby/2.4.0/forwardable.rb:228: [BUG] Segmentation fault at 0x00000000000038
I got the follow output when create a simple relationship in Rails, here the code snippet (NOTE: 15 times).
It appears in a randomic way!
```ruby
@t = 15
@t.times do
FactoryGirl.create :entity_user
end
@users = User.al...
marco.sanfilippofrittola (Marco Sanfilippo Frittola)
02:17 PM Revision 1245a4a4 (git): lldb_cruby.py: constants from the target
* misc/lldb_cruby.py (lldb_init): get constants from
ruby_dummy_gdb_enums in the target.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:02 PM Revision 75adc77e (git): Update to ruby/spec@ca32ae2
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Eregon (Benoit Daloze)
11:38 AM Feature #13570 (Closed): Using mkmf for ruby/spec C API specs
I made the change in https://github.com/ruby/spec/commit/84ea66ef61424ef87d03658cbc140d4b1af17c22
which was imported in r58939.
Eregon (Benoit Daloze)
11:30 AM Revision 135ed12e (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
11:30 AM Revision 4c1403c3 (git): Add tool to pull latest mspec/spec when commits have been synchronized
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Eregon (Benoit Daloze)
11:30 AM Revision 2531a101 (git): Update to ruby/spec@2a047c8
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Eregon (Benoit Daloze)
09:49 AM Revision ab55cd9f (git): ruby.c: file in load_file argument
* ruby.c (load_file): move opened file to an argument, to reduce
open/close calls in the near future.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
09:49 AM Revision 3ade78ff (git): ruby.c: shrink ruby_cmdline_options_t
* ruby.c (ruby_cmdline_options_t): reordered members and turned
simple flags into bit fields to reduce the size (136->104 on
LP64).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
05:39 AM Revision a028cfc5 (git): test/ruby/test_io.rb: adjust CPU usage check to 10%
I miscalculated for r58934, since we sleep 100ms, and
the worst possible case is 100 Hz in the kernel meaning
we only have 10ms resolution. So, we need to increase
our CPU percentage to >= 10% for this.
This should be more than enough ...
Eric Wong
01:48 AM Feature #11952 (Closed): Use getrusage for Process.times if available
Applied in changeset trunk|r58935.
----------
process.c: Use getrusage(2) in Process.times
if getrusage(2) is available, to improve precision of Process.times and
its user like lib/benchmark.rb.
On macOS, since getrusage(2) ha...
k0kubun (Takashi Kokubun)
01:48 AM Revision 253232c0 (git): process.c: Use getrusage(2) in Process.times
if getrusage(2) is available, to improve precision of Process.times and
its user like lib/benchmark.rb.
On macOS, since getrusage(2) has better precision than times(3),
they are much improved like:
* Before
Process.times
=> #<struct P...
k0kubun (Takashi Kokubun)
01:43 AM Revision 109ccfdb (git): tests: increase CPU percentage threshold for assert_cpu_usage_low
When sleeping for the tick rate of 100ms (defined in
thread_pthread.c) as we do in test/ruby/test_io.rb
(test_copy_stream_no_busy_wait), it may not be possible to
measure with <= 10ms resolution on 100HZ systems (CONFIG_HZ in
the Linux k...
Eric Wong

05/27/2017

11:22 PM Feature #13606 (Rejected): Enumerator equality and comparison
In Ruby, most objects are compared by value. What do you think about `Enumerator`s following the same pattern? I think this would greatly increase the expressiveness of Ruby.
Proposal:
Two `Enumerator`s should be considered equal (...
glebm (Gleb Mazovetskiy)
10:22 PM Feature #11952: Use getrusage for Process.times if available
It seems fine.
Actually, times(3) is implemented using getrusage(2) on NetBSD.
http://cvsweb.netbsd.org/cgi-bin/cvsweb.cgi/src/lib/libc/gen/times.c?rev=1.15&content-type=text/x-cvsweb-markup
Also, times(2) seems to obtain same res...
akr (Akira Tanaka)
09:55 PM Revision ddf2a167 (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
09:55 PM Revision 33319b88 (git): * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
09:55 PM Revision ead40959 (git): Update to ruby/spec@2795010
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Eregon (Benoit Daloze)
09:54 PM Revision 24db4287 (git): Update to ruby/mspec@6c95759
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Eregon (Benoit Daloze)
09:05 PM Feature #13604: Exposing alternative interface of readline
All improvements to Readline are great - I can't have commandline user interfaces in ruby (on linux) without Readline these days. :)
The only thing that I think isn't too great is the use of global variables. Is it possible to get rid...
shevegen (Robert A. Heiler)
10:01 AM Feature #13604 (Closed): Exposing alternative interface of readline
GNU Readline has multiple modes of operation. At the moment, the readline extension only supports typical, `Readline.readline` mode. However, there is also alternative callback-based interface which is also useful.
```ruby
require_re...
graywolf (Gray Wolf)
08:09 PM Bug #13605 (Closed): GC bug calling `ObjectSpace.each_object`
This code made Ruby bail out with the message "[BUG] rb_gc_mark(): 0x000000040dc740 is T_NONE":
~~~ ruby
ObjectSpace.each_object(Module){|m|
next if (to_ignore.include?(m) rescue true)
if m.respond_to?(:instance_methods)
...
ryanf (Ryan Fitzgerald)
06:39 PM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
Usaku,
You are correct. Linked from the page you mentioned is [_tzset](https://msdn.microsoft.com/en-us/library/90s5c885.aspx). This (sort of) doc's what ENV['TZ'] can be set to.
From my testing, the strings can be anything. I c...
MSP-Greg (Greg L)
05:25 PM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
Interesting, an offset of 3600 means 1 hour so UTC+1, like current TZ=Europe/London summer time.
Does anyone know what could go wrong?
I am thinking part of it might be that C functions related to time
might behave slightly differ...
Eregon (Benoit Daloze)
03:46 PM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
Sorry for the delay, I'm at -0500 (Central US), and I seem to have lost a video card this morning.
Anyway, error is identical to [mingw mspec](https://msp-greg.github.io/file.mingw_test-all.html#mspec-1-failure). Below is the full ru...
MSP-Greg (Greg L)
10:26 AM Bug #13591 (Feedback): spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
Once I reproduced the behavior, but after some maintenance of my mingw environment, it doesn't appear.
Anyway at this time, it's considered as a bug of ruby or spec or mingw or something.
Just removing spec sounds not appropriate.
naruse (Yui NARUSE)
09:33 AM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
FWIW the patch looks OK to me, I think we should merge it.
This might be a difference between the different configuration of Windows builds.
Testing for invalid timezones is rather difficult,
some platforms behave differently, and t...
Eregon (Benoit Daloze)
05:53 AM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
Nobu,
I'll have a look at your code, see if I can determine whats going on. Believe me, I did a couple of builds, and it kept failing...
Thanks.
MSP-Greg (Greg L)
05:18 AM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
I haven't seen such failure on AppVeyor yet.
https://ci.appveyor.com/project/nobu/ruby/build/1.0.119
nobu (Nobuyoshi Nakada)
02:46 AM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
Having now built with [mswin-build](https://github.com/unak/mswin-build), this test still fails. Also, I'm seeing some of the same issues in test-all (test-enum callcc segv, etc).
Please try and run the spec tests (or this specific t...
MSP-Greg (Greg L)
05:04 PM Revision d97c171b (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
05:04 PM Revision 67ffb0dc (git): * 2017-05-28
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
05:04 PM Revision 4d177a1f (git): Initial commit of LLDB port of debug utility
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e naruse (Yui NARUSE)
03:29 PM Feature #13560: Module#attr_ methods return reasonable values
> What would perhaps be nice would be to have a way to initialize these to nil, upon
attr_* definition
Why nice ? This is definitely a purpose of `initialize` method. Belongs to object initialization, not class definition. In additio...
dunrix (Damon Unrix)
03:17 PM Bug #13603: SecureRandom.uuid is not valid v4 and/or RFC 4122
shyouhei (Shyouhei Urabe) wrote:
> Is this a matter of our test code, or the actual output of SecureRandom.uuid does not conform the RFC?
test-case from repo (https://github.com/ruby/ruby/blob/ruby_2_4/test/test_securerandom.rb#L174)...
kulikov-im (Evgeniy Kulikov)
01:31 AM Bug #13603: SecureRandom.uuid is not valid v4 and/or RFC 4122
Is this a matter of our test code, or the actual output of SecureRandom.uuid does not conform the RFC? shyouhei (Shyouhei Urabe)
01:54 PM Revision 1d9030a1 (git): bootstraptest/test_insns.rb: Fix typo
on test message. "torexp" insn does not exist.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
09:49 AM Feature #13483: TracePoint#enable with block for thread-local trace
ko1 (Koichi Sasada) wrote:
> However, this proposal breaks this expectation.
Could you explain it?
Is it because trace.enable { code } does not behave like
begin; trace.enable; code; ensure; trace.disable; end ?
If so, I think...
Eregon (Benoit Daloze)
08:26 AM Revision b3d126d5 (git): rb_wait_for_single_fd: do not OOM or segfault with invalid FD on select()
Instead, match the poll() implementation used on Linux for now;
as the Linux poll(2) manpage describes using negative FD to
easily ignore an FD in a larger FD set while (sleeping the given
timeout). I'm not entirely sure if matching pol...
Eric Wong
07:23 AM Revision 71dca4b6 (git): test for IO.copy_stream CPU usage (r58534)
I'm likely to make similar mistakes in the future when working
on Fiber auto-scheduling. Start adding assertions for existing
code, first.
* test/ruby/test_io.rb (test_copy_stream_no_busy_wait): added
* test/lib/test/unit/assertions.rb...
Eric Wong
07:18 AM Revision 85fe3def (git): Revert "common: "test-all" depends on "exts" target"
This reverts r58919.
Apparently skipping exts is intentional since r58759
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
05:41 AM Bug #13503 (Closed): Improve performance of some Time & Rational methods
Applied in changeset trunk|r58922.
----------
Improve performance of some Time & Rational methods
rational.c (i_gcd): replace GCD algorithm from Euclidean algorithm to Stein
algorithm (https://en.wikipedia.org/wiki/Binary_GCD_algor...
watson1978 (Shizuo Fujita)
05:41 AM Bug #13519 (Closed): Improve performance of some Time methods
Applied in changeset trunk|r58921.
----------
Improve performance of some Time methods
internal.h : add rb_numeric_quo() as internal API.
rational.c : rename numeric_quo() to rb_numeric_quo() as internal API.
time.c (quov): optimize by...
watson1978 (Shizuo Fujita)
05:41 AM Revision b0accd9b (git): Improve performance of some Time & Rational methods
rational.c (i_gcd): replace GCD algorithm from Euclidean algorithm to Stein
algorithm (https://en.wikipedia.org/wiki/Binary_GCD_algorithm).
Some Time methods will call internal quov() function and it calls
Rational#quo -> f_...
watson1978 (Shizuo Fujita)
05:41 AM Revision 6fcb76ed (git): Improve performance of some Time methods
internal.h : add rb_numeric_quo() as internal API.
rational.c : rename numeric_quo() to rb_numeric_quo() as internal API.
time.c (quov): optimize by invoking rb_numeric_quo() to retrieve a value of
Numeric#quo instead of method dispa...
watson1978 (Shizuo Fujita)
05:18 AM Revision e7ff8622 (git): .travis.yml: exts is not needed for tests here
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
04:35 AM Revision f9afb444 (git): common: "test-all" depends on "exts" target
This allows me to test changes to ext/ more easily by only typing:
make test-all TESTS=/path/to/ext/test_foo.rb
I spent a few minutes wondering what was wrong before I realized
changes to exts were not taking effect.
git-svn-id: svn...
Eric Wong
04:12 AM Feature #13602: Optimize instance variable access if $VERBOSE is not true when compiling
It doesn't look nice to assume `$VERBOSE` doesn't change.
And seems that benchmark includes allocation and initialization.
nobu (Nobuyoshi Nakada)
03:43 AM Revision 8e81b3c7 (git): mspec/commands/mspec.rb: formatter for multi_exec
* spec/mspec/lib/mspec/commands/mspec.rb (MSpecMain#multi_exec):
as multi_exec children must run with yaml formatter, append the
option for it after other options to override another formatter
option with a warning if it is given.
...
nobu (Nobuyoshi Nakada)
03:14 AM Revision 944c8f40 (git): .travis.yml: get number of processors at runtime
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
03:06 AM Revision 2e75043a (git): erb.rb: Use str_uplus instead of rb_str_dup
to skip unnecessary string allocation on frozen_string_literal: false.
str_uplus can bypass calling rb_str_dup when OBJ_FROZEN is true.
* Before
erb_render 1.064
* Afete
erb_render 0.909
git-svn-id: svn+ssh://ci.ruby-lang....
k0kubun (Takashi Kokubun)
02:47 AM Revision 697c82b6 (git): benchmark: Rename to bm_erb_render.rb
from bm_app_erb_render.rb.
I'm told from ko1 that bm_app_* is namespace for Ruby applications,
not for ERB and we should use bm_erb_* for ERB benchmark instead.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58915 b2dd03c8-39d4-4d8f...
k0kubun (Takashi Kokubun)
02:01 AM Revision b3a9fd0d (git): apply timeout scale
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e ko1 (Koichi Sasada)
01:40 AM Feature #13601 (Closed): Remove yield_self from Ruby 2.5 (already implemented)
Closing as per request. shyouhei (Shyouhei Urabe)
12:23 AM Feature #13601: Remove yield_self from Ruby 2.5 (already implemented)
You both have provided better examples as to the differences. Also finding out `yield_self` returns an Enumerator was a new one to me. I guess this feature request can be closed. danielpclark (Daniel P. Clark)
01:36 AM Feature #13600: yield_self should be chainable/composable
I'm not sure if this should be an extension to yield_self or a separate new method. shyouhei (Shyouhei Urabe)
01:26 AM Bug #13599 (Closed): Float#ceil(n) doesn't work for small floats
Applied in changeset trunk|r58913.
----------
numeric.c: fix for small number
* numeric.c (flo_floor, flo_ceil): should not return zero for small
number. [ruby-core:81394] [Bug #13599]
nobu (Nobuyoshi Nakada)
01:26 AM Revision 9f5a468c (git): numeric.c: fix for small number
* numeric.c (flo_floor, flo_ceil): should not return zero for small
number. [ruby-core:81394] [Bug #13599]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:04 AM Revision 1dec75c0 (git): dir.c: fix FD leaks
* dir.c (do_opendir): close FD when fdopendir failed, e.g.,
ENOTDIR. [Feature#13056]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)

05/26/2017

09:37 PM Feature #13601: Remove yield_self from Ruby 2.5 (already implemented)
`instance_eval` changes scope, while `yield_self` does not.
```ruby
class A
def foo
1
end
def yield_self
yield self
end
end
def self.foo
2
end
p A.new.instance_eval { self.foo * 3 } # => 3
p A.new....
zverok (Victor Shepelev)
08:33 PM Feature #13601: Remove yield_self from Ruby 2.5 (already implemented)
Note there are differences, for example
~~~ruby
42.instance_eval { abs2 } #=> 1764
~~~
won't work with Kernel#yield_self and
~~~ruby
42.yield_self #=> #<Enumerator: 42:yield_self>
~~~
won't work with BasicObject#instance_eval...
shan (Shannon Skipper)
07:35 PM Feature #13601 (Closed): Remove yield_self from Ruby 2.5 (already implemented)
Issue https://bugs.ruby-lang.org/issues/6721 for adding `yield_self` is unnecessary as `BasicObject#instance_eval` will do the exact same thing.
~~~ruby
class BasicObject
alias :yield_self :instance_eval
end
2.yield_self { |x|...
danielpclark (Daniel P. Clark)
09:31 PM Bug #10093: SecureRandom.uuid is not valid v4 and/or RFC 4122
usa (Usaku NAKAMURA) wrote:
> Please do not reuse past tickets.
Open new issue https://bugs.ruby-lang.org/issues/13603
kulikov-im (Evgeniy Kulikov)
02:25 PM Bug #10093: SecureRandom.uuid is not valid v4 and/or RFC 4122
Please do not reuse past tickets. usa (Usaku NAKAMURA)
01:54 PM Bug #10093: SecureRandom.uuid is not valid v4 and/or RFC 4122
https://www.ietf.org/rfc/rfc4122.txt (#4.4)
---
current test is https://github.com/ruby/ruby/blob/ruby_2_4/test/test_securerandom.rb#L174
```ruby
def test_uuid
uuid = @it.uuid
assert_equal(36, uuid.size)
assert_match(/\A...
kulikov-im (Evgeniy Kulikov)
09:29 PM Bug #13603 (Closed): SecureRandom.uuid is not valid v4 and/or RFC 4122
https://www.ietf.org/rfc/rfc4122.txt (#4.4)
---
(reopen from https://bugs.ruby-lang.org/issues/10093#change-65105)
current test is https://github.com/ruby/ruby/blob/ruby_2_4/test/test_securerandom.rb#L174
```ruby
def test_uuid...
kulikov-im (Evgeniy Kulikov)
08:48 PM Feature #13602 (Rejected): Optimize instance variable access if $VERBOSE is not true when compiling
This patch optimizes instance variable lookup in the case the $VERBOSE
is not true when compiling. If $VERBOSE is not true when compiling
code, it makes the instance variable access use an optimized VM
instruction that does not check...
jeremyevans0 (Jeremy Evans)
06:32 PM Feature #13378: Eliminate 4 of 8 syscalls when requiring file by absolute path
> ```diff
> ...
When you are CRuby developer, all functions declared under include/**/*.h are considered public C API.
(Note that if you are C extension developer, some of such APIs are experimental or private...)
Therefore rb_find_...
naruse (Yui NARUSE)
05:11 PM Revision 015d05c6 (git): numeric.c: remove duplicate code
* numeric.c (flo_to_i): use dbl2ival and reduce duplicate code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
05:10 PM Revision 081b38fd (git): * 2017-05-27
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
05:10 PM Revision 6270d595 (git): Improve Array#concat performance if only one argument is given
* array.c (rb_ary_concat_multi): concatenate the array without generating
temporary Array object if only one argument is given.
This is very similar with r58886.
Array#concat will be faster around 19%.
[Fix GH-1634]
###...
watson1978 (Shizuo Fujita)
04:52 PM Feature #13600: yield_self should be chainable/composable
In case the description is unclear, the goal is to support something like this:
```
pipeline = (&:upcase).yield_self(&:reverse)
"ruby".yield_self(pipeline)
#=> "YRUB"
```
or else:
```
pipeline = (&:upcase) | (&:reverse)
"r...
avit (Andrew Vit)
03:29 PM Feature #13600 (Rejected): yield_self should be chainable/composable
One of the main use cases that would make `yield_self` a helpful addition is to build functional pipelines (function composition). This is currently not possible since Proc/Lambda do not handle `yield_self` in the expected way.
I beli...
avit (Andrew Vit)
02:55 PM Bug #13599 (Closed): Float#ceil(n) doesn't work for small floats
When using ceil to round up to n digits (as opposed to nearest integer) with the optional first argument, it doesn't work for very small floats:
~~~
2.4.1 :001 > 0.0000000001.ceil(1)
=> 0.0 # => Expected output: 0.1
# Doing it...
Jalada (David Somers)
02:17 PM Revision 43572889 (git): erb.rb: Tiny improvement of compiling cost
by reducing string allocation.
* Before
app_erb 0.687
* After
app_erb 0.679
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
01:58 PM Revision 9f9f8236 (git): erb.rb: [DOC] Follow compiled code's change
introduced in r58905.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
01:49 PM Revision d9efeebf (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
01:49 PM Revision 6f685e10 (git): erb.rb: Generate static string with opt_str_uminus
to skip object allocation for static string.
We can't always enable frozen_string_literal pragma because we can't
freeze string literals embedded by user for backward compatibility.
So we need to use fstring for each static string.
Sin...
k0kubun (Takashi Kokubun)
12:45 PM Feature #11952: Use getrusage for Process.times if available
Does anyone have opinion about this? Can I commit this?
I think it would be good to apply this patch to improve lib/benchmark.rb's precision.
k0kubun (Takashi Kokubun)
12:12 PM Revision 5fc32362 (git): erb.rb: Use script encoding instead of force_encoding
The original intention of introducing `_erbout.force_encoding`
in r21170 was:
- "returns a string in the same character encoding as the input string."
- "When the input string has a magic comment, however, it returns a string
in the e...
k0kubun (Takashi Kokubun)
09:49 AM Revision e3c14068 (git): remove extra call to OleInitialize
[Fix GH-1629]
Signed-off-by: Matt Wrock <matt@mattwrock.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58903 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:28 AM Bug #13595 (Closed): rb_alloc_tmp_buffer2 broken when: elsize % sizeof(VALUE) == 0
Applied in changeset trunk|r58902.
----------
attempt to fix rb_alloc_tmp_buffer2 for ALLOCV_N
This is a confusing function to my arithmetic-challenged mind,
but nobu seems alright with this. Anyways this lets me use
large values of e...
Anonymous
05:35 AM Bug #13595: rb_alloc_tmp_buffer2 broken when: elsize % sizeof(VALUE) == 0
Reconsidered and yours seems the intended. nobu (Nobuyoshi Nakada)
05:19 AM Bug #13595: rb_alloc_tmp_buffer2 broken when: elsize % sizeof(VALUE) == 0
Maybe like this?
```diff
diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h
index 0b277dce19..95dab1bf3f 100644
--- a/include/ruby/ruby.h
+++ b/include/ruby/ruby.h
@@ -1612,9 +1612,10 @@ rb_alloc_tmp_buffer2(volatile VALUE *s...
nobu (Nobuyoshi Nakada)
07:28 AM Revision 190e29f7 (git): attempt to fix rb_alloc_tmp_buffer2 for ALLOCV_N
This is a confusing function to my arithmetic-challenged mind,
but nobu seems alright with this. Anyways this lets me use
large values of elsize without segfaulting, and "make exam"
passes.
* include/ruby/ruby.h (rb_alloc_tmp_buffer2):...
Eric Wong
07:04 AM Revision 5e7ce519 (git): dir.c: yield without base part
* dir.c (glob_helper): yield globbed part only without the base
directory path part if the base is given. [Feature#13056]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:02 AM Revision 9ee48c0a (git): runruby.rb: no PRELOAD on multiarch [ci skip]
* tool/runruby.rb: do not set environment to preload on multiarch
platforms, otherwise other external commands (e.g., /bin/sh)
fail to run.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
06:42 AM Revision 10ee38b6 (git): * lib/uri/common.rb: [DOC] add rdoc to describe
URI.unescape is obsolete [ci-skip] [fix GH-1630]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
sonots (Naotoshi Seo)
06:39 AM Revision c854fde3 (git): sprintf.c: remove redundant condition
* sprintf.c (rb_str_format): when `t + 1 == end` (or `t < end`),
`*t == '%'` is always true. [ruby-core:80153] [Bug #13315]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
06:39 AM Revision a77cb8c8 (git): string.c: adjust style [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:28 AM Revision 2881374c (git): Symbol support for opt_eql_func too
* vm_insnhelper.c (comparable_by_identity): extract the condition
where comparable by identity. currently both are same types,
Fixnum, Flonum, or Symbol.
* vm_insnhelper.c (opt_eql_func): support Symbol too.
git-svn-id: svn+ssh://...
nobu (Nobuyoshi Nakada)
05:32 AM Feature #13483 (Rejected): TracePoint#enable with block for thread-local trace
ko1 (Koichi Sasada)
05:32 AM Feature #13483: TracePoint#enable with block for thread-local trace
After consideration, I found several problems.
There is a implicit expectation that we can emulate block accept call with begin/ensure like:
```
open do
...
end
#=> same as:
begin
open
yield
ensure
close
end
```
...
ko1 (Koichi Sasada)
05:27 AM Bug #13330 (Closed): Array.include? is slow for symbols
Applied in changeset trunk|r58895.
----------
Symbol support for opt_eq_func.
* vm_insnhelper.c (opt_eq_func): optimize for symbol comparison.
[Bug #13330] [fix GH-1540]
ko1 (Koichi Sasada)
05:26 AM Revision ad0f8ff7 (git): Symbol support for opt_eq_func.
* vm_insnhelper.c (opt_eq_func): optimize for symbol comparison.
[Bug #13330] [fix GH-1540]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ko1 (Koichi Sasada)
01:50 AM Revision 8dce6221 (git): compile.c: fix possible use of uninitialized value
LABEL::unremovable added by r58810 is not initialized by
new_label_body(), making the optimization unstable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
rhenium (Kazuki Yamaguchi)

05/25/2017

11:43 PM Revision 7d52ed59 (git): use timeout scale.
* test/lib/envutil.rb: introduce EnvUtil.apply_timeout_scale to use
this scale from outside.
* test/ruby/test_thread.rb (test_fork_in_thread): respect timeout scale.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58893 b2dd03c8-3...
ko1 (Koichi Sasada)
08:08 PM Bug #13595: rb_alloc_tmp_buffer2 broken when: elsize % sizeof(VALUE) == 0
normalperson@yhbt.net wrote:
> Bug #13595: rb_alloc_tmp_buffer2 broken when: elsize % sizeof(VALUE) == 0
> ...
Perhaps the following patch is what is needed:
```diff
--- a/include/ruby/ruby.h
+++ b/include/ruby/ruby.h
@@ -1611,7 ...
normalperson (Eric Wong)
06:30 PM Feature #8643: Add Binding.from_hash
Yes, it makes sense. Thanks a lot! :) rosenfeld (Rodrigo Rosenfeld Rosas)
03:47 PM Feature #8643 (Rejected): Add Binding.from_hash
Since [Feature #8631] is accepted, closing this ticket. k0kubun (Takashi Kokubun)
06:29 PM Feature #8631: Add a new method to ERB to allow assigning the local variables from a hash
Awesome, thanks! rosenfeld (Rodrigo Rosenfeld Rosas)
03:38 PM Feature #8631 (Closed): Add a new method to ERB to allow assigning the local variables from a hash
Applied in changeset trunk|r58891.
----------
erb.rb: Add ERB#result_with_hash
[ruby-core:55985] [Feature #8631] [fix GH-1623]
k0kubun (Takashi Kokubun)
03:37 PM Feature #8631: Add a new method to ERB to allow assigning the local variables from a hash
I discussed about this with Seki-san.
For name, I rethought that "result_with_locals" sounds to use caller's local variables. Since "result_with_hash" doesn't seem to mean it and is shorter, we agreed "result_with_hash" is the best.
...
k0kubun (Takashi Kokubun)
05:43 PM Feature #13574: Method redefinition warning
> What do you mean?
> ...
Yes. Using remove_method + define_method, a concurrent thread may get a NoMethodError. In contrast, using alias_method + define_method, while the other thread could obviously call either the old or new definiti...
matthewd (Matthew Draper)
09:32 AM Feature #13574: Method redefinition warning
matthewd (Matthew Draper) wrote:
> apart from removing the method first, which isn't atomic
What do you mean?
That remove_method + new definition is not atomic?
Eregon (Benoit Daloze)
03:43 PM Revision 20a82f88 (git): NEWS: Add entry for ERB#result_with_hash
See r58891.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
03:38 PM Revision eb1652b5 (git): erb.rb: Add ERB#result_with_hash
[ruby-core:55985] [Feature #8631] [fix GH-1623]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
03:33 PM Bug #13315 (Closed): Single "%" at the end of `printf` format string appears in the result
Applied in changeset trunk|r58890.
----------
Raise ArgumentError if sprintf format string ends with %
* Add tests and specs. See ruby/spec#401.
Patch by Yuta Iwama and Shintaro Morikawa.
[ruby-core:80153] [Bug #13315] [Fix GH-1560]
Eregon (Benoit Daloze)
03:33 PM Revision fd8df3ab (git): Raise ArgumentError if sprintf format string ends with %
* Add tests and specs. See ruby/spec#401.
Patch by Yuta Iwama and Shintaro Morikawa.
[ruby-core:80153] [Bug #13315] [Fix GH-1560]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eregon (Benoit Daloze)
03:14 PM Revision e779eee9 (git): * 2017-05-26
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:14 PM Revision a2b4979b (git): hash.c: docs for Hash#transform_values
* hash.c: [DOC] fix return value in call-seq of Hash#transform_values;
other small fixes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
stomar (Marcus Stollsteimer)
02:08 PM Feature #11624 (Rejected): ERB deserves its own commenting token
This syntax only adds a support for comments that include "%>" or "%%>". I think the major use case of such kind of feature is just ad-hoc disabling partial template and it's not for a normal permanent comment, which can be done in "<%#"... k0kubun (Takashi Kokubun)
01:35 PM Feature #13563: Implement Hash#choice method.
babanba-n (matzbara masanao) wrote:
> I feel that Hash#slice is wrong name and Hash#pick is better name.
> ...
I prefer Hash#pick over Hash#choice.
I would expect the missing keys to return whatever the default value of the hash is...
saturnflyer (Jim Gay)
12:24 PM Feature #12694: Want a String method to remove heading substr
I've created a PR https://github.com/ruby/ruby/pull/1632 with a name String#**remove_prefix**.
I will merge if the name is acceptable.
sonots (Naotoshi Seo)
11:41 AM Revision a270c90e (git): insns.def: [DOC] Fix description of tostring
rb_obj_as_string() calls not #to_str (idTo_str) but #to_s (idTo_s).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58887 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
11:14 AM Revision 592c3f9b (git): string.c: Optimize String#concat when argc is 1
Optimize performance regression introduced in r56021.
* Benchmark (i7-4790K @ 4.00GH, x86_64 GNU/Linux)
Benchmark.ips do |x|
x.report("String#concat (1)") { "a".concat("b") }
if RUBY_VERSION >= "2.4.0"
x.report("String#concat (...
k0kubun (Takashi Kokubun)
09:15 AM Bug #13390 (Closed): MinGW build test-all SEGV, issue in test framework or error recovery?
Closing per OP request Eregon (Benoit Daloze)
09:04 AM Bug #13312: String#casecmp raises TypeError instead of returning nil
stomar (Marcus Stollsteimer) wrote:
> I also added a NEWS entry and updated the specs with a version guard for 2.5 (I do not know how this would be handled in case the change should be backported).
Thanks, r58839 looks great.
In c...
Eregon (Benoit Daloze)
08:58 AM Bug #13598 (Closed): mutex_m: Missing info in the doc
The doc for Mutex_m should remind the user of the necessity of calling super() in *each* class that includes Mutex_m.
The average user will do:
~~~
require 'mutex_m'
class A
include Mutex_m
def initialize myval
@myva...
mala (stefano frabetti)
08:34 AM Revision 4bc4403b (git): dir.c: document base keyword argument of Dir.glob
* dir.c: [DOC] document the new `base` keyword argument of Dir.glob
[Feature #13056]; also improve docs for Dir.glob and Dir[].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
stomar (Marcus Stollsteimer)
07:50 AM Revision 135c7a53 (git): dir.c: docs for Dir.each_child and Dir.children
* dir.c: [DOC] fix examples for Dir.each_child and Dir.children.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
stomar (Marcus Stollsteimer)
07:36 AM Revision 7e323b5d (git): vm_insnhelper.c: remove redefinitions and undefine after used
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
05:29 AM Revision 7db534a2 (git): vm_insnhelper.c: rb_eql_opt should call eql?
* vm_insnhelper.c (rb_eql_opt): should call #eql? on Float and
String, not #==.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
04:25 AM Bug #13447 (Closed): Improve performance of rb_eql()
Applied in changeset trunk|r58881.
----------
Improve performance of rb_eql()
This improvement is similar with https://github.com/ruby/ruby/pull/1552
internal.h: add declaration of rb_eql_opt() API.
vm_insnhelper.c (rb_eql_opt): add ...
watson1978 (Shizuo Fujita)
04:25 AM Bug #13365 (Closed): Improve performance of rb_equal() with special constants
Applied in changeset trunk|r58880.
----------
Improve performance of rb_equal()
* object.c (rb_equal): add optimized path to compare the objects using
rb_equal_opt(). Previously, if not same objects were given, rb_equal() would
...
watson1978 (Shizuo Fujita)
04:25 AM Revision b827fdff (git): Improve performance of rb_eql()
This improvement is similar with https://github.com/ruby/ruby/pull/1552
internal.h: add declaration of rb_eql_opt() API.
vm_insnhelper.c (rb_eql_opt): add rb_eql_opt() API which provides optimized
path for #eql? method such as rb_e...
watson1978 (Shizuo Fujita)
04:25 AM Revision 6e0e067d (git): Improve performance of rb_equal()
* object.c (rb_equal): add optimized path to compare the objects using
rb_equal_opt(). Previously, if not same objects were given, rb_equal() would
call `==' method via rb_funcall() which took a long time.
rb_equal_opt() has...
watson1978 (Shizuo Fujita)
02:50 AM Feature #11302 (Closed): Dir.entries and Dir.foreach without [".", ".."]
Applied in changeset trunk|r58879.
----------
dir.c: Dir.each_child and Dir.children
* dir.c (dir_s_each_child, dir_s_children): Dir.each_child and
Dir.children which are similar to Dir.foreach and Dir.entries
respectively, except ...
nobu (Nobuyoshi Nakada)
02:50 AM Revision 944c455b (git): dir.c: Dir.each_child and Dir.children
* dir.c (dir_s_each_child, dir_s_children): Dir.each_child and
Dir.children which are similar to Dir.foreach and Dir.entries
respectively, except to exclude "." and "..". [Feature #11302]
git-svn-id: svn+ssh://ci.ruby-lang.org/rub...
nobu (Nobuyoshi Nakada)
02:50 AM Revision 5a302b30 (git): test_dir.rb: test Dir.entries
* test/ruby/test_dir.rb (test_entries): test class singleton
method Dir.entries too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
02:14 AM Feature #13056 (Closed): base option to Dir.glob
nobu (Nobuyoshi Nakada)
01:46 AM Revision bf463442 (git): dir.c: dir_each_entries
* dir.c (dir_each_entries): expand entries without method calls.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:08 AM Bug #13594: Segfault in gc_sweep_step 2.4.1
I've found a similar result. https://travis-ci.org/sferik/rails_admin/jobs/124039186
This issue seems to be related #13305 and fixed at r57971.
Could you try latest trunk ruby or patched 2.4 with r57971?
wanabe (_ wanabe)

05/24/2017

09:26 PM Revision 2079b710 (git): string.c: fix String#crypt leak introduced in r58866
* string.c (rb_str_crypt): define LARGE_CRYPT_DATA when allocating
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
07:40 PM Misc #12529: LEGAL file covering all the license information within Ruby
@hsbt I do not have any other considerations or concerns right now.
Anonymous
06:15 PM Misc #12529: LEGAL file covering all the license information within Ruby
I think this issue is already resolved without UCD license.
@jaruga
Is there another consideration about LEGAL file with original your request?
hsbt (Hiroshi SHIBATA)
07:31 PM Bug #13597: Does read_nonblock call remalloc for the buffer if does it just set the size attribute
emily@mongodb.com wrote:
> Hello
> ...
Correct. We do not realloc here since there is a good chance
the buffer can be reused soon after and need the larger size.
realloc can be very expensive.
> I see this request to allow an off...
normalperson (Eric Wong)
05:06 PM Bug #13597 (Closed): Does read_nonblock call remalloc for the buffer if does it just set the size attribute
Hello
I've observed that a lot of memory gets allocated and wasted when read_nonblock is called for a number of bytes much larger than is actually read from the socket.
This line https://github.com/ruby/ruby/blob/0130bb01baed404c0e3c...
emilys (Emily Stolfo)
06:59 PM Revision daf14f71 (git): * 2017-05-25
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
06:59 PM Revision 410362f6 (git): thread_pthread: retry timer thread creation w/o attr on EINVAL
Setting a small stack size can fail due to having 3rd-party
libraries (e.g. libkqueue) loaded, if those libraries use
thread-local-storage (__thread) heavily. This causes
pthread_create to fail with small stacks; even if our
timer_threa...
Eric Wong
02:26 PM Revision de5e3475 (git): dir.c: prefer NAMLEN to d_name
* dir.c (glob_helper): prefer NAMLEN, do not assume d_name is NUL
terminated everywhere.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:30 PM Revision c31de52f (git): test_http.rb: fix r58855
* test/net/http/test_http.rb (test_s_start): git rid of error when
failed to start a connection.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
08:07 AM Bug #13596 (Closed): Segfault when catching SystemStackError in eval
nobu (Nobuyoshi Nakada)
06:46 AM Bug #13596: Segfault when catching SystemStackError in eval
Updated description to add a successful testcase. mjones (Morgan Jones)
06:12 AM Bug #13596: Segfault when catching SystemStackError in eval
Here's a GDB trace with VMDEBUG=1 for a Ruby 2.4.1 checkout. It appears that the crash occurs when setting up the frame in iseq_compile_each, when the application tries to access rsp+8 (0x7fffff7fed50+8). This lands in the redzone page, ... mjones (Morgan Jones)
03:31 AM Bug #13596 (Closed): Segfault when catching SystemStackError in eval
This minimal testcase will crash most ruby versions with a SIGSEGV (though it's likely that other constructions could trigger the same behavior). Effectively, after the first SystemStackError that is caught from eval, a subsequent stack ... mjones (Morgan Jones)
08:00 AM Bug #13592 (Closed): Enumerable#reduce with symbol does not respect method visibility
Applied in changeset trunk|r58871.
----------
enum.c: respect method visibility
* enum.c (ary_inject_op): should respect method visibility, do not
optimize uncallable method. [ruby-core:81349] [Bug #13592]
nobu (Nobuyoshi Nakada)
06:35 AM Bug #13592: Enumerable#reduce with symbol does not respect method visibility
i think you still mix reduce(&:+) with reduce(:+)
both are two totally different ways to call this method.
(the later doesn't go the way with a Proc object)
because reduce("+") works too
Hanmac (Hans Mackowiak)
01:06 AM Bug #13592: Enumerable#reduce with symbol does not respect method visibility
This is exactly what I am saying.
This behavior of `reduce` is unpredictable and different of the another `Enumerable` methods.
Users will expect that symbol argument is converted in proc and then applied to object.
`reduce` (si...
americodls (Americo Duarte)
08:00 AM Revision 5e25bfa2 (git): enum.c: respect method visibility
* enum.c (ary_inject_op): should respect method visibility, do not
optimize uncallable method. [ruby-core:81349] [Bug #13592]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:57 AM Revision da9d5db8 (git): test_enum.rb: test_inject_array_op_redefined
* test/ruby/test_enum.rb (test_inject_array_op_redefined): test
other operators too. [Bug#12178]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:57 AM Revision 73d797ad (git): assertions.rb: AllFailures#foreach
* test/lib/test/unit/assertions.rb (AllFailures#foreach):
shortcircuit for `each` and `AllFailures#for`.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:11 AM Revision d7015ae4 (git): duplicate method
* test/ruby/test_enum.rb (assert_float_equal): remove overridden
definition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
06:57 AM Bug #13553 (Closed): Improve performance in where push the element into non shared Array object
Applied in changeset trunk|r58867.
----------
Improve performance in where push the element into non shared Array object
* array.c (ary_ensure_room_for_push): use rb_ary_modify_check() instead of
rb_ary_modify() to check whether th...
watson1978 (Shizuo Fujita)
06:57 AM Revision 044257c0 (git): Improve performance in where push the element into non shared Array object
* array.c (ary_ensure_room_for_push): use rb_ary_modify_check() instead of
rb_ary_modify() to check whether the object can be modified for non shared
Array object. rb_ary_modify() has the codes for shared Array object too.
In...
watson1978 (Shizuo Fujita)
06:55 AM Revision 92261511 (git): string.c: for small crypt_data
* string.c (rb_str_crypt): struct crypt_data defined in
missing/crypt.h is small enough.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
06:46 AM Revision 9e1624cf (git): Add debug counters.
* debug_counter.h: add the following counters to measure object types.
obj_free: freed count
obj_str_ptr: freed count of Strings they have extra buff.
obj_str_embed: freed count of Strings they don't have extra buff.
obj_str_shar...
ko1 (Koichi Sasada)
03:01 AM Revision 144e0670 (git): string.c (rb_str_crypt): fix excessive stack use with crypt_r
"struct crypt_data" is 131232 bytes on x86-64 GNU/Linux,
making it unsafe to use tiny Fiber stack sizes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58864 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
03:00 AM Bug #13593: Addrinfo#== behaves oddly
Accurate observation. It does not define equality so falls back to Object's definition, which compares identity.
I guess this is not by design; just no one had seriously needed yet.
shyouhei (Shyouhei Urabe)
02:37 AM Bug #13595 (Closed): rb_alloc_tmp_buffer2 broken when: elsize % sizeof(VALUE) == 0
Here is the function in full as of current trunk (r58863):
~~~c
static inline void *
rb_alloc_tmp_buffer2(volatile VALUE *store, long count, size_t elsize)
{
size_t cnt = (size_t)count;
if (elsize % sizeof(VALUE) == 0) {
...
normalperson (Eric Wong)
12:40 AM Bug #13594: Segfault in gc_sweep_step 2.4.1
This seems to be caused by some interaction with the `simplecov` gem. I don't understand why, yet, and I have not yet been able to create a simple reproduction case. sax (Eric Saxby)
12:34 AM Revision 2e87ef8b (git): rubyspec/core/io/popen_spec: avoid lingering "ruby -e sleep" process
The ruby_cmd helper blindly escapes code blocks passed to it,
causing "sleep" to be quoted in the command-line. This quoting
results in IO.popen using a subshell (/bin/sh) to run the given
string command instead of invoking the Ruby exe...
Eric Wong

05/23/2017

07:56 PM Bug #13592: Enumerable#reduce with symbol does not respect method visibility
reduce(&:+) is different from
reduce(:+), this one has nothing to do with :+.to_proc
reduce/inject with symbol param does call the method internally without checking if its private or not
Hanmac (Hans Mackowiak)
04:08 PM Bug #13592 (Open): Enumerable#reduce with symbol does not respect method visibility
americodls (Americo Duarte)
03:53 PM Bug #13592 (Feedback): Enumerable#reduce with symbol does not respect method visibility
Please, reconsider. Look this example:
~~~
irb(main):092:0> :puts.to_proc.call("")
NoMethodError: private method `puts' called for "":String
~~~
nobu (Nobuyoshi Nakada) wrote:
> The proc returned by `Symbol#to_proc` is equiva...
americodls (Americo Duarte)
03:04 PM Bug #13592 (Rejected): Enumerable#reduce with symbol does not respect method visibility
The proc returned by `Symbol#to_proc` is equivalent to `proc {|recv, *args| recv.__send__(self, *args)}`.
So it can call private methods too.
nobu (Nobuyoshi Nakada)
02:43 PM Bug #13592: Enumerable#reduce with symbol does not respect method visibility
Sorry, ignore the IRB thing. But my question about the reduce still valid.
americodls (Americo Duarte)
02:37 PM Bug #13592 (Closed): Enumerable#reduce with symbol does not respect method visibility
When use reduce with symbol, I expect the symbol is called in object but respecting the method visibility.
Example with source code written in a file.
~~~ruby
Fixnum.instance_eval do
private :+
end
p [1,2,3].reduce(:+)
~~~...
americodls (Americo Duarte)
07:19 PM Bug #13594 (Closed): Segfault in gc_sweep_step 2.4.1
In ruby 2.4.1 I am seeing segfaults in `gc_sweep_step`. These do not occur when I use the same commands in ruby 2.3.4.
These are accompanied by error messages such as the following:
error for object 0x1: pointer being freed was not...
sax (Eric Saxby)
05:47 PM Feature #13568: File#path for O_TMPFILE fds has no meaning
I think an exception is the best way to be clear about the problem here, nil or a fake path are most likely to raise exceptions, but later and in a harder to debug way.
Moreover, this only happens for O_TMPFILE files, so it seems reason...
Eregon (Benoit Daloze)
05:41 PM Feature #13576: File#to_path shall be deleted
This could break methods which take a pathname-like object and call #to_path when a File is passed to them (e.g. File.delete(file), etc).
I am not saying it is good practice, but I think it should be evaluated for compatibility.
Mayb...
Eregon (Benoit Daloze)
05:33 PM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
MSP-Greg (Greg L) wrote:
> Given that spec tests are not currently included in appveyor, do you know if the test ['defaults to UTC when bad zones given'](https://github.com/ruby/ruby/blob/trunk/spec/rubyspec/core/time/zone_spec.rb#L65-L...
usa (Usaku NAKAMURA)
03:39 PM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
Using a MinGW build, ENV['TZ'] seemed to have no affect on Time, and [time zone spec tests](https://msp-greg.github.io/file.mingw_test-all.html#mspec-1-failure) failed.
I had previously been looking at 'Microsoft Time Zone Index Value...
MSP-Greg (Greg L)
02:29 PM Bug #13591 (Rejected): spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
MSVCRT uses `TZ`.
See https://msdn.microsoft.com/en-us/library/w4ddyt9h.aspx
usa (Usaku NAKAMURA)
02:15 PM Bug #13591 (Closed): spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
Windows does not support ENV['TZ'], so it should be removed from rspec tests.
See [GitHub PR 1627](https://github.com/ruby/ruby/pull/1627)
MSP-Greg (Greg L)
04:57 PM Bug #13438: Fix heap overflow due to configure.in not being updated for HEAP_* -> HEAP_PAGE_* variable renaming
ko1 (Koichi Sasada) wrote:
> > we may want to drop OpenBSD <5.2 support
> ...
I think we should drop OpenBSD <5.2 support. I doubt anyone running such an old version of OpenBSD would want to run ruby 2.5+. The OpenBSD project only su...
jeremyevans0 (Jeremy Evans)
04:51 PM Revision 86c9a6d4 (git): * 2017-05-24
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
04:51 PM Revision 6a153781 (git): skip on Solaris 11
On Solaris 11, MSG_OOB is in readfds?
http://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11x/ruby-trunk/log/20170523T152403Z.fail.html.gz
http://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11s/ruby-trunk/log/20170523T152503Z.fail...
naruse (Yui NARUSE)
03:30 PM Bug #13593 (Rejected): Addrinfo#== behaves oddly
It appears as if Addrinfo is using object identity. `Addrinfo#==` doesn't appear to work as one might expect, given the same instantiation:
~~~
> irb
2.4.0 :001 > require 'socket'
=> true
2.4.0 :002 > Addrinfo.tcp('0.0.0.0', 123...
ioquatix (Samuel Williams)
02:34 PM Revision 6d06aadd (git): Dir as base option
* dir.c (glob_helper): support Dir instance as `base` option.
[Feature#13056]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58860 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:54 PM Revision 58b6c422 (git): test_dir.rb: sort
* test/ruby/test_dir.rb (test_glob_base): sort the globbed result
to compare.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:47 PM Revision 52419a6e (git): Dir.glob base option
* dir.c (dir_s_aref, dir_s_glob): add new optional keyword
argument, `base`. [Feature#13056]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:18 PM Revision 2ba68008 (git): readonly srcdir
.travis.yml: make srcdir unwritable during build and tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:42 PM Revision 08ef146e (git): out-of-place on travis
* .travis.yml (before_script, script): out-of-place build.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:38 PM Revision 0a254684 (git): fix FD leaks
* test/net/http/test_http.rb (test_s_start): finish connections to
get rid of FD leaks.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:11 PM Revision cffb09aa (git): LABEL_FORMAT
* compile.c (LABEL_FORMAT): extract format string for labels.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
11:35 AM Revision dfc11063 (git): unused member
* vsnprintf.c (__sFILE): _lbfsize is not used.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
10:43 AM Feature #13588: Add Encoding#min_char_size, #max_char_size, #minmax_char_size
phluid61 (Matthew Kerwin) wrote:
> I hope there are no encodings where valid characters might not be a multiple of the minimum size.
Me too :) it works for now... the only encodings on Ruby 2.4.1 with `min_enc_len` > 1 are UTF-16 and...
haines (Andrew Haines)
10:31 AM Feature #13588: Add Encoding#min_char_size, #max_char_size, #minmax_char_size
haines (Andrew Haines) wrote:
>
> ...
I hope there are no encodings where valid characters might not be a multiple of the minimum size.
phluid61 (Matthew Kerwin)
10:05 AM Feature #13588: Add Encoding#min_char_size, #max_char_size, #minmax_char_size
I'm implementing a tar archive reader that takes an arbitrary stream (`StringIO`, `File`, `Zlib::GzipReader`, ...) and yields the individual files in the archive. I'd like the yielded file reader to conform as closely as possible to the ... haines (Andrew Haines)
09:17 AM Feature #13588 (Feedback): Add Encoding#min_char_size, #max_char_size, #minmax_char_size
haines (Andrew Haines) wrote:
> When implementing an IO-like object, I'd like to handle encoding correctly.
This should be possible without knowing the minimum and maximum length of characters in the encoding.
> ...
It may be that...
duerst (Martin Dürst)
09:11 AM Bug #13590 (Closed): Change max byte length of UTF-8 to 4 bytes to conform to definition of UTF-8
This seems to be a leftover of issue #11094.
Keeping the max byte length of UTF-8 at 6 seems to only potentially create some inconsistencies and inefficiencies, for no benefit.
I have assigned this issue to me, and will implement i...
duerst (Martin Dürst)
06:02 AM Revision 80a4084b (git): Use test-unit 3.2.4
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Sutou Kouhei
05:44 AM Bug #13579 (Closed): Net::IMAP#append blocks when a NO response is received
Fixed in r58792 and r58844. shugo (Shugo Maeda)
03:45 AM Bug #13589 (Rejected): unmatched opening backtick / closing quote in NoMethodError: undefined method `name' for {}:Hash
Error messages are not Markdown.
Use multiline code block to quote them.
nobu (Nobuyoshi Nakada)
12:19 AM Bug #13589: unmatched opening backtick / closing quote in NoMethodError: undefined method `name' for {}:Hash
domaio (Dorian M) wrote:
> Looking at error.c in general, it seems like a rather intentional
Yes. I bekieve this is how quotation marks in English works. I don't like the idea to change our error messages only because wild Markdown ...
shyouhei (Shyouhei Urabe)
01:04 AM Revision b532c83e (git): readonly srcdir
appveyor.yml: make srcdir unwritable during build and tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58851 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:04 AM Revision bd765ce2 (git): appveyor.yml: remove unused UNICODE_DATA_DIR
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)

05/22/2017

11:41 PM Revision 40a99224 (git): * 2017-05-23
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58849 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
11:41 PM Revision 2ab82704 (git): variable.c (autoload_sleep_done): avoid needless list_node init
We do not need list_del_init in ensure callbacks, only list_del,
since it can only ever be called after list_del_init in
autoload_reset. So avoid the needless re-initialization.
* variable.c (autoload_sleep_done): s/list_del_init/list_...
Eric Wong
09:09 PM Bug #13589: unmatched opening backtick / closing quote in NoMethodError: undefined method `name' for {}:Hash
Thought about it when trying to explain Struct vs OpenStruct on Stack Overflow :) https://stackoverflow.com/a/44121818/407213 domaio (Dorian M)
09:06 PM Bug #13589 (Rejected): unmatched opening backtick / closing quote in NoMethodError: undefined method `name' for {}:Hash
From [`error.c`](https://github.com/ruby/ruby/blob/trunk/error.c#L1953-L1964):
~~~ c
/*
* Document-class: NoMethodError
*
* Raised when a method is called on a receiver which doesn't have it
* defined and also fails to res...
domaio (Dorian M)
06:35 PM Feature #8631: Add a new method to ERB to allow assigning the local variables from a hash
I'm actually fine with whatever name you prefer. result_with_locals and render_with_locals are both fine to me. Thanks a lot! rosenfeld (Rodrigo Rosenfeld Rosas)
03:50 AM Feature #8631: Add a new method to ERB to allow assigning the local variables from a hash
> Or maybe ERB.new(str, locals: {a: b}).result?
For this case, it would have the same problem as ERB.new(str).result(locals: {a: b}) because it can have both binding and locals. In that case, adding locals to given binding is hard to ...
k0kubun (Takashi Kokubun)
04:15 PM Bug #13582 (Closed): IMAPTest#test_append_fail always errors on Windows
shugo (Shugo Maeda) wrote:
> r58840 で対策してみましたがどうでしょうか?
手元で何度か試行してみた感じでは、大丈夫っぽく見えます。
rubyciでも問題が出なくなっているようです。
というわけで、とりあえずcloseとしておきます。
ありがとうございました。
usa (Usaku NAKAMURA)
06:14 AM Bug #13582: IMAPTest#test_append_fail always errors on Windows
usa (Usaku NAKAMURA) wrote:
> r58792で追加されたテストですが、Windowsでは毎回Errorになります。
> ...
r58840 で対策してみましたがどうでしょうか?
shugo (Shugo Maeda)
02:25 PM Revision 35695788 (git): source directory may not be writable
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
02:11 PM Feature #13588: Add Encoding#min_char_size, #max_char_size, #minmax_char_size
Seems sensible to me. Guess someone from the ruby core team or matz should chime in and perhaps comment - or someone may do this in the next internal ruby dev team meeting. :) shevegen (Robert A. Heiler)
12:10 PM Feature #13588 (Feedback): Add Encoding#min_char_size, #max_char_size, #minmax_char_size
When implementing an IO-like object, I'd like to handle encoding correctly. To do so, I need to know the minimum and maximum character sizes for the encoding of the stream I'm reading. However, I can't find a way to access this informati... haines (Andrew Haines)
11:36 AM Feature #13568: File#path for O_TMPFILE fds has no meaning
nobu (Nobuyoshi Nakada) wrote:
> Once #13576 is introduced, this issue becomes stale.
> ...
OK, I see your opinion over File#path. I have different opinion though. I agree with sorah here; a file created using O_TMPFILE can never hav...
shyouhei (Shyouhei Urabe)
11:25 AM Feature #13568: File#path for O_TMPFILE fds has no meaning
Once #13576 is introduced, this issue becomes stale.
It doesn't make sense to change `File#path`.
nobu (Nobuyoshi Nakada)
08:26 AM Feature #13568: File#path for O_TMPFILE fds has no meaning
nobu (Nobuyoshi Nakada) wrote:
> ```sh
> ...
Why are you ignoring #13576, after I repeatedly mentioned in this thread?
shyouhei (Shyouhei Urabe)
08:17 AM Feature #13568: File#path for O_TMPFILE fds has no meaning
```sh
$ ./x86_64-linux/bin/ruby -e 'f = open(File.expand_path("/tmp"), File::RDWR|File::TMPFILE); p open(f).read'
Traceback (most recent call last):
2: from -e:1:in `<main>'
1: from -e:1:in `open'
-e:1:in `to_path': unnamed tempor...
nobu (Nobuyoshi Nakada)
07:49 AM Feature #13568: File#path for O_TMPFILE fds has no meaning
shyouhei (Shyouhei Urabe) wrote:
> nobu (Nobuyoshi Nakada) wrote:
> ...
`File#path` is not relevant to that situation at all.
`Digest.file` just opens the argument, and `open` calls `to_path` method on it to implicit conversion.
``...
nobu (Nobuyoshi Nakada)
05:01 AM Feature #13568: File#path for O_TMPFILE fds has no meaning
nobu (Nobuyoshi Nakada) wrote:
> shyouhei (Shyouhei Urabe) wrote:
> ...
Yes, I'm talking about `File#path`. Situations like [ruby-core:81167](#change-64819) is in my mind. `#to_path` is a separate issue.
> > Do you think `nil` is ...
shyouhei (Shyouhei Urabe)
11:24 AM Bug #13524 (Third Party's Issue): miniruby: [BUG] Segmentation fault at 0x0055e487e00230 ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-li
Took me time for several reasons:
1. Had temporarily ran out of my docker hosts and had to prepare new one. This is my fault.
2. The ruby:2.4-alpine's Dockerfile you linked kindly deletes compiler and other toolchains from the image...
shyouhei (Shyouhei Urabe)
11:23 AM Feature #13576: File#to_path shall be deleted
Agree, it has no meanings. nobu (Nobuyoshi Nakada)
07:36 AM Revision cbedbaf9 (git): lib/net/protocol.rb: account read_bytes before caller sees it
Users may modify the chunk yielded to them in Net::HTTPResponse#read_body.
This will allow users to reduce memory usage by calling
String#clear on the buffer once they're done using it.
* lib/net/protocol.rb (read): increment read_bytes...
Eric Wong
07:13 AM Revision 5565fed8 (git): hash.c: [DOC] fix docs for Hash#transform_values!
Hash#transform_values! returns the receiver rather than a new Hash
object.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
rhenium (Kazuki Yamaguchi)
06:13 AM Revision 27fb27ff (git): net/imap: separate @continuation_request_exception from @exception
Otherwise literal data will be sent even if NO response is returned
because @exception is set to nil in receive_responses.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58844 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
shugo (Shugo Maeda)
06:04 AM Bug #12670: Segmentation fault on `Magick::Image#get_pixels` on ruby since ruby-2.2
It reproduced "incorrect checksum for freed object", with a fix.
```diff
- Data_Wrap_Struct(rb_cData, NULL, dummy_free, destroy_pixel);
+ Data_Wrap_Struct(rb_cData, NULL, destroy_pixel, pixel);
```
nobu (Nobuyoshi Nakada)
05:05 AM Bug #12670: Segmentation fault on `Magick::Image#get_pixels` on ruby since ruby-2.2
nobu (Nobuyoshi Nakada) wrote:
> > ```c
> ...
I'm sorry that it is not RMagick but MY bug.
Please let me try it again.
wanabe (_ wanabe)
04:36 AM Bug #12670: Segmentation fault on `Magick::Image#get_pixels` on ruby since ruby-2.2
> ```c
Data_Wrap_Struct(rb_cData, NULL, dummy_free, &i);
```
Wrapping the pointer to a local variable?
Obviously it is a bug.
If it is the thing what happens in RMagick, it's a bug in object lifetime management of RMagick.
nobu (Nobuyoshi Nakada)
12:29 AM Bug #12670: Segmentation fault on `Magick::Image#get_pixels` on ruby since ruby-2.2
I reduced repro codes, segv.c and segv.rb.
They cause assertion failure with RGENGC_CHECK_MODE=1.
```
ruby 2.5.0dev (2017-05-21 trunk 58832) [x86_64-linux]
creating Makefile
linking shared-object segv.so
0
1
2
3
4
5
6
7
8...
wanabe (_ wanabe)
04:10 AM Revision c45a52af (git): downloader.rb: true symlink on cygwin
* tool/downloader.rb (Downloader.link_cache): on Cygwin, make true
symlink only, which is provided by the OS. as mingw/mswin ruby
can't follow cygwin's pseudo symlink, it will fail on the same
source tree.
git-svn-id: svn+ssh://c...
nobu (Nobuyoshi Nakada)
03:56 AM Bug #12074 (Closed): [PERF] bm_app_erb.rb slower
Applied in changeset trunk|r58842.
----------
erb.rb: Skip creating regexp
if stags and etags are not changed from default.
:putobject insn (of regexp) will be used instead of :toregexp insn.
This means that the regexp won't be compil...
k0kubun (Takashi Kokubun)
03:56 AM Revision 72fb1e16 (git): erb.rb: Skip creating regexp
if stags and etags are not changed from default.
:putobject insn (of regexp) will be used instead of :toregexp insn.
This means that the regexp won't be compiled for every
`SimpleScanner#scan` call.
It may not be a good idea to apply t...
k0kubun (Takashi Kokubun)
03:18 AM Revision 7a14ffbf (git): fix r58833
* tool/downloader.rb (Downloader.download): just link to the cache
when downloaded to the cache but not the target file.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58841 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
 

Also available in: Atom