Project

General

Profile

Activity

From 12/03/2013 to 12/09/2013

12/09/2013

10:50 PM Revision 40925742 (git): vm_method.c: add new ruby::method-cache-clear dtrace probe
* vm_method.c (rb_clear_method_cache_by_class): fire
ruby::method-cache-clear probe on global or klass-level method cache
clear [Bug #9190]
* probes.d (provider ruby): new dtrace probe
* doc/dtrace_probes.rdoc: docs for new probe
* t...
tmm1 (Aman Karmani)
10:32 PM Bug #4421: [ext/openssl] Fix RSA public key encoding
Hi,
It certainly would have been useful to have the code available in gist https://gist.github.com/2902696 available in some form, because this patch broke backwards compatibility for a system I was working on.
davidw (David Welton)
09:43 PM Feature #7816: Don't invalidate method caches when defining a new method on a class without subclasses
Righto, thanks! headius (Charles Nutter)
03:21 PM Feature #7816: Don't invalidate method caches when defining a new method on a class without subclasses
@headius: klasscache refers to #8426/r42822 which implements JRuby style method cache invalidation. Anonymous
03:18 PM Feature #7816: Don't invalidate method caches when defining a new method on a class without subclasses
Is "klasscache" a reference to some other patch/issue?
Am I understanding correctly when I say that JRuby would not benefit from this sort of fix? In JRuby there is no global cache, so the only cache damage caused by a singleton class...
headius (Charles Nutter)
09:38 PM Bug #9230: Segmentation fault in Ruby trunk
Thank you! I confirmed to fix this issue at r44096 hsbt (Hiroshi SHIBATA)
07:06 PM Bug #9230 (Closed): Segmentation fault in Ruby trunk
This issue was solved with changeset r44096.
Hiroshi, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
hash.c: fix segv in Hash#replace
* hash.c (rb_hash_replace): ...
tmm1 (Aman Karmani)
06:19 PM Bug #9230 (Closed): Segmentation fault in Ruby trunk
I always got Segmentation fault in trunk. I can reproduce follow situation:
$ rails new foo
add 'newrelic_rpm' to Gemfile on Foo Application.
$ bundle exec rails console
crash log is attached.
I investigate this issue, i...
hsbt (Hiroshi SHIBATA)
09:16 PM Revision 4f7c10f0 (git): * ext/.document: Remove curses from documentable directories.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44102 b2dd03c8-39d4-4d8f-98ff-823fe69b080e drbrain (Eric Hodel)
07:56 PM Revision 99e04c13 (git): * ext/openssl/lib/openssl/digest.rb: Deprecate OpenSSL::Digest::Digest
[Fixes GH-446] https://github.com/ruby/ruby/pull/446
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
zzak (zzak _)
07:30 PM Bug #9227: use opt_aset ?
I forget why I remove it.
Maybe I can't measure improvement (and possible to have trouble with this insn).
If there are no regression, I don't against to use it.
ko1 (Koichi Sasada)
07:10 PM Bug #9231 (Closed): The value of [].hash is equal to the value of false.hash
I found that [].hash == false.hash.
And the combinations of each elements also have the same value.
Is this an intended behavior?
C:\Users\phasis>irb
irb(main):001:0> [].hash
=> 1336528015
irb(main):002:0> false.hash
=> 13365280...
phasis68 (Heesob Park)
06:30 PM Feature #8977: String#frozen that takes advantage of the deduping
@ko1 and I discussed this at length earlier.
Although a frozen string table could be implemented in ruby (with the help of C-ext like WeakHash above), the current implementation of the finalizer table adds overhead that would make it ...
tmm1 (Aman Karmani)
03:35 PM Feature #8977: String#frozen that takes advantage of the deduping
Now, I have one concern about security concern.
This kind of method can be used widely and easily.
And if this method is used with external string getting from IO,
fstring table can be grow and grow easily.
I'm afraid about suc...
ko1 (Koichi Sasada)
07:23 AM Feature #8977: String#frozen that takes advantage of the deduping
headius (Charles Nutter) wrote:
> Actually, I'm getting pretty down on having the fstring cache at all. It seems like if we want a string pool, it should be via a library. Adding something into Ruby that pools strings for you just seems...
phluid61 (Matthew Kerwin)
07:08 AM Feature #8977 (Assigned): String#frozen that takes advantage of the deduping
I just made some more arguments for this feature in #9229.
The goal here is to provide runtime access to the frozen string literal table.
This is not a new idea. For instance, see String.Intern in .NET: http://msdn.microsoft.com/en-u...
tmm1 (Aman Karmani)
03:47 PM Revision 062845c1 (git): * 2013-12-10
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44100 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:47 PM Revision 2251a272 (git): * ext/thread/thread.c: [DOC] add call-seq alias for Queue#enq, #<<, etc.
* ext/thread/thread.c (Init_thread): use rb_define_alias instead of
rb_alias to document alias.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ktsj (Kazuki Tsujimoto)
03:09 PM Feature #8257: Exception#cause to carry originating exception along with new one
nobu: Because :cause is opt-in, I am not concerned about the backward compat. You'd have to be committing to 2.1 in order to start using that feature, and I think it will be slow to adopt in any case.
It would also be possible to monk...
headius (Charles Nutter)
01:41 PM Bug #8584: Remove curses
Removed by r44089. shugo (Shugo Maeda)
12:14 PM Bug #8584: Remove curses
I created https://github.com/ruby/curses and added commit bit to you. hsbt (Hiroshi SHIBATA)
11:26 AM Bug #8584: Remove curses
Ok, I will publish the curses gem this week.
hsbt, can you create github.com/ruby/curses? Please leave it unitialized so I can fork shugo/curses into it.
drbrain (Eric Hodel)
11:18 AM Bug #8584: Remove curses
shugo (Shugo Maeda) wrote:
> Eric, could you take over the maintenance of curses gem and upload it to rubygems.org as soon as possible?
If you'd like to use https://github.com/ruby/curses, please contact Shibata-san (hsbt).
shugo (Shugo Maeda)
11:16 AM Bug #8584: Remove curses
I talked with Naruse-san, and we've decided to remove curses from 2.1.
Eric, could you take over the maintenance of curses gem and upload it to rubygems.org as soon as possible?
shugo (Shugo Maeda)
12:26 PM Bug #9212 (Closed): Segmentation fault in test/objspace/test_objspace.rb#test_dump_all
This issue was solved with changeset r44088.
Alexey, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
object_tracing.c: fix allocation from NEWOBJ hook
* ext/objspa...
nobu (Nobuyoshi Nakada)
11:43 AM Bug #9221: Time.parse performance becomes exponentially worse as string length grows
I know [[:alpha:]] is not equal to [a-z].
But, it seems that the current time parsing is only for ascii string.
BTW, date_strptime.c has the same regular expression on line 567-572.
It should be modified also.
phasis68 (Heesob Park)
11:14 AM Bug #9221 (Closed): Time.parse performance becomes exponentially worse as string length grows
This issue was solved with changeset r44086.
Michael, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
date_parse.c: get rid of backtrack explosion
* ext/date/date_...
nobu (Nobuyoshi Nakada)
10:59 AM Bug #9221: Time.parse performance becomes exponentially worse as string length grows
[[:alpha:]] doesn't equal to [a-z], the former matches unicode alphabet categories. nobu (Nobuyoshi Nakada)
10:34 AM Bug #9221: Time.parse performance becomes exponentially worse as string length grows
I think this is an issue of Oniguruma(regular expressions library).
Here is a shortest code of producing this issue.
p /(?:[[:alpha:]]+\s)?/i.match("f"*40)
The [:alpha:] bracket and case ignore flag combination shows bad performan...
phasis68 (Heesob Park)
11:00 AM Revision c039c708 (git): * internal.h (RCLASS_SERIAL): Add RCLASS_SERIAL as a convenience
accessor for RCLASS_EXT(klass)->class_serial.
* class.c, vm_insnhelper.c, vm_method.c: Use RCLASS_SERIAL
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Charlie Somerville
10:51 AM Revision 7df97981 (git): * compile.c, insns.def, test/ruby/test_rubyvm.rb, vm.c, vm_core.h,
vm_insnhelper.c, vm_insnhelper.h, vm_method.c: Rename method_serial
to global_method_state and constant_serial to global_constant_state
after discussion with ko1.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44097 b2dd03c8-39d4...
Charlie Somerville
10:06 AM Revision a1119230 (git): hash.c: fix segv in Hash#replace
* hash.c (rb_hash_replace): fix segv on `{}.replace({})` introduced
in r44060 [Bug #9230] [ruby-core:58991]
* test/ruby/test_hash.rb: regression test for above
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44096 b2dd03c8-39d4-4d8f...
tmm1 (Aman Karmani)
09:12 AM Revision 5dc77048 (git): * vm.c (vm_stat): renamed from ruby_vm_stat.
Should not use ruby_ prefix here.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44095 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ko1 (Koichi Sasada)
08:51 AM Revision e23627c0 (git): * marshal.c: [DOC] Wordsmith marshal.c documentation. by @vipulnsward [fix GH-470]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44094 b2dd03c8-39d4-4d8f-98ff-823fe69b080e hsbt (Hiroshi SHIBATA)
07:13 AM Revision d2cc188a (git): gc.c: ObjectSpace::WeakMap#size
* gc.c (wmap_size): add ObjectSpace::WeakMap#size and #length.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44093 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:13 AM Revision b73a3064 (git): test_weakmap.rb: add
* test/ruby/test_weakmap.rb: test for ObjectSpace::WeakMap.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:04 AM Revision 28fd53d2 (git): * lib/xmlrpc/httpserver.rb: [DOC] Fix typo
s/authentification/authentication/
[ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
matsuda (Akira Matsuda)
06:54 AM Bug #9229: [patch] expose rb_fstring() as String#dedup
tmm1 (Aman Gupta) wrote:
> > Would this be better as MRI's implementation of String#freeze ?
> ...
We could always introduce #freeze! which is guaranteed to return the same object. Any old code that relies on receiving the same object...
phluid61 (Matthew Kerwin)
06:49 AM Bug #9229 (Closed): [patch] expose rb_fstring() as String#dedup
This is a dupe of #8977. The proposal there is to use String#frozen, which I like better as well. tmm1 (Aman Karmani)
05:51 AM Bug #9229: [patch] expose rb_fstring() as String#dedup
> I prefer that kind of optimization to happen automatically when needed, than force programmer to cast a spell.
I agree, but I'm not sure how MRI can perform this optimization automatically. For instance, in the rubygems case:
G...
tmm1 (Aman Karmani)
05:31 AM Bug #9229: [patch] expose rb_fstring() as String#dedup
Would this be better as MRI's implementation of String#freeze ? phluid61 (Matthew Kerwin)
06:26 AM Revision e759e273 (git): removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e shugo (Shugo Maeda)
04:45 AM Bug #9228: rdoc can't generate documentation for ext/thread/thread.c on trunk
This is only required in part for Ruby 2.0.0, ext/syslog/lib exists in ruby_2_0_0 branch but ext/thread/thread.c does not. drbrain (Eric Hodel)
04:44 AM Bug #9228 (Closed): rdoc can't generate documentation for ext/thread/thread.c on trunk
This issue was solved with changeset r44082.
Kazuki, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
* ext/.document: Add syslog/lib and thread/thread.c to documen...
drbrain (Eric Hodel)
04:39 AM Revision 9c5b2fd8 (git): * ext/curses, sample/curses: removed curses.
* NEWS: added an entry for the above change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
shugo (Shugo Maeda)
03:26 AM Revision d3363a96 (git): object_tracing.c: fix allocation from NEWOBJ hook
* ext/objspace/object_tracing.c (newobj_i): use cached class path
only to get rid object allocation during NEWOBJ hook.
[ruby-core:58853] [Bug #9212]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44088 b2dd03c8-39d4-4d8f-98ff-82...
nobu (Nobuyoshi Nakada)
03:25 AM Revision b4ab650e (git): variable.c: rb_class_path_cached
* variable.c (rb_class_path_cached): returns cached class path
only, without searching and allocating new class path string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
02:14 AM Revision 334294d0 (git): date_parse.c: get rid of backtrack explosion
* ext/date/date_parse.c (parse_time): unset case-insensitive flag
for [:alpha:], which already implies both cases, to get rid of
backtrack explosion. [ruby-core:58876] [Bug #9221]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4...
nobu (Nobuyoshi Nakada)
02:12 AM Feature #9190: Expose serial helper macros
Thanks everyone! simeonwillbanks (Simeon Willbanks)

12/08/2013

11:41 PM Revision 05ba6fff (git): * lib/rubygems: Update to RubyGems master bf37240. Fixes useless
error message with `gem install -g` with no gem dependencies file.
* test/rubygems: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
drbrain (Eric Hodel)
11:07 PM Revision 599dbf65 (git): vm.c: fix compile issue on 32bit freebsd
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e tmm1 (Aman Karmani)
09:38 PM Bug #9221 (Assigned): Time.parse performance becomes exponentially worse as string length grows
I assigned this issue to tadf because the pattern
is written in ext/date/date_parse.c.
akr (Akira Tanaka)
07:56 PM Bug #9221: Time.parse performance becomes exponentially worse as string length grows
It can be reproduced on ruby 2.0.0-p247 i386-mingw32.
I modified a test code to extension library free version.
C:\work>ruby -v
ruby 2.0.0p247 (2013-06-27) [i386-mingw32]
C:\work>type test.rb
require 'benchmark'
str = "12:00 PM ffffff...
phasis68 (Heesob Park)
08:20 PM Bug #9192 (Closed): Inconsistent comparison between Float and BigDecimal
This issue was solved with changeset r44073.
Gustavo, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
* bigdecimal.c (BigDecimal_coerce): convert a Float to a BigDe...
mrkn (Kenta Murata)
08:17 PM Bug #9133: logger rotates log files more than expected
Can you commit this? hsbt (Hiroshi SHIBATA)
07:52 PM Revision 68e21467 (git): * NEWS: Update RubyGems entry with notable features.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e drbrain (Eric Hodel)
07:44 PM Revision d71eb310 (git): * ext/.document: Add syslog/lib and thread/thread.c to documentable
items. [ruby-trunk - Bug #9228]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
drbrain (Eric Hodel)
07:32 PM Revision da3e610a (git): * lib/rubygems: Update to RubyGems master 096db36. Changes include
support for PATH in Gemfile.lock and a typo fix from Akira Matsuda.
* test/rubygems: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44081 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
drbrain (Eric Hodel)
06:12 PM Bug #9229: [patch] expose rb_fstring() as String#dedup
It sounds a bit too rash. For instance other Ruby implementations might not need such thing.
I prefer that kind of optimization to happen automatically when needed, than force programmer to cast a spell.
shyouhei (Shyouhei Urabe)
04:12 PM Bug #9229 (Closed): [patch] expose rb_fstring() as String#dedup
After recent commits, ruby is using the new rb_fstring() API extensively inside the VM to de-duplicate internal strings.
This technique has proven very successful, and reduced the majority of long-lived strings in large applications.
...
tmm1 (Aman Karmani)
05:32 PM Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
Wow, thanks for the quick fix :). myronmarston (Myron Marston)
03:27 PM Bug #9226 (Open): Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
OMG That is another issue....
ko1 (Koichi Sasada)
12:06 PM Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
Committed.
I was surprised but RGENGC_CHECK did not find this issue.
tmm1 (Aman Karmani)
12:03 PM Bug #9226 (Closed): Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
This issue was solved with changeset r44060.
Myron, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
hash.c: fix WB miss issue in Hash#replace
* hash.c (rb_hash_rep...
tmm1 (Aman Karmani)
11:51 AM Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
I like charliesome's approach.
Could you commit it?
ko1 (Koichi Sasada)
09:10 AM Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
Instead of shading the hash, we could probably do something like this:
diff --git hash.c hash.c
index a52e02f..e7a505e 100644
--- hash.c
+++ hash.c
@@ -1414,22 +1414,9 @@ rb_hash_replace(VALUE hash, VALUE hash2)

table2 = ...
Anonymous
08:29 AM Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
I was able to reproduce this on trunk with the following patch to rspec:
--- a/lib/rspec/core/command_line.rb
+++ b/lib/rspec/core/command_line.rb
@@ -20,6 +20,7 @@ module RSpec
@configuration.output_stream = out if @confi...
tmm1 (Aman Karmani)
01:17 AM Bug #9226 (Closed): Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:
https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122
The line where it's failing is here:
https://githu...
myronmarston (Myron Marston)
05:11 PM Revision fe57c5d4 (git): * 2013-12-09
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44080 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
05:11 PM Revision 91539d71 (git): * lib/net/http/responses.rb:
Add `HTTPIMUsed`, as it is also supported by rack/rails.
RFC - http://tools.ietf.org/html/rfc3229
by Vipul A M <vipulnsward@gmail.com>
https://github.com/ruby/ruby/pull/447 fix GH-447
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/tr...
naruse (Yui NARUSE)
04:06 PM Bug #9228 (Closed): rdoc can't generate documentation for ext/thread/thread.c on trunk
=begin
$ rm -rf .ext/rdoc
$ make rdoc
$ ls -d .ext/rdoc/Queue
ls: cannot access .ext/rdoc/Queue: No such file or directory
When "ext/thread/thread.c" is specified as rdoc command option, it works.
$ ./miniruby -I./lib -I. ...
ktsj (Kazuki Tsujimoto)
03:53 PM Feature #5446: at_fork callback API
Tanaka Akira <akr@fsij.org> wrote:
> 2013/12/7 Eric Wong <normalperson@yhbt.net>:
> > However, I want to do this via callback, example with Worker class:
> >
> > class Worker
> > attr_writer :pid
> >
> > de...
normalperson (Eric Wong)
02:30 PM Revision e0097ea8 (git): Fix the description in ChangeLog
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Kenta Murata
01:06 PM Feature #9190 (Closed): Expose serial helper macros
This issue was solved with changeset r44062.
Simeon, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
vm.c: add RubyVM.stat for accessing cache serials
* vm.c (ruby...
tmm1 (Aman Karmani)
02:03 AM Feature #9190: Expose serial helper macros
OK, cool. I'll refactor the Pull Request. Thanks! simeonwillbanks (Simeon Willbanks)
11:47 AM Revision 673aa230 (git): class.c: rest kwargs
* class.c (rb_get_kwargs): when values is non-null, remove
extracted keywords from the rest keyword argument.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
11:38 AM Revision 6def265d (git): variable.c: frozen class name
* variable.c (fc_path, classname): return ID strings without
unnecessary copying.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44076 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
11:33 AM Revision 91092927 (git): avoid circular dependency on AIX
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Yutaka Kanemoto
11:28 AM Bug #9225 (Closed): [patch] add WB to NODE_CREF
This issue was solved with changeset r44059.
Aman, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
gc.c: promote long-lived NODE_CREF objects to oldgen
* include/r...
tmm1 (Aman Karmani)
11:25 AM Revision cf85aaf8 (git): hash.c: reject shoult infect
* hash.c (rb_hash_reject): result should be infected by the
receiver.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44074 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
11:20 AM Revision 0727a22c (git): * bigdecimal.c (BigDecimal_coerce): convert a Float to a BigDecimal instead
of converting the receiver to a Float.
[ruby-core:58756] [Bug #9192]
* test/bigdecimal/test_bigdecimal.rb: add tests for the above change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Kenta Murata
11:10 AM Bug #9227: use opt_aset ?
Maybe some minor improvement on microbenchmarks.
Before patch:
./miniruby -I. benchmark/bm_so_k_nucleotide.rb > /dev/null 1.54s user 0.02s system 99% cpu 1.572 total
./miniruby -I. benchmark/bm_so_k_nucleotide.rb > /dev/null 1.5...
tmm1 (Aman Karmani)
11:01 AM Bug #9227 (Closed): use opt_aset ?
I noticed we have an opt_aset instruction, but nothing is using it. Is there some reason?
diff --git a/compile.c b/compile.c
index 812f692..9d9f14f 100644
--- a/compile.c
+++ b/compile.c
@@ -1955,6 +1955,11 @@ iseq_specialized_ins...
tmm1 (Aman Karmani)
11:04 AM Revision e54e3d70 (git): edit NEWS to move texts correct places
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e naruse (Yui NARUSE)
10:56 AM Misc #9188: r43870 make benchmark/bm_so_k_nucleotide.rb slow
@charliesome helped me with my compiler patch. It adds a new opt_aset_str instruction that handles the string literal hash_aset case (hsh["abc"]=).
Unfortunately, it did not make a big difference in long-lived strings generated in our...
tmm1 (Aman Karmani)
10:52 AM Misc #9188 (Closed): r43870 make benchmark/bm_so_k_nucleotide.rb slow
This issue was solved with changeset r44058.
Narihiro, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
hash.c: revert r43870 and add alternative parser patch for li...
tmm1 (Aman Karmani)
10:39 AM Feature #9171 (Closed): [patch] use fstrings for symbol table
This issue was solved with changeset r44057.
Aman, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
parse.y: use rb_fstring() for strings stored in the symbol table
...
tmm1 (Aman Karmani)
10:37 AM Bug #9207 (Closed): Build failure on Windows 8.1 with VS2013 x64
hsbt (Hiroshi SHIBATA)
10:26 AM Misc #8288: Ruby 2.1.0 release engeneering
I believe RubyGems is ready.
I will be marking the bundler features in RubyGems as experimental in the RubyGems release notes and Ruby NEWS files.
drbrain (Eric Hodel)
09:33 AM Revision b521f42a (git): * NEWS: [DOC] update NEWS about GC.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e ktsj (Kazuki Tsujimoto)
08:54 AM Revision 40468b5b (git): * object.c: [DOC] document Module#singleton_class?.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e ktsj (Kazuki Tsujimoto)
07:19 AM Revision dd8710d2 (git): class.c, vm_insnhelper.c: check unknown keywords
* class.c (rb_get_kwargs): if optional is negative, unknown
keywords are allowed.
* vm_insnhelper.c (vm_callee_setup_keyword_arg): check unknown
keywords.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44069 b2dd03c8-39d4-4d8f-98...
nobu (Nobuyoshi Nakada)
07:17 AM Revision 72f60a2f (git): class.c: optimization just one key
* class.c (keyword_error): use only element itself for
optimization in the case the key has just one element.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:17 AM Revision 1a5bc286 (git): test_keyword.rb: check error messages
* test/ruby/test_keyword.rb (test_required_keyword): check also
error messages.
* test/ruby/test_keyword.rb (test_block_required_keyword): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44067 b2dd03c8-39d4-4d8f-98ff-823fe69...
nobu (Nobuyoshi Nakada)
06:47 AM Revision 1018f57f (git): array.c: id_random
* array.c (rb_ary_shuffle_bang, rb_ary_sample): share id_random
instead of no longer used sym_random.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44066 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
05:58 AM Revision 7f5a9f38 (git): * array.c (rb_ary_shuffle_bang, rb_ary_sample): rename local variables.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e ktsj (Kazuki Tsujimoto)
05:02 AM Revision 3e1360f3 (git): * array.c (rb_ary_shuffle_bang, rb_ary_sample): check
unknown keywords.
* test/ruby/test_array.rb (test_shuffle, test_sample): tests for
the above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44064 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ktsj (Kazuki Tsujimoto)
04:06 AM Revision 66a96c13 (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
04:05 AM Revision cc106309 (git): vm.c: add RubyVM.stat for accessing cache serials
* vm.c (ruby_vm_stat): add RubyVM.stat() for access to internal cache
counters. this methods behaves like GC.stat, accepting an optional
hash or symbol argument. [Bug #9190] [ruby-core:58750]
* test/ruby/test_rubyvm.rb: test for new ...
tmm1 (Aman Karmani)
03:51 AM Revision 2aa57843 (git): * lib/xmlrpc/client.rb: [DOC] Fix typo
s/explicitely/explicitly/
[ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
matsuda (Akira Matsuda)
03:03 AM Revision 3dd248f1 (git): hash.c: fix WB miss issue in Hash#replace
* hash.c (rb_hash_replace): add a write barrier to fix GC mark miss on
hashes using Hash#replace [Bug #9226] [ruby-core:58948]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
tmm1 (Aman Karmani)
02:28 AM Revision 8f77cfb3 (git): gc.c: promote long-lived NODE_CREF objects to oldgen
* include/ruby/ruby.h: add RGENGC_WB_PROTECTED_NODE_CREF setting
In a large app, this reduces the size of
remembered_shady_object_count by 80%. [Bug #9225] [ruby-core:58947]
* gc.c (rb_node_newnode): add FL_WB_PROTECTED flag to NODE_...
tmm1 (Aman Karmani)
01:52 AM Revision 779ae789 (git): hash.c: revert r43870 and add alternative parser patch for literal keys
* hash.c (hash_aset_str): revert r43870 due to performance issue
[Bug #9188] [ruby-core:58730]
* parse.y (assoc): convert literal string hash keys to fstrings
* test/ruby/test_hash.rb (class TestHash): expand test
git-svn-id: svn+ssh:...
tmm1 (Aman Karmani)
01:39 AM Revision 98a74d4d (git): parse.y: use rb_fstring() for strings stored in the symbol table
* parse.y (register_symid_str): use fstrings in symbol table
[Bug #9171] [ruby-core:58656]
* parse.y (rb_id2str): ditto
* string.c (rb_fstring): create frozen_strings on first usage. this
allows rb_fstring() calls from the parser (be...
tmm1 (Aman Karmani)
01:32 AM Revision 100fe2e6 (git): class.c: fix uninitialized value
* class.c (rb_get_kwargs): fix returning uninitialized value when no
optional keywords.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:25 AM Revision 12c8533e (git): * lib/rubygems.rb: Update version for upcoming ruby 2.1.0 RC.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e drbrain (Eric Hodel)
01:22 AM Revision 7ed9b794 (git): * lib/rubygems: Update to RubyGems master 14749ce. This fixes bugs
handling of gem dependencies lockfiles (Gemfile.lock).
* test/rubygems: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
drbrain (Eric Hodel)
12:41 AM Revision 866b438c (git): * 2013-12-08
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
12:41 AM Revision e0290c94 (git): * array.c (rb_ary_or): use RHASH_TBL_RAW instead of RHASH_TBL
* process.c (rb_execarg_fixup): use RHASH_TBL_RAW and insert write
barriers where appropriate
* vm.c (kwmerge_i): use RHASH_TBL_RAW
* vm.c (HASH_ASET): use rb_hash_aset instead of calling directly into
st_insert
git-svn-id: svn+ss...
Charlie Somerville

12/07/2013

11:39 PM Bug #9225 (Closed): [patch] add WB to NODE_CREF
In our rails app, there are a lot of long-lived NODE_CREF:
>> p ObjectSpace.count_nodes
=> {:NODE_IF=>3, :NODE_CREF=>45810, :NODE_IFUNC=>11}
These are static objects, but are considered SHADY and contribute to the size of the reme...
tmm1 (Aman Karmani)
11:16 PM Bug #9207: Build failure on Windows 8.1 with VS2013 x64
This issue was solved with changeset r44034. phasis68 (Heesob Park)
09:14 PM Feature #8257: Exception#cause to carry originating exception along with new one
What about the backward compatibility? nobu (Nobuyoshi Nakada)
07:37 PM Feature #9171: [patch] use fstrings for symbol table
Ah great! Thanks for finding my bug.
With your patch, long-lived strings on our rails app heap are reduced by 6000. I think we should merge it.
tmm1 (Aman Karmani)
09:22 AM Feature #9171: [patch] use fstrings for symbol table
Seems my reply hasn't caught by the ITS...
(13/11/28 16:55), tmm1 (Aman Gupta) wrote:
> ~~~diff
> ...
At this point, `rb_cString` is not created yet.
And unfrozen string will be duplicated in `rb_fstring()`.
~~~diff
diff --git ...
nobu (Nobuyoshi Nakada)
09:21 AM Feature #9171: [patch] use fstrings for symbol table
different. nobu (Nobuyoshi Nakada)
06:16 AM Feature #9171: [patch] use fstrings for symbol table
Would this allow the symbol table to be GC'd or is that a separate issue? avit (Andrew Vit)
05:32 PM Misc #9188: r43870 make benchmark/bm_so_k_nucleotide.rb slow
After a few more false starts in the compiler, I ended up with the following patch to the parser.
diff --git a/parse.y b/parse.y
index 8207ad7..4629a60 100644
--- a/parse.y
+++ b/parse.y
@@ -4912,7 +4912,11 @@ assocs : assoc
as...
tmm1 (Aman Karmani)
11:57 AM Misc #9188: r43870 make benchmark/bm_so_k_nucleotide.rb slow
There were some minor improvements to rb_fstring() recently, but the hash changes are still slow on trunk.
In my environment:
# trunk
./miniruby -I. benchmark/bm_so_k_nucleotide.rb > /dev/null 3.72s user 0.03s system 99% cpu 3.757 ...
tmm1 (Aman Karmani)
05:14 PM Bug #8762: CFLAGS and LDFLAGS are not set properly in Makefile when they are already set as environment variables
With my patch, provided CFLAGS are appended to the built-in flags. This follows the behavior most projects use with ./configure.
On trunk now, what is the correct way to add a CFLAG for build? (i.e. -Iextra/include/dir)?
tmm1 (Aman Karmani)
05:10 PM Bug #8762 (Rejected): CFLAGS and LDFLAGS are not set properly in Makefile when they are already set as environment variables
If you set CFLAGS, that is you say it must be used. nobu (Nobuyoshi Nakada)
03:23 PM Bug #8762 (Open): CFLAGS and LDFLAGS are not set properly in Makefile when they are already set as environment variables
I believe this is still a bug.
If I compile ruby with a custom CFLAGS, the build will lose all optimization and warning flags:
$ CFLAGS="-I/opt/include " ./configure >/dev/null && make -n gc.o
gcc -I/opt/include -D_FORTIFY_SOURCE...
tmm1 (Aman Karmani)
04:58 PM Feature #9190: Expose serial helper macros
It sounds better than exposing those values directly. nobu (Nobuyoshi Nakada)
12:34 PM Feature #9190: Expose serial helper macros
I'm cool with RubyVM.stat; copying the GC.stat implementation is a good idea.
>> RubyVM.stat
=> {
:method_serial => 200,
:constant_serial => 210,
}
simeonwillbanks (Simeon Willbanks)
07:26 AM Feature #9190: Expose serial helper macros
If we're opposed to adding multiple methods to RubyVM, maybe a RubyVM.stat will suffice. It can behave the same way that GC.stat does (optional hash argument to avoid allocations). tmm1 (Aman Karmani)
07:23 AM Feature #9190: Expose serial helper macros
My main use-case for exposing these serials is to collect them automatically before and after each request in a rails app and graph how many times the caches are busted per request.
I would also like to see a Tracepoint or other hook ...
tmm1 (Aman Karmani)
01:32 AM Feature #9190: Expose serial helper macros
@charliesome and @tmm1, thanks for the support, and I concur.
@nobu I've hacked together a gem. It's an alpha version, and it depends upon this patch.
https://github.com/simeonwillbanks/busted
The gem is a continuation of the ...
simeonwillbanks (Simeon Willbanks)
04:51 PM Bug #9200 (Feedback): Segmentation Fault in jason 1.8.1 parser with Ruby 2.0.0 p353
Can you attach crash log and add your development environment? hsbt (Hiroshi SHIBATA)
03:05 PM Feature #7816 (Closed): Don't invalidate method caches when defining a new method on a class without subclasses
Superseded by klasscache Anonymous
01:53 PM Feature #5446: at_fork callback API
2013/12/7 Eric Wong <normalperson@yhbt.net>:

> However, I want to do this via callback, example with Worker class:
>
> class Worker
> attr_writer :pid
>
> def initialize
> @r, @w = IO.pipe
> Pro...
akr (Akira Tanaka)
01:02 PM Feature #5446: at_fork callback API
Another idea:
Process.at_fork{ |loc| case loc; when :before_fork; ... end } -> proc
Process.remove_at_fork(proc)
tmm1 (Aman Karmani)
07:29 AM Feature #5446: at_fork callback API
Ok good point. I agree we should add all three if we're going to do this.
I like the `Process.atfork_parent{}` API in your example. If we add three methods to `Process`, the only thing missing is a way to un-register a hook.
tmm1 (Aman Karmani)
06:53 AM Feature #5446: at_fork callback API
Eric Wong <normalperson@yhbt.net> wrote:
> the parent hook might be less useful (especially for apps which
> fork repeatedly).

I take that back. It can be useful for for setting up pipes/sockets for IPC
between parent and ch...
normalperson (Eric Wong)
01:01 PM Revision 0aada281 (git): * gc.c (gc_mark_children): use nd_clss and nd_next for code clarity
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Charlie Somerville
11:16 AM Bug #9223 (Closed): Hash#reject!.size does not reflect changes to the hash
This issue was solved with changeset r44047.
Daniel, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
hash.c: rb_hash_reject without dup
* hash.c (rb_hash_reject): ...
nobu (Nobuyoshi Nakada)
09:41 AM Bug #9223: Hash#reject!.size does not reflect changes to the hash
Seems inverse.
Hash#reject is equivalent to the following ruby code:
def reject(&block)
dup.delete_if(&block)
end
That is, the change on the original receiver can't affect the result.
nobu (Nobuyoshi Nakada)
12:25 AM Bug #9223 (Closed): Hash#reject!.size does not reflect changes to the hash
Here's an example demonstrating the issue, comparing to the regular reject behavior:
h = {a: 'A', b: 'B'}
reject_enum = h.reject
reject_bang_enum = h.reject!
h[:c] = 'C'
p reject_enum.size # 3
p reject_bang_enum.size # 2
dmarcotte (Daniel Marcotte)
11:07 AM Bug #9221: Time.parse performance becomes exponentially worse as string length grows
Reproduced on trunk:
irb(main):027:0> RUBY_DESCRIPTION
=> "ruby 2.1.0dev (2013-12-07 trunk 44044) [x86_64-darwin13.0]"
irb(main):028:0> Benchmark.measure { Time.parse("12:00 PM " + "f"*30) }.to_s
=> " 4.760000 0.000000 4.76000...
Anonymous
10:33 AM Revision 5728783a (git): * lib/net/http/header.rb: [DOC] Net::HTTP#to_hash returns pair of key and array values. Thanks @bjhaid [fix GH-467]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e hsbt (Hiroshi SHIBATA)
10:27 AM Revision 7a9f7016 (git): * ext/tk/lib/tk/canvas.rb: [DOC] Fix typo (s/paramter/parameter/)
* ext/tk/lib/tk/text.rb: Ditto.
* ext/tk/lib/tkextlib/blt/component.rb: Ditto.
* ext/tk/lib/tkextlib/blt/tree.rb: Ditto.
* ext/tk/lib/tkextlib/blt/treeview.rb: Ditto.
* ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb: Ditto.
* lib/xm...
matsuda (Akira Matsuda)
10:25 AM Revision 218755f3 (git): * lib/fileutils.rb: remove unnecessary initialization. by @vipulnsward [fix GH-463]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e hsbt (Hiroshi SHIBATA)
05:47 AM Feature #7688: Error hiding with rb_rescue() on Comparable#==, #coerce and others
OK, I will commit this as an experiment in early 2014. Eregon (Benoit Daloze)
02:16 AM Revision 7416073c (git): hash.c: rb_hash_reject without dup
* hash.c (rb_hash_reject): copy unrejected elements only to new hash,
so that the change on the original receiver can affect.
[ruby-core:58914] [Bug #9223]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44047 b2dd03c8-39d4-4d8f-9...
nobu (Nobuyoshi Nakada)
01:57 AM Feature #9123: Make Numeric#nonzero? behavior consistent with Numeric#zero?
@Guilherme
A predicate in Ruby can return any object. If the exact return value is documented, then the user of the predicate can leverage that contract if so wishes. That's why it is documented.
If something is documented to return th...
fxn (Xavier Noria)
01:47 AM Revision 77280b6c (git): test_struct.rb: use assert_same
* test/ruby/test_struct.rb (test_question_mark_in_member): true value
has no meanings itself. use assert_same instead.
* test/ruby/test_struct.rb (test_bang_mark_in_member): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4...
nobu (Nobuyoshi Nakada)
01:44 AM Revision bc7abeb3 (git): test_struct.rb: use assert_predicate
* test/ruby/test_struct.rb (test_question_mark_in_member): assert_true
is a method in test-unit. use assert_predicate instead.
* test/ruby/test_struct.rb (test_bang_mark_in_member): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/...
nobu (Nobuyoshi Nakada)
01:22 AM Misc #8288: Ruby 2.1.0 release engeneering
I think #9005 and #9141 need to be fixed first, as they break existing code due to changes in method visibility. jeremyevans0 (Jeremy Evans)

12/06/2013

11:41 PM Bug #9221: Time.parse performance becomes exponentially worse as string length grows
Running ruby-2.0.0-p247 [ x86_64 ], installed using RVM. mpelzsherman (Michael Pelz-Sherman)
11:40 PM Bug #9221: Time.parse performance becomes exponentially worse as string length grows
duerst (Martin Dürst) wrote:
> This runs in no time on ruby 2.0.0p247 (2013-06-27) [i386-mingw32] (same patch level!). Can you give more details about your environment?
Model Name: MacBook Pro
Model Identifier: MacBookPro9,1
Pr...
mpelzsherman (Michael Pelz-Sherman)
04:14 PM Bug #9221: Time.parse performance becomes exponentially worse as string length grows
This runs in no time on ruby 2.0.0p247 (2013-06-27) [i386-mingw32] (same patch level!). Can you give more details about your environment? duerst (Martin Dürst)
11:32 PM Revision 8d6904e0 (git): * ChangeLog: fix spelling of contributor's name
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Charlie Somerville
11:25 PM Revision 8bd27c38 (git): * 2013-12-07
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
11:25 PM Revision 2e6b1d0c (git): * test/ruby/test_struct.rb: Add regression test for question marks and
bangs in struct members. [Closes GH-468]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Charlie Somerville
10:57 PM Misc #9217: Ruby 1.9.3 End of Life Maintenance Policy
I think it makes sense to do a 12 month maintenance cycle so people can start upgrading. Although 2.0.0 is nearly a drop-in replacement, it's not that easy for larger apps. 12 months feels like a reasonable amount of time for people to u... samkottler (Sam Kottler)
05:23 PM Misc #9217: Ruby 1.9.3 End of Life Maintenance Policy
In Red Hat, we are shipping Ruby 1.9.3 as a part of Red Hat Software Collections product. It means that we are going to support Ruby 1.9.3 at least until September 30, 2016 [1]. If the time comes and Ruby 1.9.3 should be EOLed, I am will... vo.x (Vit Ondruch)
10:37 PM Feature #9123: Make Numeric#nonzero? behavior consistent with Numeric#zero?
I think current implementation of Numeric#nonzero? is fine, because, as was said, a predicate is expected to return truthy or falsey values.
On the other hand, Numeric#nonzero? should only be used as a predicate. So one should not rel...
guigs (Guilherme Goettems Schneider)
10:17 PM Bug #9013: Crash on start
I'm using 32-bit Windows 7 Enterprise.
C:\>chcp
Active code page: 866
lemonez (Dmitry Popov)
07:39 PM Feature #9171: [patch] use fstrings for symbol table
Nobu, could you check it?
ko1 (Koichi Sasada)
07:38 PM Bug #9203 (Closed): fstring_table size and performance
I found a bug of GC (Major GC doesn't invoked).
Solved by r44037.
ko1 (Koichi Sasada)
05:46 PM Bug #7492: Segmentation fault at DL::TestDL#test_call_double on x64 Windows 8
This seems to be related to #6592, although I have not experienced segfaults as you. vo.x (Vit Ondruch)
12:46 PM Bug #7492: Segmentation fault at DL::TestDL#test_call_double on x64 Windows 8
> phasis68
Thank you your nudge.
> ...
Can you handle this until release of 2.1.0?
hsbt (Hiroshi SHIBATA)
09:57 AM Bug #7492: Segmentation fault at DL::TestDL#test_call_double on x64 Windows 8
I am curious why my simple and obvious patch not accepted over 1 year.
phasis68 (Heesob Park)
05:24 PM Misc #8288: Ruby 2.1.0 release engeneering
I'd like to see the 2.1.0-RC with #9133 (and #9130).
Thanks in advance.
no6v (Nobuhiro IMAI)
04:25 PM Misc #8288: Ruby 2.1.0 release engeneering
I'll release Ruby 2.1.0-RC next week.
If you know any tasks/tickets which is not done yet for 2.1, please tell us!
naruse (Yui NARUSE)
05:16 PM Misc #9216: Backport Maintenance Policy for 1.8.7, 1.9.2
As Ruby 1.8.7 are part of Red Hat Enterprise Linux, we at Red Hat, are committed to support Ruby 1.8.7 for at least next 7 years [1]. I am backporting security fixes and also fixes, which ensures compatibility with some crucial libraries... vo.x (Vit Ondruch)
04:23 PM Misc #9216: Backport Maintenance Policy for 1.8.7, 1.9.2
As a Programming Language developer, people should use trunk! ;-)
Anyway, I know business people needs more support for older ruby.
Such people can support them with their own resource as heroku or ruby-lang.org official
even if so-...
naruse (Yui NARUSE)
02:52 PM Misc #9216: Backport Maintenance Policy for 1.8.7, 1.9.2
We have discussed this and decided its ok to maintain (security fixes only) 1.8.7 and 1.9.2 for at least 6 months. This does allow for some backports that will help with running tests and merger.
We also decided that performing securi...
zzak (zzak _)
03:37 PM Feature #5446: at_fork callback API
Thanks for your feedback.
> 1. Why no before_fork?
I planned to add this in the same way as after_fork, as long as there are no issues with my patch.
I wasn't sure if rb_vm_t is the best place for the new hooks.
If it seems sane...
tmm1 (Aman Karmani)
07:53 AM Feature #5446: at_fork callback API
2013/11/30 tmm1 (Aman Gupta) <ruby@tmm1.net>:
>
> Issue #5446 has been updated by tmm1 (Aman Gupta).
>
>
> Simple implementation of an after_fork{} hook: https://github.com/tmm1/ruby/commit/711a68b6599d176c5bcb4ef0c90aa195a290...
kosaki (Motohiro KOSAKI)
02:36 PM Misc #9219 (Assigned): Policy Announcement for All Versions
This proposal was accepted, during the release of 2.1.0 we will announce our maintenance policy plans. zzak (zzak _)
02:33 PM Misc #8962: [DOC] add step to enable Generational GC merits in README.EXT*
During the 2013-12-05 developers meeting[1] Koichi was given this assignment, and I will help him write the documentation.
1: http://bugs.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20131205Japan
zzak (zzak _)
12:26 PM Bug #9103 (Third Party's Issue): Segmentation fault. ROR/rubypython/Sidekiq stack.
I think this issue is rubypython problem, Please report this to http://rubypython.rubyforge.org/ hsbt (Hiroshi SHIBATA)
12:03 PM Bug #8860 (Feedback): 64-bit x86 ruby 1.9.3-p448 on Solaris core dumps on bug4950 test case
Could you try latest version of Ruby 1.9.3? hsbt (Hiroshi SHIBATA)
12:03 PM Bug #8868 (Feedback): Error installing 1.9.3p448 on AIX 7.1
Could you try latest version of Ruby 1.9.3? hsbt (Hiroshi SHIBATA)
11:57 AM Bug #8932 (Feedback): ruby-2.0.0-p247/gems/rubyzip-0.9.9/lib/zip/inflater.rb:42: [BUG] Segmentation fault
Could you try latest version of Ruby 2.0 and rubyzip? hsbt (Hiroshi SHIBATA)
11:54 AM Misc #9197 (Closed): Remove RAA from lib/erb.rb documentation
This issue was solved with changeset r44025.
Giorgos, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
* lib/erb.rb: [DOC] fix broken link.
Use rubygems.org an...
hsbt (Hiroshi SHIBATA)
11:38 AM Bug #9220 (Feedback): Segmentation fault
Could you confirm to reproduce this without ruby-debug-ide? hsbt (Hiroshi SHIBATA)
11:18 AM Bug #9222 (Closed): xmalloc usage during GC_START event can cause confusing assertion failure
You can reproduce the assertion failure with the following patch.
We should prevent this assert() from firing, either by ignoring GC requests during GC_START, or raising a rb_bug() on any attempt to re-enter the GC.
The only affects ...
tmm1 (Aman Karmani)
10:33 AM Revision 113008a7 (git): class.c: move kwarg functions
* class.c (rb_extract_keywords, rb_get_kwargs): move from
vm_insnhelper.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
10:27 AM Revision b91e889c (git): * gc.c: change oldmalloc meaning.
Increase oldmalloc_increase with malloc_increase
instead of using obj_memsize_of().
This change will avoid the danger of memory full without major GC.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44040 b2dd03c8-39d4-4d8f-98ff...
ko1 (Koichi Sasada)
10:09 AM Revision f09058b8 (git): * gc.c (atomic_sub_nounderflow): not 0 but val itself.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e ko1 (Koichi Sasada)
09:59 AM Bug #9124: TestSocket errors in test-all on Arch 64-bit
Eric Wong <normalperson@yhbt.net> wrote:
> This will flow into the stable maintenance kernels (3.12, 3.10, etc)
> within a few weeks.

GregKH has these queued up for the next 3.12, 3.10, and 3.4 stable releases.
So Linux 3.12....
normalperson (Eric Wong)
09:38 AM Revision e4720e11 (git): * gc.c (rb_objspace_alloc, Init_heap): initialize
oldmalloc_increase_limit at Init_heap.
rb_objspace_alloc() is not called on some platforms.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ko1 (Koichi Sasada)
09:34 AM Revision 2c616737 (git): * gc.c (garbage_collect_body): bug fix.
initialize after recording.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ko1 (Koichi Sasada)
08:53 AM Revision cb62399d (git): * gc.c (atomic_sub_nounderflow): added to simplify atomic sub with
care about underflow.
* gc.c (objspace_malloc_increase): use it.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ko1 (Koichi Sasada)
08:40 AM Bug #9207: Build failure on Windows 8.1 with VS2013 x64
Your patch fixed this issue.
phasis68 (Heesob Park)
01:32 AM Bug #9207: Build failure on Windows 8.1 with VS2013 x64
=begin
Sorry, it was incomplete.
diff --git i/lib/pp.rb w/lib/pp.rb
index 0091ddf..e43b3fd 100644
--- i/lib/pp.rb
+++ w/lib/pp.rb
@@ -132,17 +132,17 @@ class PP < PrettyPrint
# and preserves the previous set of objects being ...
nobu (Nobuyoshi Nakada)
12:38 AM Bug #9207: Build failure on Windows 8.1 with VS2013 x64
=begin
Does identhash help?
diff --git a/thread.c b/thread.c
index f111a5f..c5b2e4c 100644
--- a/thread.c
+++ b/thread.c
@@ -4738,6 +4738,16 @@ rb_thread_shield_destroy(VALUE self)
/* variables for recursive traversals */
stati...
nobu (Nobuyoshi Nakada)
08:10 AM Revision b9cafaf5 (git): vm_insnhelper.c: rb_get_kwargs
* vm_insnhelper.c (rb_get_kwargs): get keyword argument values from an
option hash, not only checking keys.
* dir.c (dir_initialize): use rb_get_kwargs.
* gc.c (gc_start_internal): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/tr...
nobu (Nobuyoshi Nakada)
07:50 AM Revision c7572f2f (git): thread.c: compare_by_id
* thread.c (recursive_list_access): let symbol only hashes compare
the elements by id.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44034 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:47 AM Revision 378d20f8 (git): ruby-mode.el: expand/unexpand block
* misc/ruby-mode.el (ruby-brace-to-do-end): split single line block.
* misc/ruby-mode.el (ruby-do-end-to-brace): shrink single line block
to one line.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44033 b2dd03c8-39d4-4d8f-98ff-823...
nobu (Nobuyoshi Nakada)
07:47 AM Revision 761e9c51 (git): gc.c: indent
* gc.c (gc_start_internal): adjust indent.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:22 AM Revision 0e20c2af (git): * gc.c (gc_start_internal): do not use rb_gc_start() and rb_gc().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e ko1 (Koichi Sasada)
06:38 AM Bug #9167: Segmentation fault in cleanup
nobu (Nobuyoshi Nakada) wrote:
> Bertram, thank you for reporting this issue.
> ...
Thank you for fixing it.
I'll keep my eyes open.
BertramScharpf (Bertram Scharpf)
06:31 AM Revision b10a8c52 (git): * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:26 AM Revision 73d6dc25 (git): * gc.c (gc_start_internal, rb_gc): do not need
heap_pages_free_unused_pages() here.
It was done in after_sweep().
* gc.c (rb_gc): The reason is now GPR_FLAG_CAPI.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ko1 (Koichi Sasada)
05:32 AM Revision e6237c82 (git): gc.c: add note about experimental nature of new GC.start flags
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e tmm1 (Aman Karmani)
05:11 AM Revision 470c9d84 (git): gc.c: add minor marking and lazy sweeping options to GC.start
* gc.c (gc_start_internal): GC.start() now accepts two optional
keyword arguments. These can be used to disable full_mark (minor
mark only) or disable immediate_sweep (use lazy sweep). These new
options are useful for benchmarking ...
tmm1 (Aman Karmani)
04:34 AM Revision c52eadeb (git): * lib/webrick/httpstatus.rb: [DOC] Fix typo
s/sucess/success/
[ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
matsuda (Akira Matsuda)
02:54 AM Revision 56654cb0 (git): * lib/erb.rb: [DOC] fix broken link.
Use rubygems.org and www.ruby-toolbox.com instead of RAA. [Bug #9197]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44025 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
hsbt (Hiroshi SHIBATA)
02:10 AM Revision 86d6d4d5 (git): * lib/webrick/compat.rb, lib/xmlrpc/datetime.rb: [DOC] fix typo by @vipulnsward [fix GH-464]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e hsbt (Hiroshi SHIBATA)
01:56 AM Revision ea1180ef (git): * lib/webrick/httprequest.rb: [DOC] Fix broken link of CGI specification by @udzura [fix GH-466]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44023 b2dd03c8-39d4-4d8f-98ff-823fe69b080e hsbt (Hiroshi SHIBATA)
01:35 AM Bug #9214 (Closed): BigDecimal: BigDecimal() and to_d does not always make currect for -0.0
This issue was solved with changeset r44021.
Hans, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
* ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec):
treat 0.0 a...
mrkn (Kenta Murata)

12/05/2013

11:23 PM Bug #9207: Build failure on Windows 8.1 with VS2013 x64
I found what is going on with Windows 8.1.
In Windows 8.x, an allocated address can take over 32-bit value unlike Windows 7.
And 64-bit value is not a SPECIAL_CONST value on Windows.
Thus, when ruby calls rb_hash function with 64bit add...
phasis68 (Heesob Park)
10:10 AM Bug #9207: Build failure on Windows 8.1 with VS2013 x64
>usa
Do you have dev environment of Windows 8.1...?
hsbt (Hiroshi SHIBATA)
12:24 AM Bug #9207: Build failure on Windows 8.1 with VS2013 x64
I found that r43859 introduced this issue.
Before r43859, the build works fine on Windows 8.1
phasis68 (Heesob Park)
10:53 PM Bug #9221 (Closed): Time.parse performance becomes exponentially worse as string length grows
See attached script. Output:
parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
20...
mpelzsherman (Michael Pelz-Sherman)
10:18 PM Bug #9213 (Closed): mkmf.rb emits invalid destination directory name for mswin32/64
This issue was solved with changeset r44019.
Akio, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
mkmf.rb: strip destdir from prefix
* lib/mkmf.rb (configuration)...
nobu (Nobuyoshi Nakada)
02:41 AM Bug #9213: mkmf.rb emits invalid destination directory name for mswin32/64
I think the DESTDIR setting is for DOS like prefix.
So this is the patch.
~~~diff
--- mkmf.rb.org 2013-12-05 02:38:38.508908700 +0900
+++ mkmf.rb 2013-12-05 02:38:59.788774499 +0900
@@ -1849,6 +1849,7 @@ VPATH = #{vpath.join(CONFI...
arton (Akio Tajima)
01:25 AM Bug #9213 (Closed): mkmf.rb emits invalid destination directory name for mswin32/64
The install process of traditional extended library (=non gem) uses extconf.rb for creating Makefile and install the library by (n)make install.
However it does not work correctly because of FileUtil.mkdir met bad directory name as 'c:c...
arton (Akio Tajima)
08:58 PM Feature #7688: Error hiding with rb_rescue() on Comparable#==, #coerce and others
It's quite difficult to predict what would happen if we remove error hiding.
So I agree with starting experiment to see if we will have any problem.
But I think it's too late to add that kind of change for Ruby 2.1, so how about star...
matz (Yukihiro Matsumoto)
08:36 PM Misc #9218: Branch Maintainer Appointment / Discharge Process
I think this should be follow http://bugs.ruby-lang.org/projects/ruby/wiki/MaintainerDischargingProcess
> when someone offers to maintain a branch, they must also declare how long they are maintaining it for.
I doubt anyone can com...
naruse (Yui NARUSE)
12:44 PM Misc #9218 (Closed): Branch Maintainer Appointment / Discharge Process
There's a library appointment / discharge policy see ruby-core:25764 (http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/25764). There should be a similar policy for branch maintainership.
A. candidacy process
when someone o...
hone (Terence Lee)
08:33 PM Bug #9220 (Closed): Segmentation fault
rCompleted 500 Internal Server Error in 520ms
/home/jmdiez/.rvm/gems/ruby-2.0.0-p353@grinbuzz/gems/activesupport-4.0.1/lib/active_support/notifications.rb:159: [BUG] Segmentation fault
ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64...
jmdiez@aspgems.com (Jose Miguel Díez de la Lastra)
05:48 PM Bug #8782: Don't set rl_getc_function on editline
rl_getc_function を設定しないと、readline() 内でブロックした時に他のスレッドがすべて止まってしまうのではないかと思います。
これは、現在、rl_getc_function 内で read システムコールを呼び出すところだけを blocking region にして、他のスレッドが動けるようにしているからです。
readline() 関数全体を blocking region 内で実行するという手はあるかもしれません。
akr (Akira Tanaka)
04:35 PM Revision 9e205469 (git): * 2013-12-06
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
04:34 PM Revision 2308fb17 (git): * ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec):
treat 0.0 and -0.0 of floating-point numbers specially for an optimization
and to correctly propagate its signbit to the result.
[Bug #9214] [ruby-core:58858]
* test/bigdecimal/test_bigdecimal.rb: add tests case for the above change...
Kenta Murata
03:19 PM Bug #9155: DelegateClass - ArgumentError: not delegated
I prefer here but a pull request on github is also a correct place.
The reason I didn't merge it is:
* I didn't want to add another instance variable, and
* more importantly, a subclass of Delegator/DelegateClass may not call
sup...
nobu (Nobuyoshi Nakada)
04:37 AM Bug #9155: DelegateClass - ArgumentError: not delegated
No problem, thanks for the fix.
Just a quick question - Simon fixed this on github; is this not the correct place to do a pull request / fix for a bug? If you can let us know, next time we'll do it through the correct channel.
Russ
rhs (Russell Smith)
01:30 PM Revision 8cffe06a (git): test_objspace.rb: show error
* test/objspace/test_objspace.rb (test_dump_all): show error output if
nothing dumped.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:18 PM Revision 1a1c0aeb (git): mkmf.rb: strip destdir from prefix
* lib/mkmf.rb (configuration): strip destdir part from prefix to get
rid of duplication. a patch by arton at [ruby-core:58859].
[ruby-core:58856] [Bug #9213]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44019 b2dd03c8-39d4-4d8...
nobu (Nobuyoshi Nakada)
01:05 PM Revision efbcd1cb (git): * string.c (rb_str_scrub): [DOC] add param str.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
01:02 PM Revision 007f35ba (git): strip-rdoc.rb: binmode
* tool/strip-rdoc.rb: read in binary mode to get rid of errors by
non-ascii characters.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:59 PM Revision 1dcc9850 (git): fix matching
* bootstraptest/test_thread.rb: String#=~ does not accept String.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44016 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:53 PM Revision 19737494 (git): array.c: prefer lhs elements
* array.c (rb_ary_or): lhs elements are prefered, so should not
replace with rhs elements.
* test/ruby/test_array.rb (test_OR_in_order): import the test failed
by r43969 from rubyspec/core/array/union_spec.rb.
git-svn-id: svn+ssh://...
nobu (Nobuyoshi Nakada)
12:49 PM Revision 928c9994 (git): * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44014 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
12:47 PM Misc #9219 (Closed): Policy Announcement for All Versions
Once the policy has been decided for any released branch, there should be an announcement made on www.ruby-lang.org NEWS in the actual release announcement. We should aim to announce along with the 2.1.0 release announcement. hone (Terence Lee)
12:34 PM Revision 941e36d3 (git): gc.c: [DOC] minor typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e tmm1 (Aman Karmani)
12:27 PM Misc #9217 (Closed): Ruby 1.9.3 End of Life Maintenance Policy
We need a defined plan for how long 1.9.3 will be maintained for bug fixes and security fixes? 6 months? 9 months? 12 months? timeline? hone (Terence Lee)
12:14 PM Misc #9216 (Closed): Backport Maintenance Policy for 1.8.7, 1.9.2
TL;DR
Backporting security fixes to 1.8.7, 1.9.2 in increments of 6 month terms with optional continuation upon term expiration.
Context
Many vendors like Linux distros including Red Hat, Debian, Canonical and platforms like Heroku ...
hone (Terence Lee)
12:07 PM Misc #9215 (Closed): Maintenance Policy for Future Releases (2.1.0 & beyond)
In order to support long lived applications better, people need information to make decisions. When someone chooses to use a particular programming language it’s important to know how long something is going to be supported.
For futur...
hone (Terence Lee)
12:06 PM Revision b9cf1033 (git): * gc.c (gc_info_decode): fix to avoid syntax error on VS2012.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e ko1 (Koichi Sasada)
11:57 AM Revision b28f0f1e (git): test_gc.rb: expand timeout
* test/ruby/test_gc.rb (test_sweep_in_finalizer): expand timeout for
slower machines.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
11:32 AM Revision 8740ac0a (git): * lib/webrick/httpresponse.rb: [DOC] Fix typo
s/resopnse/response/
[ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
matsuda (Akira Matsuda)
10:47 AM Bug #9205 (Closed): Assertion failed: heap_pages_deferred_final == 0
This issue was solved with changeset r43994.
Heesob, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
gc.c: flush all deferred finalizers
* gc.c (`finalize...
nobu (Nobuyoshi Nakada)
10:40 AM Bug #9205: Assertion failed: heap_pages_deferred_final == 0
My test code is different from Bug #9168.
I guess the name `raise_proc` made confusion.
It is just repeated finalizer test without raising an exception.
phasis68 (Heesob Park)
10:26 AM Bug #9205: Assertion failed: heap_pages_deferred_final == 0
I've misread the code, like as `raise_proc` raises an exception and that triggers the failure.
But the proc raises nothing, then what would trigger it?
nobu (Nobuyoshi Nakada)
10:35 AM Revision 737c7d81 (git): st.c: tweaked comment
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44009 b2dd03c8-39d4-4d8f-98ff-823fe69b080e duerst (Martin Dürst)
10:30 AM Revision 4876dd3f (git): gc.c: add GC.latest_gc_info()
* gc.c (struct rb_objspace): rename internal last_collection_flags to
latest_gc_info
* gc.c (gc_latest_collection_info): add GC.latest_gc_info() with similar
behavior to GC.stat()
* gc.c (rb_gc_latest_gc_info): new c-api for above
* ...
tmm1 (Aman Karmani)
09:24 AM Revision 6692436b (git): ext/objspace: remove OS.after_gc_start_hook= and move internal test
* ext/objspace/gc_hook.c: remove this file
* ext/-test-/tracepoint/gc_hook.c: new filename for above
* ext/objspace/objspace.c: remove ObjectSpace.after_gc_start_hook=
* test/objspace/test_objspace.rb: remove test
* test/-ext-/tracepoint...
tmm1 (Aman Karmani)
08:52 AM Revision 53035271 (git): * gc.c: change function names vm_ prefix to objspace_ prefix.
They are objspace_ functionality.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ko1 (Koichi Sasada)
08:26 AM Bug #9212: Segmentation fault in test/objspace/test_objspace.rb#test_dump_all
> ruby/ruby(rb_class_path+0x83) [0x2b1ca09be963]
> ...
This is a known issue in the current implementation.
We need an allocation-free variant of rb_class_path that is safe to use from this context.
tmm1 (Aman Karmani)
12:11 AM Bug #9212 (Closed): Segmentation fault in test/objspace/test_objspace.rb#test_dump_all
At least on Linux x64 (Ubuntu 3.10) the test_dump_all test occasionally fails with:
TypeError: no implicit conversion of nil into String.
When I inspected output and error I found that it actually fails with this error:
/home/{u...
snaury (Alexey Borzenkov)
07:45 AM Revision 241c1a54 (git): gc.c: expose GC.stat() to C-api via rb_gc_stat()
* include/ruby/intern.h: add rb_gc_stat() for access to GC.stat
variables from c-api
* gc.c (rb_gc_stat): new c-api method. accepts either VALUE hash like
GC.stat, or VALUE symbol key and returns size_t directly. the second
form is...
tmm1 (Aman Karmani)
07:32 AM Bug #9192: Inconsistent comparison between Float and BigDecimal
marcandre (Marc-Andre Lafortune) wrote:
> duerst (Martin Dürst) wrote:
> ...

I don't think it's a good idea to convert to float. We, programmers, have to know how numbers are stored in memory and we also know how to deal with differ...
vatsu (Gustavo Sales)
12:44 AM Bug #9192: Inconsistent comparison between Float and BigDecimal
duerst (Martin Dürst) wrote:
> ...
> ...
Agreed.
The float we write as 706.0606 represents a small range of real values that includes the real number 706.06059999999999. So the first result is correct:
706.0606 <=> BigDecimal...
marcandre (Marc-Andre Lafortune)
06:56 AM Revision 97ac1f67 (git): ChangeLog: about malloc_size(3) availability
* ChangeLog: malloc_size(3) on MacOS X says it's a BSD Library
Function, so possibly some other BSDs may have but seems unavailable
on FreeBSD at least.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44004 b2dd03c8-39d4-4d8f-98ff...
nobu (Nobuyoshi Nakada)
05:40 AM Revision 1bbc52de (git): hash.c: bail out to the outermost frame
* hash.c (rb_hash): revert r43981 and bail out to the outermost frame
when recursion is detected.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
05:38 AM Revision 19be85f7 (git): test_hash.rb: import tests from rubyspec
* test/ruby/test_hash.rb: import tests for recursive hash values
from rubyspec/core/{array,hash}/hash_spec.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
05:38 AM Revision 14023338 (git): test_hash.rb: move tests
* test/ruby/test_hash.rb: move hash value tests from test_array.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
05:35 AM Revision 14b46d30 (git): test_gc.rb: shorten
* test/ruby/test_gc.rb (test_sweep_in_finalizer): omit iteration number to 2.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
05:26 AM Revision c3486135 (git): vm_eval.c: suppress warning
* vm_eval.c (rb_catch_obj): add cast to suppress warning by VC.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
04:54 AM Revision cda7250d (git): * gc.c (vm_malloc_size): added.
return malloc_usable_size() if possible.
* gc.c (MALLOC_ALLOCATED_SIZE): add new setting macro to enable
GC.allocated_size.
If platform supports `malloc_usable_size()' (or similar one),
GC.allocated_size can be implemented with thi...
ko1 (Koichi Sasada)
04:26 AM Revision 393b9e65 (git): gc.c: split GC_END event into GC_END_MARK and GC_END_SWEEP
* include/ruby/ruby.h: remove INTERNAL_EVENT_GC_END and replace with
two new events: GC_END_MARK and GC_END_SWEEP
* gc.c (gc_after_sweep): emit GC_END_SWEEP after lazy sweep is done
* gc.c (gc_marks_body): emit GC_END_MARK at end of mi...
tmm1 (Aman Karmani)
01:57 AM Bug #9214 (Closed): BigDecimal: BigDecimal() and to_d does not always make currect for -0.0
BigDecimal does not always works currect for -0.0
BigDecimal("-0.0") => #<BigDecimal:1065c88,'-0.0',9(18)>
BigDecimal(-0.0,0) => #<BigDecimal:10617a0,'0.0',9(27)>
(-0.0).to_d => #<BigDecimal:10268d0,'0.0',9(36)>
i think the p...
Hanmac (Hans Mackowiak)
01:54 AM Bug #9204: Issues when compiled with libedit instead of readline
Indeed, but unfortunately it’s a badly documented choice with rather surprising consequences: Compiling Ruby works seemingly without any problems, and you may use Ruby for several days or even months before noticing the issue. And then i... noniq (Stefan Daschek)
01:48 AM Revision fb29aefc (git): ruby_atomic.h: ATOMIC_PTR_EXCHANGE
* ruby_atomic.h (ATOMIC_PTR_EXCHANGE): atomic exchange function for
a generic pointer.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:47 AM Revision b8434daf (git): ruby_atomic.h: duplicate code
* ruby_atomic.h (ATOMIC_SIZE_CAS): remove duplicate code as
ATOMIC_CAS().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43995 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:47 AM Revision c06f1203 (git): gc.c: flush all deferred finalizers
* gc.c (finalize_deferred): flush all deferred finalizers while other
finalizers can get ready to run newly by lazy sweep.
[ruby-core:58833] [Bug #9205]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43994 b2dd03c8-39d4-4d8f-98ff...
nobu (Nobuyoshi Nakada)
01:16 AM Revision 3e36402e (git): gc.c: rb_gc_set_params
* gc.c (rb_gc_set_params): define as separate function.
RUBY_ALIAS_FUNCTION is for simple alias only, the third parameter
will be ignored on gcc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43993 b2dd03c8-39d4-4d8f-98ff-823fe6...
nobu (Nobuyoshi Nakada)
12:19 AM Revision 0fdb25ba (git): * 2013-12-05
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
12:19 AM Revision 53e0d466 (git): gc.c: Load GC tuning settings earlier during boot.
* gc.c (ruby_gc_set_params): Accept safe_level argument so GC tuning
settings can be applied before rb_safe_level() is available.
* internal.h (rb_gc_set_params): ditto.
* ruby.c (process_options): Apply GC tuning early during boot pro...
tmm1 (Aman Karmani)

12/04/2013

11:43 PM Bug #9211 (Third Party's Issue): Bug in can_detect_signals? in test/rake/test_rake_functional.rb
In function can_detect_signals? in file test/rake/test_rake_functional.rb ruby is spawned incorrectly. There should be multiple parameters in a system call, since otherwise ruby is spawned from a shell, status ends up in a shell, and she... snaury (Alexey Borzenkov)
10:06 PM Bug #9205: Assertion failed: heap_pages_deferred_final == 0
You are right.
Why not commit your patch?
phasis68 (Heesob Park)
09:29 PM Bug #9205: Assertion failed: heap_pages_deferred_final == 0
It doesn't seem nice to just ignore finalizers while running other finalizers.
~~~diff
diff --git c/gc.c i/gc.c
index ddf607c..0d18031 100644
--- c/gc.c
+++ i/gc.c
@@ -2055,10 +2055,10 @@ finalize_list(rb_objspace_t *objspace, RV...
nobu (Nobuyoshi Nakada)
12:39 PM Bug #9205: Assertion failed: heap_pages_deferred_final == 0
I found that make_deferred function of gc.c modified the value of heap_pages_deferred_final to nonzero.
I made a draft patch and I am not sure this patch is the best.
Anyway, it fixed the assertion and passed test-all.
phasis68 (Heesob Park)
07:58 PM Bug #9192: Inconsistent comparison between Float and BigDecimal
marcandre (Marc-Andre Lafortune) wrote:
> I never thought about comparison of float with other numeric types, but should we convert everything to float and compare this way? This way we insure that:
> ...
This definitely would be a g...
duerst (Martin Dürst)
07:01 PM Bug #9210 (Assigned): Adding extra example in docs
Thanks for the report! I will look into this soon. zzak (zzak _)
05:29 PM Bug #9210 (Closed): Adding extra example in docs
There's no documentation for the Module#class_variable method when using the parameter.
Thanks to Alexander Popov for suggesting this patch.
https://github.com/steveklabnik/ruby/commit/8290b41d79110691d4d52aae1ead1c7038ee700a.patch...
steveklabnik (Steve Klabnik)
03:45 PM Feature #9209 (Closed): Struct instances creatable with named args
now that ruby supports named params it seems natural for Struct to make use of them.
Struct.new(:a).new(a: 1)
rits (First Last)
03:26 PM Bug #9201: [patch] remove GC overhead for loaded_features_index
Look at #8158 . Don't know if it still applies, but I will fix it if you interested in.
funny_falcon (Yura Sokolov)
02:06 PM Revision 46b4eca8 (git): * lib/webrick/httpproxy.rb: [DOC] Fix typo
s/bacause/because/
[ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43990 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
matsuda (Akira Matsuda)
12:48 PM Bug #9155 (Closed): DelegateClass - ArgumentError: not delegated
This issue was solved with changeset r43984.
Russell, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
delegate.rb: ignore unset target
* lib/delegate.rb (Delegator...
nobu (Nobuyoshi Nakada)
11:23 AM Bug #9124: TestSocket errors in test-all on Arch 64-bit
"jonforums (Jon Forums)" <redmine@ruby-lang.org> wrote:
> Linux 3.13-rc2 has the patch, so Arch will likely get it soon after 3.13, but But will Ubuntu Server 13.10 ever get the patch or move to 3.13?
>
> https://git.kernel.org/c...
normalperson (Eric Wong)
09:49 AM Bug #9124: TestSocket errors in test-all on Arch 64-bit
After updating Ubuntu Server 13.10 with linux-image-3.11.0-14-generic I see the same error with Arch.
The behavior Eric mentioned is on linux-stable so it may have been pulled in with their latest update
https://git.kernel.org/cgit...
jonforums (Jon Forums)
09:23 AM Bug #9202: Array#uniq freezes duplicate strings
"Glass_saga (Masaki Matsushita)" <glass.saga@gmail.com> wrote:
> I confirmed it. Thank you for your patch!

No problem, thanks for the review.

Also, I think we may remove rb_hash_keys from internal.h and make it
static again.
normalperson (Eric Wong)
08:42 AM Bug #9208 (Assigned): Win32 ANSI color no longer works since revision 43331
Thank you snaury,
That is correct, the addition of the ConEmu presence was something reported early on (#8201) that affected some users using Ruby under ConEmu.
I can say that color performance under ConEmu is considerably slower t...
luislavena (Luis Lavena)
06:14 AM Bug #9208: Win32 ANSI color no longer works since revision 43331
Regarding conemu: it seems that latest conemu builds actually handle colors correctly, so it was some conemu bug. Am I correct that handling colors with conemu is preferred because it has more ansi features than builtin ruby? Then it mak... snaury (Alexey Borzenkov)
05:17 AM Bug #9208 (Feedback): Win32 ANSI color no longer works since revision 43331
In revision 43331 in file win32/win32.c function console_emulator_p was added, which supposedly checked for patched WriteConsoleW. However, since WriteConsoleW points to a stub (which does jmp [import]), the allocation base address is al... snaury (Alexey Borzenkov)
04:59 AM Revision 148135d9 (git): * test/ruby/test_array.rb (test_recursive_hash_value): rename.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43989 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
04:20 AM Revision 5a7ee1e1 (git): string.c: fix declaration-after-statement
* string.c (fstr_update_callback): move a variable declaration since
ISO C90 forbids mixed declarations and code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43988 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
04:05 AM Revision 348903a6 (git): * vm_trace.c (rb_suppress_tracing): Fix initialization of stack
allocated rb_trace_arg_t structure. Without this patch, sometimes
INTERNAL_EVENT_GC would be skipped accidentally inside
rb_threadptr_exec_event_hooks_orig().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43987 b2dd03c8-39d4-4d8...
tmm1 (Aman Karmani)
04:05 AM Revision 753fe471 (git): * string.c (fstr_update_callback): Improve implementation in r43968
based on feedback from @nagachika. In the existing case, we can
return ST_STOP to prevent any hash modification. In the !existing
case, set both key and value to the fstr.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43986 b2dd...
tmm1 (Aman Karmani)
03:48 AM Revision 2dc478cb (git): * 2013-12-04
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:47 AM Revision fc4de123 (git): delegate.rb: ignore unset target
* lib/delegate.rb (Delegator#method_missing): ignore the target if not
set, and delegate to global methods. [ruby-core:58572] [Bug #9155]
* lib/delegate.rb (Delegator#respond_to_missing): ditto.
* lib/delegate.rb (SimpleDelegator#__ge...
nobu (Nobuyoshi Nakada)
03:10 AM Bug #9153: IO#flush causes unnecessary fsync on Windows
usa (Usaku NAKAMURA) wrote:
> Thank you for your long description.
> ...
I'm not sure what you mean? One idea would be to change test_size_flushes_buffer_before_determining_file_size in test/test_tempfile.rb to skip the last assert on ...
snaury (Alexey Borzenkov)

12/03/2013

10:44 PM Bug #9207 (Closed): Build failure on Windows 8.1 with VS2013 x64
On Windows 8.1, I cannot build trunk with the VS2013 64-bit C compiler.
C:\work\ruby-2.1.0-r43958>win32\configure.bat
Creating Makefile.new
"type `nmake' to make ruby."
C:\work\ruby-2.1.0-r43958>nmake
Microsoft (R) Program Mai...
phasis68 (Heesob Park)
10:43 PM Bug #9204 (Third Party's Issue): Issues when compiled with libedit instead of readline
It's your choice. nobu (Nobuyoshi Nakada)
06:45 PM Bug #9204 (Third Party's Issue): Issues when compiled with libedit instead of readline
Compiling Ruby on Mac OS X uses BSD libedit instead of GNU readline, leading to various problems. Most notably: With libedit it’s not possible to input accented characters (e.g. ÄÖÜ) in irb or pry:

$ irb # Ruby 2.1.0-preview2
irb...
noniq (Stefan Daschek)
07:47 PM Bug #9205 (Closed): Assertion failed: heap_pages_deferred_final == 0
If I run the following code:
raise_proc = proc do |id|
p "Finalizer one on #{id}"
end
10000.times do
ObjectSpace.define_finalizer(Object.new, raise_proc)
end
I can see an assertion failure.
"Fin...
phasis68 (Heesob Park)
05:29 PM Bug #9201: [patch] remove GC overhead for loaded_features_index
With this patch along with the one in r43973, minor GC pauses are now up to 45% shorter in our application.
10.times{ s=Time.now; GC.start_minor; p Time.now-s }
# r43972
0.034701
0.034337
0.038741
0.034126
0.037504
0.033009
...
tmm1 (Aman Karmani)
05:13 PM Bug #9201 (Closed): [patch] remove GC overhead for loaded_features_index
This issue was solved with changeset r43974.
Aman, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
* load.c (features_index_add_single): Move loaded_features_index ...
tmm1 (Aman Karmani)
01:48 PM Bug #9201: [patch] remove GC overhead for loaded_features_index
In features_index_add_single, we already Check_Type(offset, T_FIXNUM). This ensures these off-heap RArrays will only contain immediates and do not need to be marked. tmm1 (Aman Karmani)
07:54 AM Bug #9201 (Closed): [patch] remove GC overhead for loaded_features_index
I was profiling minor GC in our app and noticed 15% of time spent in mark_tbl for loaded_features_index.
The following patch removes this overhead by storing feature offsets outside the ruby heap:
https://github.com/tmm1/ruby/com...
tmm1 (Aman Karmani)
02:57 PM Bug #9192: Inconsistent comparison between Float and BigDecimal
duerst (Martin Dürst) wrote:
> nobu (Nobuyoshi Nakada) wrote:
> ...
I never thought about comparison of float with other numeric types, but should we convert everything to float and compare this way? This way we insure that:
any...
marcandre (Marc-Andre Lafortune)
02:38 PM Bug #9192 (Assigned): Inconsistent comparison between Float and BigDecimal
BigDecimal converts Float with to_r, and 706.06.to_r returns (1552642359815045/2199023255552).
But Float#to_r doesn't consider that Float is inexact, this is not equal to 706.06.
Converting by rb_flt_rationalize_with_prec() seems solvi...
nobu (Nobuyoshi Nakada)
11:22 AM Bug #9192: Inconsistent comparison between Float and BigDecimal
BTW, I am keen to help on solving this, but I would need guidance... vatsu (Gustavo Sales)
02:48 PM Revision b7c6db94 (git): gc.c: use malloc_size
* configure.in: check malloc_size() available on BSD.
* gc.c: use malloc_size() with malloc/malloc.h on BSD.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
02:14 PM Revision 7e1f3c63 (git): * object.c (rb_obj_clone): don't copy FL_WB_PROTECTED of a
original object.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
authorNari (Narihiro Nakamura)
01:55 PM Bug #9202 (Closed): Array#uniq freezes duplicate strings
This issue was solved with changeset r43969.
Eric, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
* array.c (ary_add_hash): set and return values because string ke...
Anonymous
01:53 PM Bug #9202: Array#uniq freezes duplicate strings
I confirmed it. Thank you for your patch! Glass_saga (Masaki Matsushita)
12:10 PM Bug #9202: Array#uniq freezes duplicate strings
This should fix it, can you confirm/? Thanks normalperson (Eric Wong)
11:23 AM Bug #9202: Array#uniq freezes duplicate strings
bisected to r43194:

* array.c (rb_ary_uniq): use rb_hash_keys().

* internal.h: define rb_hash_keys() as internal API.

* hash.c (rb_hash_keys): ditto.
normalperson (Eric Wong)
11:23 AM Bug #9202: Array#uniq freezes duplicate strings
It's not r43870 (Use rb_fstring() to de-duplicate hash string keys)
Bisecting now...
normalperson (Eric Wong)
09:05 AM Bug #9202 (Closed): Array#uniq freezes duplicate strings
I imagine this is related to the recent frozen string changes. This behavior change in Array#uniq breaks RubyGems:
$ cat test.rb
p unique: %w[a].uniq.any? { |item| item.frozen? }
p duplicate: %w[a a].uniq.any? { |item| item.frozen?...
drbrain (Eric Hodel)
01:32 PM Revision 218d1f5e (git): hash.c: same hash value for similar constructs
* hash.c (rb_hash_recursive): make similar (recursive) constructs
return same hash value. execute recursively, and rewind to the
topmost frame with an object which .eql? to the recursive
object, if recursion is detected.
git-svn-...
nobu (Nobuyoshi Nakada)
01:18 PM Revision 6f2efe84 (git): hash.c: detect recursion for all
* hash.c (rb_hash): detect recursion for all `hash' methods. each
`hash' methods no longer need to use rb_exec_recursive().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43980 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:53 PM Revision c7159e81 (git): vm_eval.c: rb_catch_protect
* vm_eval.c (rb_catch_protect): new function similar to
rb_catch_obj(), but protect from all global jumps like as
rb_load_protect(), rb_protect(), etc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43979 b2dd03c8-39d4-4d8f-98ff-...
nobu (Nobuyoshi Nakada)
12:31 PM Bug #9203: fstring_table size and performance
I got it!
So the problem is major marking timing.
ko1 (Koichi Sasada)
12:27 PM Bug #9203: fstring_table size and performance
It looks like this is a problem with RGenGC.
I can reproduce the performance issue with the script you posted:
λ ./rb x.rb
user system total real
16.360000 0.600000 16.960000 ( 16.960314)
...
Anonymous
12:24 PM Bug #9203: fstring_table size and performance
To avoid possibility that accidentally marking on machine stack and so on, I use $h instead of local variable h. but same result.
###
require 'benchmark'
a = 0
b = n = 10_000_000
seq = true
Benchmark.bm{|x|
x.report{
...
ko1 (Koichi Sasada)
12:20 PM Bug #9203 (Closed): fstring_table size and performance
Clip question discussed on skype.
I have two questions about the following benchmark and result.
(1) why slowdown if seq == true ?
(2) why not GC'ed? (fatal error)
###
require 'benchmark'
a = 0
b = n = 10_000_000
seq = tr...
ko1 (Koichi Sasada)
12:23 PM Bug #9199: win32.h is not installed by '(n)make install)
this problem caused by r42862.
Why does INSTRUBY always need to include $(arch)-fake ?
It is only needed when cross compiling and prereq, IMO.
usa (Usaku NAKAMURA)
02:47 AM Bug #9199 (Assigned): win32.h is not installed by '(n)make install)
luislavena (Luis Lavena)
02:18 AM Bug #9199 (Closed): win32.h is not installed by '(n)make install)
I try to install ruby-2.0.0-p353 (also rubytrunk) using 'nmake install' but ruby/win32.h does not include in include directory.
cause: tool/rbinstall.rb checks that it's required win32.h by 'unless RUBY_PLATFORM =~ /mswin|mingw|bccwin...
arton (Akio Tajima)
12:18 PM Misc #9197 (Assigned): Remove RAA from lib/erb.rb documentation
Thanks for the report! I will check this soon. zzak (zzak _)
12:14 PM Revision 1083b375 (git): * lib/net/smtp.rb: [DOC] Fix typo
s/raies/raises/
[ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
matsuda (Akira Matsuda)
12:08 PM Revision 1f34456d (git): ChangeLog: complement the intention
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
11:24 AM Revision 53f1de2f (git): * object.c (rb_obj_clone): Protect FL_PROMOTED and FL_WB_PROTECTED
flags of a destination object.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43976 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
authorNari (Narihiro Nakamura)
11:19 AM Revision 437b8bc5 (git): * array.c (rb_hash_rehash): use hash_alloc() instead of rb_hash_new().
[Bug #9187]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43975 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Glass_saga (Masaki Matsushita)
11:10 AM Feature #8951: Please add a hash-to-hash alternative of the map method to Hash
Hash#transform might also be a good name. fuadksd (Fuad Saud)
10:44 AM Bug #9028 (Closed): Make SSLSocket Support Encodings
This issue was solved with changeset r43964.
Jeremy, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
----------
* ext/openssl/lib/openssl/buffering.rb: Return ASCII-8BIT stri...
drbrain (Eric Hodel)
10:39 AM Bug #9028: Make SSLSocket Support Encodings
Sounds great. As long as there is no explicit encoding support for sockets, ASCII-8BIT also seems the most natural to me. Thank you and please go ahead, Eric! MartinBosslet (Martin Bosslet)
07:14 AM Bug #9028 (Assigned): Make SSLSocket Support Encodings
The attached patch makes OpenSSL::Buffering methods return ASCII-8BIT strings for all results.
This doesn't bring encoding support to OpenSSL::SSL::Socket, but it avoids the bug of the buffering methods sometimes returning UTF-8 and s...
drbrain (Eric Hodel)
08:53 AM Misc #9188: r43870 make benchmark/bm_so_k_nucleotide.rb slow
"tmm1 (Aman Gupta)" <ruby@tmm1.net> wrote:
> Do you have any thoughts on an implementation? I'll revert the
> existing commit in the meantime.

Not really, but I think it needs to be done in the parser which I'm not
familiar w...
normalperson (Eric Wong)
08:20 AM Misc #9188: r43870 make benchmark/bm_so_k_nucleotide.rb slow
> How about only using rb_fstring for string literal hash keys?
I think this makes sense. We won't see a 10% savings like we did in #8998, but it's a fair compromise.
Do you have any thoughts on an implementation? I'll revert the e...
tmm1 (Aman Karmani)
08:13 AM Revision 42582358 (git): * load.c (features_index_add_single): Move loaded_features_index array values off
the ruby heap. [Bug #9201] [ruby-core:58805]
* load.c (loaded_features_index_clear_i): Clean up off-heap array structure.
* vm.c (rb_vm_mark): Remove unnecessary mark_tbl for loaded_features_index.
This improves minor GC time by 15% in...
tmm1 (Aman Karmani)
08:11 AM Revision 084b602d (git): * include/ruby/ruby.h (struct RClass): Add wrapper struct around
RClass->m_tbl with serial. This prevents double marking method
tables, since many classes/modules can share the same method table.
This improves minor mark time in a large application by 30%.
* internal.h (struct method_table_wrapper...
tmm1 (Aman Karmani)
06:30 AM Revision ee7fa8b2 (git): Add a description about string-scrub.gem to NEWS
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e naruse (Yui NARUSE)
06:08 AM Revision b69c18cf (git): * test/ruby/test_rubyoptions.rb (TestRubyOptions::SEGVTest::ExpectedStderr):
ignore fault address.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
05:13 AM Revision 2b07df37 (git): * array.c (rb_ary_uniq_bang): remove duplicate code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Glass_saga (Masaki Matsushita)
04:55 AM Revision 95f983f6 (git): * array.c (ary_add_hash): set and return values because string keys
will be frozen. [ruby-core:58809] [Bug #9202]
* array.c (rb_ary_uniq_bang): ditto.
* array.c (rb_ary_or): ditto.
* array.c (rb_ary_uniq): ditto.
* test/ruby/test_array.rb: tests for above.
The patch is from normalperson (Eric Wong)....
Glass_saga (Masaki Matsushita)
03:40 AM Revision 6edaf997 (git): * string.c (rb_fstring): Use st_update instead of st_lookup +
st_insert.
* string.c (fstr_update_callback): New callback for st_update.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
tmm1 (Aman Karmani)
03:18 AM Revision 41a73480 (git): rdoc/constant.rb: reapply r43006 for workaround of
NoMethodError
* lib/rdoc/constant.rb (RDoc::Constant#documented?): workaround for
NoMethodError when the original of alias is not found.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
03:18 AM Revision 24bcd4ce (git): signal.c: fault address
* signal.c (sigbus, sigsegv): show fault address in the bug message.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
03:18 AM Revision d7de38ff (git): * hash.c (w32_getenv): should be static.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
03:15 AM Bug #9200 (Closed): Segmentation Fault in jason 1.8.1 parser with Ruby 2.0.0 p353
Trying to start the server for a brand new rails app using ruby 2.0.0 p353 results in a segmentation fault in the json parser gem. jmstone617 (Jordan Stone)
02:06 AM Bug #6573: Webrick test failures
Could you please consider applying the patch? Thank you. vo.x (Vit Ondruch)
01:44 AM Revision e45f56d5 (git): * ext/openssl/lib/openssl/buffering.rb: Return ASCII-8BIT strings from
SSLSocket methods. [ruby-trunk - Bug #9028]
* test/openssl/test_ssl.rb: Test for the above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
drbrain (Eric Hodel)
01:33 AM Bug #8968: Baseruby is required after patching configure.in
Thank you for fixing this. vo.x (Vit Ondruch)
12:42 AM Revision 2c052a06 (git): * 2013-12-03
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
12:42 AM Revision f462cdb5 (git): * lib/rdoc: Update to RDoc master 900de99. Changes include:
Fixed documentation display of constants
Fixed handling of unknown parsers
* test/rdoc: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
drbrain (Eric Hodel)
12:05 AM Bug #9198: Segfault in TestException#test_machine_stackoverflow
Forgot to mention that I am testing of Fedora Rawhide. vo.x (Vit Ondruch)
 

Also available in: Atom