Project

General

Profile

Activity

From 08/19/2016 to 08/25/2016

08/25/2016

08:55 PM Bug #12599: For CLang, increase inline-threshold to get 7%-10% speedup of optcarrot
Including ALWAYS_INLINE in the header and then defining the method in a .c file doesn't seem to successfully inline the function invocations -- they still show up in a GPerfTools profiling listing, for instance. So I think that using ALW... noahgibbs (Noah Gibbs)
04:44 PM Bug #12599: For CLang, increase inline-threshold to get 7%-10% speedup of optcarrot
Based on diffs of long profiling runs of optcarrot, I think the following functions aren't inlined by default, and (I suspect) should be. Working on code changes for that now.
rb_get_alloc_func, rb_ary_rotate, rb_ary_modify.
I'm al...
noahgibbs (Noah Gibbs)
06:44 PM Feature #12697: Why shouldn't Module meta programming methods be public?
Hi,
As stated by bughit, a typical case where we have to resort to `send` for these is in meta programming, say:
def self.included(base)
base.send(:define_method, :foo) { ... } unless base.column_names.include?(:foo)
...
marcandre (Marc-Andre Lafortune)
06:43 PM Bug #12706 (Closed): Hash#each yields inconsistent number of args
```ruby
def foo(a, b)
p [a, b]
end
def bar(a, b = 2)
p [a, b]
end
foo_lambda = method(:foo).to_proc
bar_lambda = method(:bar).to_proc
{a: 1}.each(&foo_lambda)
{a: 1}.each(&bar_lambda)
```
From #12705, yielding t...
bughit (bug hit)
06:06 PM Bug #12705: yielding args to a lambda uses block/proc rather than lambda/method semantics
a related point is that lambda procs with the same arity (normal_lambda, method_lambda) should behave the same
bughit (bug hit)
05:48 PM Bug #12705 (Closed): yielding args to a lambda uses block/proc rather than lambda/method semantics
```ruby
def yield_test
yield 1, 2
yield [1, 2]
end
def foo(a, b)
p a, b
end
method_lambda = method(:foo).to_proc
normal_lambda = ->a, b{p a, b}
yield_test(&normal_lambda)
yield_test(&method_lambda)
```
the yi...
bughit (bug hit)
05:40 PM Feature #12700: regexg heredoc support
Added pull request https://github.com/ruby/ruby/pull/1418 gam3 (Allen Morris)
05:27 PM Feature #12676: Significant performance increase, and code conciseness, for prime_division method in prime.rb
This is neater.
replace
```ruby
raise ZeroDivisionError if self == 0
```
with
```ruby
return [] if self | 1 == 1
```
jzakiya (Jabari Zakiya)
01:04 PM Feature #12676: Significant performance increase, and code conciseness, for prime_division method in prime.rb
Question:
Why do you raise an error for the value '0'?
```ruby
1.prime_division => []
```
Why not also:
```ruby
0.prime_division => []
```
This is more mathematically consistent because neither
are prime so neither have p...
jzakiya (Jabari Zakiya)
01:57 AM Feature #12676 (Assigned): Significant performance increase, and code conciseness, for prime_division method in prime.rb
hsbt (Hiroshi SHIBATA)
02:28 PM Bug #12704 (Closed): Fix typo in ossl_ocspreq_sign
The code of ossl_ocspreq_sign reads:
~~~ c
static VALUE
ossl_ocspreq_sign(int argc, VALUE *argv, VALUE self)
{
VALUE signer_cert, signer_key, certs, flags, digest;
OCSP_REQUEST *req;
X509 *signer;
EVP_PKEY *key;...
Eregon (Benoit Daloze)
12:53 PM Bug #12681: Gemfied tk issue
Actually this line is suspicious:
https://github.com/ruby/ruby/blob/trunk/ext/extmk.rb#L568
It expands to `$(topdir)/.ext/gems` and creates the `$(topdir)` directory indeed. But that doesn't look to be the original intention here. ...
vo.x (Vit Ondruch)
11:37 AM Bug #12681: Gemfied tk issue
Moreover, I still see the `tcltklib.so` and `tkutil.so` installed into `/usr/lib64/ruby/2.4.0/x86_64-linux/` but they should not be there at all.
vo.x (Vit Ondruch)
11:32 AM Bug #12681 (Open): Gemfied tk issue
The r55950 does not resolve the issue completely. The make install does not work (neither the gem itself probably):
```
# make install DESTDIR=/builddir/build/BUILDROOT/ruby-2.4.0-0.1.r56008.fc26.x86_64
... snip ...
./miniruby ...
vo.x (Vit Ondruch)
11:06 AM Bug #12681: Gemfied tk issue
Hiroshi SHIBATA wrote:
> >Also, the "gem install tk" does not build the extension, so that is another source of possible issues.
> ...
Yes, the 0.1.1 looks good. Thx.
vo.x (Vit Ondruch)
10:43 AM Bug #12353: Regression with Marshal.dump on ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin15]
So, can we revert the backport?
This issue spotted a feature bug and it got fixed in trunk, but the original problem (`Marshall.dump(1.day)` does not work with ruby 2.3+ and activesupport 4.1.x) was not solved by the fix, causing a mo...
knu (Akinori MUSHA)
05:52 AM Bug #12703 (Rejected): String.gsub returns unexpected results with numeric match characters
What you want is `"z'z".gsub(/(')/, '\\\\\1')`.
You need to escape twice, for a literal, and for `gsub`.
nobu (Nobuyoshi Nakada)
02:23 AM Bug #12703 (Rejected): String.gsub returns unexpected results with numeric match characters
I'm unable to prepend a backslash to numeric group matches using gsub
~~~
irb(main):053:0> "z'z".gsub(/(')/, '\\1')
=> "z'z"
~~~
Expected Result
~~~
=> "z\'z"
~~~
Adding an extra backslash gives me this:
~~~
irb(main...
nlaveck (Nathan LaVeck)
03:03 AM Bug #11846 (Closed): Block passed by &block is GC-ed
wanabe san, Thank you for your investigation!
So this issue is already fixed on both 2.3/trunk and not exist on 2.2 and before.
I'll close this ticket and fill Backport field.
nagachika (Tomoyuki Chikanaga)
02:57 AM Revision 8e0601b7 (git): win32/file.c: use ALLOC_N
* win32/file.c (home_dir, replace_to_long_name): use ALLOC_N
instead of casted xmalloc with multiplication.
win32/file.c (rb_file_expand_path_internal): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56008 b2dd03c8-39d4-4d8...
nobu (Nobuyoshi Nakada)
02:11 AM Revision 70d840af (git): win32/file.h: rb_w32_filecp
* win32/file.h (rb_w32_filecp): add declaration.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:50 AM Bug #12699: Crash in the VM - maybe garbage collector bug
Adding a Dockerfile that makes it easy to reproduce the problem, under Valgrind. The output of this Dockerfile gives the following report:
`
==1== Memcheck, a memory error detector
==1== Copyright (C) 2002-2015, and GNU GPL'd, by Juli...
nicolasnoble (Nicolas Noble)

08/24/2016

10:52 PM Feature #12690: Improve GC with external library that may use large memory
Nobu's implementation: https://github.com/ruby/ruby/compare/trunk...nobu:gc_trigger kou (Kouhei Sutou)
10:51 PM Feature #12690: Improve GC with external library that may use large memory
Koichi agreed:
https://twitter.com/_ko1/status/768278836882526208
> I don't see this ticket details yet but implementing the concept is OK to me.
(Translated to English from Japanese by me.)
kou (Kouhei Sutou)
04:13 PM Feature #12695: File.expand_path should resolve ~/ using /etc/passwd when HOME is not set
Why doesn't your service launcher set `HOME`? nobu (Nobuyoshi Nakada)
02:34 AM Feature #12695: File.expand_path should resolve ~/ using /etc/passwd when HOME is not set
+1 it makes sense to me. shyouhei (Shyouhei Urabe)
03:57 PM Feature #12676: Significant performance increase, and code conciseness, for prime_division method in prime.rb
One last simple tweek to increase overall peformance, in `prime_division5`.
Instead of selecting the optimum pg based on the number's size, first
suck out any factors of some base primes, then determine the optimum
`pg` based on the `...
jzakiya (Jabari Zakiya)
03:42 PM Revision 638f6721 (git): win32/file.c: remove a codepage argument
* win32/file.c (append_wstr): remove a codepage argument, and use
INVALID_CODE_PAGE for conversion by econv.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
03:39 PM Revision 2025f057 (git): * 2016-08-25
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:39 PM Revision b34321a2 (git): win32/file.c: fix result length
* win32/file.c (append_wstr): exclude the terminator from the
result length when input len == -1.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56004 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
03:28 PM Bug #12326: Update rubygems to 2.5.2 in ruby_2_3
ruby_2_3 r56003 merged revision(s) 53707,53708,53709,53712,53777,53781. nagachika (Tomoyuki Chikanaga)
11:05 AM Bug #12326 (Closed): Update rubygems to 2.5.2 in ruby_2_3
I overlooked this ticket because it's "Open". The stable branch maintainers watch closed ticket with Backport field filed with REQUIRED. nagachika (Tomoyuki Chikanaga)
03:28 PM Revision 996b1bfa (git): merge revision(s) 53707,53708,53709,53712,53777,53781: [Backport #12326]
* lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: Update rubygems-2.5.2.
It supports to enable frozen string literal and add `--norc` option for
disable to `.gemrc` configuration.
See 2.5.2 release notes f...
nagachika (Tomoyuki Chikanaga)
02:57 PM Bug #12331: Please backport r53586
ruby_2_3 r56002 merged revision(s) 53586,53587,54030. nagachika (Tomoyuki Chikanaga)
11:09 AM Bug #12331 (Closed): Please backport r53586
Thank you for request and comments. I overlook this ticket because it's "Open". I'll close this ticket. (We the stable branch maintainers watch the closed ticket whose Backport field filled with REQUIRED). nagachika (Tomoyuki Chikanaga)
02:56 PM Revision ce8729fe (git): merge revision(s) 53586,53587,54030: [Backport #12331]
increase timeout for ARMv7
http://rubyci.s3.amazonaws.com/scw-9d6766/ruby-trunk/log/20160113T091704Z.diff.html.gz
* test/ruby/test_array.rb: split out the test for no stack error
on large input for test_permuta...
nagachika (Tomoyuki Chikanaga)
02:43 PM Feature #12697: Why shouldn't Module meta programming methods be public?
Yukihiro Matsumoto wrote:
> I still believe
> ...
In many meta programming scenarios you are not including or defining literals at top level but expressions and in methods, so it's not
```ruby
class Class1
include Module1
...
bughit (bug hit)
01:18 PM Feature #12697 (Feedback): Why shouldn't Module meta programming methods be public?
I still believe
```
class String
include Term::ANSIColor
end
```
is far better than `String.include Term::ANSIColor`. It is clearer and has more space to optimize.
Besides that the fact that `include` etc may have huge perfo...
matz (Yukihiro Matsumoto)
12:21 PM Feature #12697: Why shouldn't Module meta programming methods be public?
I made the same proposal years ago (#6539), and Matz stated that he ["thinks class/module operations should be done in the scope"](https://bugs.ruby-lang.org/issues/6539#note-3).
I still strongly believe that `include` should be publi...
marcandre (Marc-Andre Lafortune)
01:42 PM Revision 8ddc191d (git): * gc.c (gc_reset_malloc_info): Remove too much ";".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Sutou Kouhei
01:28 PM Feature #12698: Method to delete a substring by regex match
Active Support already has `String#remove`.
```
$ irb -r irb/completion --simple-prompt
>> require 'active_support/all'
=> true
> ...
=> "abab"
>> "abcabc".remove(/\zc/)
=> "abcabc"
> ...
=> "abcab"
>> "abcabc".remove(/\Aabc/)...
znz (Kazuhiro NISHIYAMA)
04:42 AM Feature #12698: Method to delete a substring by regex match
Perhaps my examples were not clear enough. My point is that, unlike `String#delete`, the given string argument should not be interpreted as character classes, but rather as a substring. So, the following should also hold:
```ruby
"ab...
sawa (Tsuyoshi Sawada)
04:37 AM Feature #12698 (Feedback): Method to delete a substring by regex match
There is frequent need to delete a substring from a string. There already are methods `String#delete` and `String#delete!`, but their feature is a little bit different from the use cases that I am mentioning here.
I request methods th...
sawa (Tsuyoshi Sawada)
01:04 PM Revision a3b84cff (git): win32/file.c: use enum
* win32/file.c (home_dir): use enum instead of magic numbers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
11:46 AM Bug #12702 (Rejected): DRb client fails when calling out-of-process remote method with a block
See attached code for test case.
applies to ruby-2.3.1 and ruby-2.4.0dev (2016-08-24 trunk 55999)
The problem starts in DRbObject#method_missing where
the code following DRb.here? is used for the in-process case which works.
Bu...
djellemah (John Anderson)
11:13 AM Bug #12701 (Closed): compile error about ALWAYS_INLINE
Applied in changeset r55998 (and r55999) ngoto (Naohisa Goto)
10:59 AM Bug #12701 (Closed): compile error about ALWAYS_INLINE
遅くとも r55884 以降、Solaris 10上の古い Fujitsu C Compiler (fcc) にて、以下のコンパイルエラーが発生します。
```
fcc -O2 -KV9 -KVIS2 -DRUBY_EXPORT -I/usr/local/64/lib/libffi-3.0.10/include -I/usr/local/64/include -D_XOPEN_SOURCE=500 -I. -I.ext/include/sparc64-s...
ngoto (Naohisa Goto)
11:11 AM Revision 8fb654e4 (git): Fix ChangeLog [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e ngoto (Naohisa Goto)
11:08 AM Revision 4e062d14 (git): * include/ruby/defines.h (ALWAYS_INLINE): Add alternative definition.
Fix compile error with compilers that do not have force inline
attribute, including old version of fcc on Solaris 10.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ngoto (Naohisa Goto)
09:15 AM Feature #12700 (Open): regexg heredoc support
There is support for ', ", and ` heredocs, but there is no support for /.
Example code with new feature:
~~~ ruby
first = 'first'
orig = /#{first}
match\s # match
this # match this
/x
right = <</REGEXP/x
#{first}
mat...
gam3 (Allen Morris)
07:56 AM Revision fe5f47a6 (git): * .gdbinit: follow r55766's VM change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55997 b2dd03c8-39d4-4d8f-98ff-823fe69b080e naruse (Yui NARUSE)
06:42 AM Bug #12699 (Third Party's Issue): Crash in the VM - maybe garbage collector bug
Basically, we were investigating this: https://github.com/grpc/grpc/issues/7661
Our investigation led to realize that this assert in the protobuf code is being triggered, but only if the garbage collector has been exercised enough: ht...
nicolasnoble (Nicolas Noble)
05:50 AM Feature #6842: Add Optional Arguments to String#strip
I am working on implementing this at https://github.com/ruby/ruby/compare/trunk...sonots:lstrip_arg?expand=1
```ruby
"hello".lstrip!("hell") #=> "o"
"hello".lstrip!("ello") #=> nil
"hello".lstrip!(/hell/) #=> "o"
"hello".lstrip!(/...
sonots (Naotoshi Seo)
05:34 AM Feature #12694 (Rejected): Want a String method to remove heading substr
I will continue this issue on https://bugs.ruby-lang.org/issues/6842, let me close.
=> https://bugs.ruby-lang.org/issues/6842 is too broad. Let us reopen this ticket, and talk about a way removing heading substr at this thread.
sonots (Naotoshi Seo)
04:43 AM Revision 0022316e (git): common.mk: unnecessary dependents of prelude.c
* common.mk (PRELUDE_C): remove unnecessary dependents, which are
not included directly.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
03:58 AM Bug #12696 (Closed): Defining anonymous classes via `Class.new {}` does not run `class_eval` on the block
Applied in changeset r55994.
----------
object.c: fix {Module,Class}.new rdoc [ci skip]
* object.c (rb_mod_initialize, rb_class_initialize): [DOC] these
methods do not invoke module_eval/class_eval, just eval the
given block under ...
nobu (Nobuyoshi Nakada)
03:57 AM Revision fbd49d38 (git): * 2016-08-24
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55995 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:57 AM Revision 20e0f1e7 (git): object.c: fix {Module,Class}.new rdoc [ci skip]
* object.c (rb_mod_initialize, rb_class_initialize): [DOC] these
methods do not invoke module_eval/class_eval, just eval the
given block under the new module/class but sharing the context
with the surrounding scope like those metho...
nobu (Nobuyoshi Nakada)

08/23/2016

11:23 PM Feature #12697: Why shouldn't Module meta programming methods be public?
This is somewhat an interesting comment made here, epecially in regards to .send().
Take code snippets such as here:
https://gist.github.com/melborne/665406/4a2a732b1c35b290ddb5a08661453704b8d3c047#file-irc-rb
Quote:
...
shevegen (Robert A. Heiler)
11:08 PM Feature #12697 (Closed): Why shouldn't Module meta programming methods be public?
Methods like alias_method, attr_accessor, define_method, and similar
I don't think Ruby discourages this kind of meta programming, so why make it less convenient, by necessitating `send` or `module_eval`?
bughit (bug hit)
11:10 PM Bug #4537: Incorrectly creating private method via attr_accessor
define_method used to have the same (or similar) problem
https://bugs.ruby-lang.org/issues/9005
which was fixed, so why shouldn't this be?
bughit (bug hit)
10:50 PM Bug #4537: Incorrectly creating private method via attr_accessor
why should top level visibility (which applies to methods defined in the Object class) have any effect on other classes?
this also applies to any other module which you might be in
```ruby
class Class1
end
module SomeUnrelated...
bughit (bug hit)
10:55 PM Bug #12372: Resolv::DNS does not fetch authority section resources when calling getresource(s)
Ping again. headius (Charles Nutter)
08:18 PM Bug #12696 (Closed): Defining anonymous classes via `Class.new {}` does not run `class_eval` on the block
When defining anonymous classes, the documentation comment (https://github.com/ruby/ruby/blob/b9a82eaa13a5438318d78aee0afb907a1d143a51/object.c#L1754) explains that
~~~
If a block is given, it is passed the class object, and the block ...
kklimuk (Kirill Klimuk)
12:20 PM Bug #12688: Thread unsafety in autoload
I have the same expectations as you, Charles, and as so I'd also expect this to be a bug. rosenfeld (Rodrigo Rosenfeld Rosas)
12:01 PM Feature #12694: Want a String method to remove heading substr
Thanks, I found an issue which is 3 years old https://bugs.ruby-lang.org/issues/6842 sonots (Naotoshi Seo)
11:39 AM Feature #12694: Want a String method to remove heading substr
IIRC, there were proposals of `lstrip` and `rstrip` enhancement.
I'd expect them to accept char class(es), than a sub-string.
Note that `rb_str_index_m` accepts a `Regexp` too.
Calling `str_strlen` on it will segfault.
nobu (Nobuyoshi Nakada)
09:03 AM Feature #12694 (Closed): Want a String method to remove heading substr
I often write codes like:
```ruby
str = 'abcdef'
substr = 'abc'
str[substr.size..-1] if str.start_with?(substr) #=> 'def'
# or
str.sub(/\A#{Regexp.escape(substr)}/, '') #=> 'def'
```
I want a short hand which is something lik...
sonots (Naotoshi Seo)
11:36 AM Feature #12695 (Closed): File.expand_path should resolve ~/ using /etc/passwd when HOME is not set
I would expect a call like File.expand_path('~/.ssh/known_hosts') to work even though HOME is not set.
A reason this is important to fix is that libraries (in my use case Net::SSH) do calls like File.expand_path('~/.ssh/known_hosts'),...
fursten (Mårten Svantesson)
08:00 AM Revision 92a09548 (git): goruby.c: call Init_golf [ci skip]
* goruby.c (init_golf): call Init_golf, because ruby_init_ext only
registers the function since r43514.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55993 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:30 AM Feature #12693 (Rejected): Want a way to receive EINTR on Process.waitpid
sonots (Naotoshi Seo)
07:28 AM Feature #12693: Want a way to receive EINTR on Process.waitpid
It worked like a charm :)
test.rb
```
puts Process.pid
trap(:CONT) do
raise 'CONT'
end
_pid = fork do
sleep 10
end
begin
Process.waitpid(-1)
rescue => e
puts e.backtrace.join("\n")
end
```
Sending sign...
sonots (Naotoshi Seo)
07:05 AM Feature #12693: Want a way to receive EINTR on Process.waitpid
You can raise exception on main threadh by Thread.main.raise in trap. naruse (Yui NARUSE)
06:55 AM Feature #12693: Want a way to receive EINTR on Process.waitpid
If adding an option to raise EINTR is not acceptable, adding timeout option is acceptable for **my** case. sonots (Naotoshi Seo)
06:49 AM Feature #12693: Want a way to receive EINTR on Process.waitpid
I am currently using Timeout hack for when I wanted to get EINTR like https://github.com/sonots/ruby-server-starter/blob/7fbc8db2548c215aae02afef385caa683040bd8a/lib/server/starter.rb#L215-L223.
I was glad if I did not need to write s...
sonots (Naotoshi Seo)
06:45 AM Feature #12693: Want a way to receive EINTR on Process.waitpid
Naotoshi Seo wrote:
> However, ruby implementation of Process.waitpid does not raise EINTR
No you don't. It is an extremely bad idea to use signal to interrupt execution.
Is it you must use signal for some reason or you just want...
shyouhei (Shyouhei Urabe)
01:32 AM Feature #12693 (Rejected): Want a way to receive EINTR on Process.waitpid
http://man7.org/linux/man-pages/man2/waitpid.2.html tells EINTR error if WNOHANG flag was not set and an unblocked signal or a SIGCHLD was caught.
However, ruby implementation of Process.waitpid does not raise EINTR https://github.com...
sonots (Naotoshi Seo)
02:05 AM Revision d3e7e3cc (git): test_ssl_server.rb: fix FD leak
* test/webrick/test_ssl_server.rb (assert_self_signed_cert): close
underlying TCP socket to fix FD leak.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:34 AM Revision c58c9025 (git): test_psych.rb: close Tempfile
* test/psych/test_psych.rb (test_load_file_with_fallback): fix
Tempfile leak. https://github.com/tenderlove/psych/pull/288
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:15 AM Revision c2bf7e6f (git): string.c: rb_fs_setter
* string.c (rb_fs_setter): check and convert $; value at
assignment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55990 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)

08/22/2016

06:25 PM Bug #12537: Fiddle::TestPointer#test_to_s and test_to_str destroy literal string data
ruby_2_3 r55989 merged revision(s) 55554. nagachika (Tomoyuki Chikanaga)
06:25 PM Revision 7e58a509 (git): merge revision(s) 55554: [Backport #12537]
* test/fiddle/test_pointer.rb (test_to_str, test_to_s, test_aref_aset):
Attempt to use independent strings for destructive tests that
directly modify values on memory by using Fiddle::Pointer.
[Bug #12537] [...
nagachika (Tomoyuki Chikanaga)
06:24 PM Feature #12676: Significant performance increase, and code conciseness, for prime_division method in prime.rb
We can make it faster across ranges, with just a little bit more code,
by adaptively selecting the Prime Generator to use based on the number size.
The method select_pg has a profile of the best PG to use for given number ranges.
It's...
jzakiya (Jabari Zakiya)
06:18 PM Bug #12536: SIGABRT during GC on Debian GNU/Linux 8 (x86_64) due to insufficient string buffer allocation related with term fill
ruby_2_3 r55988 merged revision(s) 55547,55551,55552,55555,55557,55559,55575,55691,55568. nagachika (Tomoyuki Chikanaga)
06:18 PM Revision 6f122a4f (git): merge revision(s) 55547,55551,55552,55555,55557,55559,55575,55691,55568: [Backport #12536]
* string.c: Fix memory corruptions when using UTF-16/32 strings.
[Bug #12536] [ruby-dev:49699]
* string.c (TERM_LEN_MAX): Macro for the longest TERM_FILL length,
the same as largest value of rb_enc_mbminlen(e...
nagachika (Tomoyuki Chikanaga)
06:08 PM Bug #12599: For CLang, increase inline-threshold to get 7%-10% speedup of optcarrot
Yui Naruse: you suggest I find out which functions are inlined in this way and add ALWAYS_INLINE for them? I'll see if there's a way I can do that.
noahgibbs (Noah Gibbs)
06:41 AM Bug #12599: For CLang, increase inline-threshold to get 7%-10% speedup of optcarrot
The change inlines many functions by 3MB, but I think this speed up is come from few functions which are too complex to inline.
If so such functions should be refactored to ease compiles optimize them, or simply add ALWAYS_INLINE.
Fo...
naruse (Yui NARUSE)
05:10 PM Revision 2e2f7df7 (git): * 2016-08-23
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55987 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
05:10 PM Revision bd6fe326 (git): string.c: $; name in error message
* string.c (rb_str_split_m): show $; name in error message when it
is a wrong object.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:18 PM Bug #12548: Rounding modes inconsistency between round versus sprintf
Okay, so sounds like just a documentation fix for ReXML. That makes sense. Thanks! noahgibbs (Noah Gibbs)
09:26 AM Bug #12548: Rounding modes inconsistency between round versus sprintf
Noah Gibbs wrote:
> Sounds good to me. Do we need to fix ReXML, if it depends on the current rounding mode?
The rdoc of `REXML::Functions.number` states:
> ...
sign followed by a Number followed by whitespace is converted to the IEE...
nobu (Nobuyoshi Nakada)
09:01 AM Bug #12548: Rounding modes inconsistency between round versus sprintf
Noah Gibbs wrote:
> Another reason not to add an argument: `Float#round` already takes an argument for the number of digits to round to.
It's easy to distinguish a `Fixnum` and a `Symbol`.
Or keyword arguments will work well.
nobu (Nobuyoshi Nakada)
01:51 AM Bug #12548: Rounding modes inconsistency between round versus sprintf
Another reason not to add an argument: `Float#round` already takes an argument for the number of digits to round to. noahgibbs (Noah Gibbs)
12:58 PM Bug #12421: Please backport r53816, r53817
backporting those fixes would make ruby compatible with a syntax handled by other tools. otherwise it means people need to take special care for ruby and things like that are often used against ruby later on.
also do you see any poten...
darix (Marcus Rückert)
11:06 AM Bug #12689: Thread isolation of $~ and $_
That's why i would deprecate the $ variables and make people use match objects all the time.
I mean the stdlib even has code that reads
```
matchdata = $~
```
That feels just wrong.
Maybe 2.4 could start issue warnings abou...
darix (Marcus Rückert)
07:30 AM Bug #12691 (Closed): CSV performance problem on large files that are misformatted (unclosed quoted field)
Applied in changeset r55985.
----------
csv.rb: performance with very long quoted lines
* lib/csv.rb (CSV#shift): store partial quoted strings in an array
and join at last, to improve performance with very long quoted
lines. [ruby...
nobu (Nobuyoshi Nakada)
07:29 AM Revision 4e5114b0 (git): csv.rb: performance with very long quoted lines
* lib/csv.rb (CSV#shift): store partial quoted strings in an array
and join at last, to improve performance with very long quoted
lines. [ruby-core:76987] [Bug #12691]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55985 b2dd03c...
nobu (Nobuyoshi Nakada)
07:23 AM Bug #12688: Thread unsafety in autoload
Charles Nutter wrote:
> I need clarification here. I expected, based on Ruby's assertion that autoloads are thread-safe, that the following code would never error. Instead, it gets a couple iterations in and raises NameError:
> ...
`$"...
h.shirosaki (Hiroshi Shirosaki)
05:36 AM Bug #12692 (Closed): remove RUBYLIB_PREFIX from man/irb.1
Applied in changeset r55984.
----------
irb.1: useless option [ci skip]
* man/irb.1: remove useless -width option.
[ruby-dev:49767] [Bug #12692]
nobu (Nobuyoshi Nakada)
05:35 AM Revision c37de380 (git): irb.1: useless option [ci skip]
* man/irb.1: remove useless -width option.
[ruby-dev:49767] [Bug #12692]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
04:21 AM Revision 2329d8b0 (git): array.c: elements in self
* array.c (rb_ary_splice): consider elements in middle of self.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:03 AM Revision 7ac136c9 (git): * 2016-08-22
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
12:02 AM Revision 36b9a37a (git): iseq.c: undef allocator
* iseq.c (Init_ISeq): undefine allocator of InstructionSequence,
to get rid of segfaults at method call on uninitialized object.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55981 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)

08/21/2016

03:29 PM Bug #10856: Splat with empty keyword args gives unexpected results
Guyren Howe wrote:
> I believe this behavior is wrong and should be fixed.
> ...
There is a simple fix for your use-case, if you just want to fowrard arguments, don't use ** at all:
(it's not like in Python, keyword arguments are less...
Eregon (Benoit Daloze)
06:09 AM Bug #10856: Splat with empty keyword args gives unexpected results
I believe this behavior is wrong and should be fixed.
This gets in the way of simple functional programming idioms. eg "Call each of these functions with these args until one doesn't fail"
~~~ ruby
class FnSeries
def initialize...
gisborne (Guyren Howe)
11:03 AM Revision 02a30129 (git): fix a typo [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55980 b2dd03c8-39d4-4d8f-98ff-823fe69b080e znz (Kazuhiro NISHIYAMA)
05:52 AM Bug #12668 (Closed): Please backport r53433
Applied in changeset ruby_2_3|r55979.
----------
merge revision(s) 53433: [Backport #12668]
test_ostruct.rb: sort method names
* test/ostruct/test_ostruct.rb (test_accessor_defines_method):
should not depend on the order of methods.
nagachika (Tomoyuki Chikanaga)
05:52 AM Bug #12668: Please backport r53433
ruby_2_3 r55979 merged revision(s) 53433. nagachika (Tomoyuki Chikanaga)
05:49 AM Bug #12668 (Assigned): Please backport r53433
nagachika (Tomoyuki Chikanaga)
05:52 AM Revision 0b8b3a82 (git): merge revision(s) 53433: [Backport #12668]
test_ostruct.rb: sort method names
* test/ostruct/test_ostruct.rb (test_accessor_defines_method):
should not depend on the order of methods.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55979 b2dd03c8-39d4-4d...
nagachika (Tomoyuki Chikanaga)
05:14 AM Revision 009a2956 (git): * ChangeLog: fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e tad (Tadashi Saito)
05:13 AM Feature #12347: [PATCH] Make CSV::Row#each etc. return Enumerator when no block given
I will commit it in a month.
Let me know if you have any concerns.
ktsj (Kazuki Tsujimoto)
04:03 AM Revision 4831eb86 (git): array.c: no temporary array
* array.c (rb_ary_splice): use pointer and length pair instead of
an array object to replace.
* array.c (rb_ary_insert): get rid of creating temporary array.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55977 b2dd03c8-39d4-4d8f-...
nobu (Nobuyoshi Nakada)
03:01 AM Bug #12353: Regression with Marshal.dump on ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin15]
r55500 breaks `1.days`, while it fixed Marshal.dump with object which respond to marshal_dump with method_missing.
Even though it's obviously a bug-fix, introduce more critical issue as for activesupport-4.1.x.
I think I should revert ...
nagachika (Tomoyuki Chikanaga)

08/20/2016

08:51 PM Revision 48e19b66 (git): * 2016-08-21
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55976 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
08:51 PM Revision d661b277 (git): enum.c (enum_sort): prevent wasteful array duplicaion
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55975 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Kenta Murata
05:58 AM Revision 33ae176b (git): rubystub.c: sys/param.h for MAXPATHLEN
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
05:30 AM Bug #12692 (Closed): remove RUBYLIB_PREFIX from man/irb.1
remove RUBYLIB_PREFIX like r45599?
* https://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/man/irb.1?view=markup&pathrev=53867#l122
sho-h (Sho Hashimoto)
02:37 AM Bug #12588: When an exception is re-raised in the "rescue" clause, the back trace does not contain the line in that clause
I think it's intentional, and don't see why it should contain a new line. nobu (Nobuyoshi Nakada)
02:20 AM Revision 9b454bfa (git): rubystub
* rubystub.c: generalize win32/stub.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
02:19 AM Revision e79b23c1 (git): * 2016-08-20
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
02:19 AM Revision 51d30645 (git): win32.c: no newline for rb_fatal
* win32/win32.c (StartSockets): rb_fatal does not need a newline
at the end.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)

08/19/2016

10:43 PM Feature #11815: Proposal for method `Array#difference`
Implemented the method in a clearer and more efficient manner. CaryInVictoria (Cary Swoveland)
10:09 PM Bug #12691 (Closed): CSV performance problem on large files that are misformatted (unclosed quoted field)
If you have a large file which has an unclosed quoted field in it, the amount of time it takes for the CSV parser to determine that error increases worse-than-exponentially. My example tests -
60k records - takes 50 seconds to determ...
uberbrady (Brady Wetherington)
07:59 PM Feature #12676: Significant performance increase, and code conciseness, for prime_division method in prime.rb
An additional change to the implementation of `prime_division2` provides an
another 3x increase in speed over using the generators implemented as classes.
Using class based generators, and enumerable methods, incur a metaprogramming ...
jzakiya (Jabari Zakiya)
07:21 PM Feature #8365: Make variables objects
I deleted my account by mistake so my earlier posts show as 'Anonymous'. I'm back and curious how this feature request resolves in the end. boris-s (Boris Stitnicky)
06:12 PM Bug #12689: Thread isolation of $~ and $_
Marcus Rückert wrote:
> I wonder, if moving away from those special $ variables to explicit match objects wouldn't be a possible solution to this.
If you always use the returned MatchData then you can avoid these problems. This only ...
headius (Charles Nutter)
10:17 AM Bug #12689: Thread isolation of $~ and $_
I wonder, if moving away from those special $ variables to explicit match objects wouldn't be a possible solution to this. darix (Marcus Rückert)
09:53 AM Bug #12689: Thread isolation of $~ and $_
Maybe $~ is always set in the surrounding method frame, but never in a block frame?
There is still a lot of weird cases to explain though.
Eregon (Benoit Daloze)
06:39 AM Bug #12689: Thread isolation of $~ and $_
To clarify the one-liners' behavior: when the thread's top-level frame is the same as a proc's frame that it calls, it will see thread-local values. When the proc's frame is not the top-level frame for the thread, the memory location for... headius (Charles Nutter)
06:37 AM Bug #12689 (Open): Thread isolation of $~ and $_
We are debating what is correct behavior now, and what should be correct behavior in the future, for the thread-visibility of the special variables `%~` and `$_`
We have several examples from https://github.com/jruby/jruby/issues/3031...
headius (Charles Nutter)
04:47 PM Feature #12690: Improve GC with external library that may use large memory
LGTM. Iff Koichi agrees, it should be merged.
Matz.
matz (Yukihiro Matsumoto)
04:03 PM Feature #12690 (Closed): Improve GC with external library that may use large memory
GC cares memory allocated by only Ruby. GC doesn't care memory allocated by external library. GC isn't run frequently when external library allocates large memory but Ruby allocates only small memory. In the case, process uses large memo... kou (Kouhei Sutou)
10:44 AM Revision ea293952 (git): ruby_cmdline_options_t
* ruby.c (ruby_cmdline_options_t): typedef.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
08:32 AM Revision c6bf0472 (git): Revert r55968 "scriptbin on cygwin"
win32/stub.c only works with malloced argv as win32/win32.c, to
realloc it.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55969 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
08:01 AM Revision 7f7e809a (git): scriptbin on cygwin
* cygwin/GNUmakefile.in (scriptbin): enable on cygwin.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
08:01 AM Revision 468a766b (git): strip stub program
* cygwin/GNUmakefile.in (STUBPROGRAM): strip.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
05:14 AM Bug #12688: Thread unsafety in autoload
Oh, sorry...the source of bar.rb is trivial:
```ruby
class Foo
Bar = 1
end
```
headius (Charles Nutter)
05:13 AM Bug #12688 (Closed): Thread unsafety in autoload
I need clarification here. I expected, based on Ruby's assertion that autoloads are thread-safe, that the following code would never error. Instead, it gets a couple iterations in and raises NameError:
```ruby
loop do
class Foo
...
headius (Charles Nutter)
04:38 AM Revision 438f52d1 (git): extmk.rb: makefiles for gems
* ext/extmk.rb (extmake): now yield makefile content at creation.
substitute makefiles for gems in the block, not to rewrite when
nothing changed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55966 b2dd03c8-39d4-4d8f-98ff-823fe...
nobu (Nobuyoshi Nakada)
02:39 AM Feature #12686 (Closed): Allowing a postposed rescue in a method argument
Applied in changeset r55965.
----------
parse.y: lparen_arg statement
* parse.y (primary): allow parenthesised statement as a method
argument. [Feature #12686]
nobu (Nobuyoshi Nakada)
02:39 AM Revision ec8f8fa4 (git): parse.y: lparen_arg statement
* parse.y (primary): allow parenthesised statement as a method
argument. [Feature #12686]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:12 AM Revision 6f22777f (git): vm.c: check TOPLEVEL_BINDING
* vm.c (vm_set_main_stack): TOPLEVEL_BINDING must be built.
http://www.viva64.com/en/b/0414/#ID0EQ1CI [ruby-core:76973]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
 

Also available in: Atom