Project

General

Profile

Activity

From 05/19/2017 to 05/25/2017

05/25/2017

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

05/24/2017

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

05/23/2017

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

05/22/2017

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

05/21/2017

11:52 PM Revision 8623ba86 (git): lib/net/protocol: clear short-lived read buffer
Using a parallel Net::HTTP downloader, this reduced memory usage
from around 120MB to 50MB on my 32-bit x86 system.
* lib/net/protocol.rb (rbuf_fill): clear temporary buffer
Test script I used:
require 'net/http'
require 'uri'
r...
Eric Wong
08:05 PM Bug #13312: String#casecmp raises TypeError instead of returning nil
I did not include the type check in `str_casecmp`, which seems superfluous to me. I also adjusted the tests, docs, and examples to those of the corresponding Symbol methods, and fixed the code formatting.
@hsbt
I also added a NEWS ...
stomar (Marcus Stollsteimer)
07:28 PM Bug #13312 (Closed): String#casecmp raises TypeError instead of returning nil
Applied in changeset trunk|r58837.
----------
string.c: fix String#{casecmp,casecmp?} for non-string arguments
* string.c: make String#{casecmp,casecmp?} return nil for
non-string arguments instead of raising a TypeError.
* test/rub...
stomar (Marcus Stollsteimer)
07:31 PM Revision 7406d7cf (git): String#casecmp no longer raises TypeError
* See https://bugs.ruby-lang.org/issues/13312
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58839 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
stomar (Marcus Stollsteimer)
07:29 PM Revision 102ec7f4 (git): NEWS: String#{casecmp,casecmp?} [Bug #13312]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e stomar (Marcus Stollsteimer)
07:28 PM Revision 40bc846b (git): string.c: fix String#{casecmp,casecmp?} for non-string arguments
* string.c: make String#{casecmp,casecmp?} return nil for
non-string arguments instead of raising a TypeError.
* test/ruby/test_string.rb: add tests.
Reported by Marcus Stollsteimer. Based on a patch by Shingo Morita.
[ruby-core:801...
stomar (Marcus Stollsteimer)
07:27 PM Revision 913afdf9 (git): test_string.rb,test_symbol.rb: add some tests
* test/ruby/test_string.rb: add more test cases for String#casecmp.
* test/ruby/test_symbol.rb: ditto for Symbol#{casecmp,casecmp?}.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58836 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
stomar (Marcus Stollsteimer)
07:25 PM Revision 47f2bd93 (git): Use should_receive expectation instead of singleton method
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e stomar (Marcus Stollsteimer)
05:33 PM Feature #13551: Add a method to alias class methods
Martin showed this example:
> class Array
> ...
Ruby allows this flexibility, this is true. This is also great, we
love it.
But when you use this code and want to distribute it, it is more
cumbersome. And not everyone likes to h...
shevegen (Robert A. Heiler)
05:29 PM Feature #13551: Add a method to alias class methods
> Given that it's very easy (as shown by Matthew) to create such a method, do you think it's necessary that this
> ...
Well I do not have a statistical dataset myself, but I use it all the time.
The thing is that for me it is very na...
shevegen (Robert A. Heiler)
04:51 PM Feature #13587 (Closed): Improve performance of string interpolation
This patch will add pre-allocation in string interpolation.
By this, unnecessary capacity resizing is avoided.
For small strings, optimized `rb_str_resurrect` operation is faster, so pre-allocation is done only when concatenated stri...
south37 (Nao Minami)
04:45 PM Revision 4a9a0eaa (git): * 2017-05-22
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
04:45 PM Revision 48070cef (git): downloader cache
* tool/downloader.rb (Downloader.download): manage download cache.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
02:29 PM Revision 2ee57d5f (git): remove verify option
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
08:30 AM Revision 70b99576 (git): downloader.rb: utilize dir argument
* tool/downloader.rb (Downloader::RubyGems.download): utilize
`dir` argument of Downloader.download.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:17 AM Bug #13191 (Open): sample/pty/shl.rb がうまく動かない
znz (Kazuhiro NISHIYAMA)
07:13 AM Revision b4c20088 (git): Add missing word in transform_values methods description
Explicitly says that the methods return a new hash rather than just
stating it return a new something we don't know.
[ci skip]
[Fix GH-1619]
Author: Nicolas Cavigneaux <nico@bounga.org>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/tr...
znz (Kazuhiro NISHIYAMA)
03:36 AM Bug #13357 (Closed): Improve Time#+ & Time#- performance
Applied in changeset trunk|r58829.
----------
Improve Time#+ & Time#- performance
* time.c (wadd): use internal addv() function to calculate internal value in
Time object. On 64-bit machine, Time object might have Fixnum object
...
watson1978 (Shizuo Fujita)
03:36 AM Bug #13354 (Closed): Improve Time#<=> performance
Applied in changeset trunk|r58828.
----------
Improve Time#<=> performance
* time.c (wcmp): use internal cmp() function for comparing internal Fixnum value
in Time objects. On 64-bit machine, Time object might have Fixnum object
...
watson1978 (Shizuo Fujita)
03:36 AM Revision c208d15f (git): Improve Time#+ & Time#- performance
* time.c (wadd): use internal addv() function to calculate internal value in
Time object. On 64-bit machine, Time object might have Fixnum object
internally by default and addv() can calculate Fixnum objects directly.
* time.c (...
watson1978 (Shizuo Fujita)
03:36 AM Revision 92ea637c (git): Improve Time#<=> performance
* time.c (wcmp): use internal cmp() function for comparing internal Fixnum value
in Time objects. On 64-bit machine, Time object might have Fixnum object
internally by default and cmp() can compare the Fixnum objects directly.
...
watson1978 (Shizuo Fujita)
01:01 AM Revision 3f8248f1 (git): Remove redundant square brackets
Use character class directly instead of
character class in character class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58827 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
znz (Kazuhiro NISHIYAMA)

05/20/2017

11:32 PM Feature #13396: Net::HTTP has no write timeout
naruse@airemix.jp wrote:
> Only supports Linux:

...And only with sockets where O_NONBLOCK is not set, because
the O_NONBLOCK flag will ignore SO_*TIMEO.

Anyways, I don't think using SO_*TIMEO for Ruby is worth it.

I think Rub...
normalperson (Eric Wong)
10:01 PM Feature #13396: Net::HTTP has no write timeout
Only supports Linux:
```diff
@@ -10372,11 +10383,23 @@ static int
nogvl_wait_for_single_fd(int fd, short events)
{
struct pollfd fds;
+ struct timespec ts, *tsp = NULL;
fds.fd = fd;
fds.events = events;
...
naruse (Yui NARUSE)
06:48 PM Feature #13396 (Assigned): Net::HTTP has no write timeout
The concept Net::HTTP#write_timeout sounds fine.
> However adding a Timeout.timeout call around req.exec did work.
Timeou.timeout should be avoided because it sometimes caused trouble and now eliminated.
(see also https://github.c...
naruse (Yui NARUSE)
08:42 PM Feature #8631: Add a new method to ERB to allow assigning the local variables from a hash
I would already suggest a new name when I read about the problems with overriding the current method, so I would agree that 2 would be a better approach, I'm just not sure which name would be best. I like result_with_hash, but it could b... rosenfeld (Rodrigo Rosenfeld Rosas)
05:41 PM Feature #8631 (Feedback): Add a new method to ERB to allow assigning the local variables from a hash
k0kubun (Takashi Kokubun)
08:01 PM Feature #13583: Adding `Hash#transform_keys` method
I think the names are good, both #transform_keys and #transform_values.
Seem quite clear to me from the names.
On the linked older issue (-3 years), the names were different,
Hash#map_keys and Hash#map_values. Matz said that the n...
shevegen (Robert A. Heiler)
08:56 AM Feature #13583: Adding `Hash#transform_keys` method
I don't think you missed anything, except I would just point out to also add `Hash#transform_keys!`. I don't know if it's worth mentioning or just kinda automatically assumed. graywolf (Gray Wolf)
01:49 AM Feature #13583: Adding `Hash#transform_keys` method
Thank you for issuing this. I see there is an obvious needs for this transformation (stringify_keys) so I'm :+1: to the feature.
Let's have a concrete definition of this requested method:
- Its name is Hash#transform_keys.
- It r...
shyouhei (Shyouhei Urabe)
06:55 PM Bug #13566 (Assigned): A process freezes at the beginning of C level backtrace when a certain SEGV is occurred
This issue is not only for NULL but also the other address such as 0x00000000000001.
```
$ ruby -r fiddle -e 'Fiddle::Function.new(Fiddle::Pointer.new(1), [], Fiddle::TYPE_VOID).call'
-e:1: [BUG] Segmentation fault at 0x000000000000...
mrkn (Kenta Murata)
06:50 PM Feature #13577: Digest.file accidentally receives File object but uses file path
Hanmac (Hans Mackowiak) wrote:
> as Sorah did there: https://github.com/aws/aws-sdk-ruby/pull/1516
> ...
Yeah.
It should use pread if it can or simply read then restore the pos.
naruse (Yui NARUSE)
05:36 PM Revision 64c91470 (git): erb.rb: Allow trimming CR in all trim_modes
to unify a behavior with r58823 and r58825.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
05:17 PM Bug #5339 (Closed): ERB generates extra newlines on Windows
Applied in changeset trunk|r58825.
----------
erb.rb: Allow explicit trimming carriage return
when trim_mode is "-", for Windows environments.
[ruby-core:39625] [Bug #5339]
k0kubun (Takashi Kokubun)
05:17 PM Revision b82ed2ce (git): erb.rb: Allow explicit trimming carriage return
when trim_mode is "-", for Windows environments.
[ruby-core:39625] [Bug #5339]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
05:03 PM Revision 37bc70e6 (git): doc/maintainers.rdoc: Add me to ERB maintainers
The current maintainer suggested this in ruby-dev:50113.
Please ping me if an issue happens in ERB.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
04:50 PM Bug #11464 (Closed): ERB trimming doesn't trim carriage returns
Applied in changeset trunk|r58823.
----------
erb.rb: Allow trimming carriage return
when trim_mode is "<>", for Windows environments.
[Bug #11464]
k0kubun (Takashi Kokubun)
04:50 PM Revision 040f2756 (git): erb.rb: Allow trimming carriage return
when trim_mode is "<>", for Windows environments.
[Bug #11464]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
04:36 PM Bug #13586 (Closed): Ruby hangs when accessing array which is modified in instance_eval after Coverage.start
The following code will hang ruby:
~~~
# main.rb
require "coverage"
Coverage.start
require_relative "./foo"
# Perhaps we need more repetition to reproduce
1000.times do
Foo.new.count
end
~~~
~~~
# foo.rb
class ...
mtsmfm (Fumiaki Matsushima)
04:20 PM Revision a6986f10 (git): erb.rb: Prevent potential unexpected rescue
of LoadError in some method calls, not from `require "strscan"`.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
03:58 PM Revision 9aa33d5d (git): * 2017-05-21
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:58 PM Revision a1b924f0 (git): Clean proxy
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58820 b2dd03c8-39d4-4d8f-98ff-823fe69b080e naruse (Yui NARUSE)
02:55 PM Revision ca34d707 (git): erb.rb: Drop unused scanner implementation
Original `SimpleScanner` was used only in tests.
Since `SimpleScanner` and `SimpleScanner2` work in the same way, I want
to drop the one which can't be used in a normal situation.
The only difference was `SimpleScanner` can be loaded wi...
k0kubun (Takashi Kokubun)
02:07 PM Bug #13312: String#casecmp raises TypeError instead of returning nil
> Can you handle this?
Ok.
stomar (Marcus Stollsteimer)
01:00 PM Revision f1e10bd2 (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58818 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
01:00 PM Revision 33710d45 (git): Add coverage measurement mode by using gcov
This experimental feature is only for Ruby-core team, not for casual users.
Usage: `./configure --enable-gcov && make && make exam && make gcov`
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
mame (Yusuke Endoh)
12:51 PM Feature #13568: File#path for O_TMPFILE fds has no meaning
shyouhei (Shyouhei Urabe) wrote:
> At the meeting we discussed the use case of `File#path` and we thought there are 2 kinds:
> ...
A correction; The method which `open` calls is `to_path`, not `path`.
These are different.
> Do you ...
nobu (Nobuyoshi Nakada)
07:20 AM Feature #13568: File#path for O_TMPFILE fds has no meaning
like i said, open with write mode is the problem.
because it didn't fail with the nonexistent path
an way for it to make it work for `printf` or logger would be to make it's `#inspect` working (with not using path in that case)
ab...
Hanmac (Hans Mackowiak)
02:49 AM Feature #13568: File#path for O_TMPFILE fds has no meaning
At the meeting we discussed the use case of `File#path` and we thought there are 2 kinds:
- Pass it to `open()`
- Pass it to `printf()` or variant
We considered both and concluded it is best to return a nonexistent path, not `nil`...
shyouhei (Shyouhei Urabe)
12:23 PM Revision 41e800f6 (git): ripper.c should have `#line "ripper.c"`, not `#line "parse.c"`
The order of sed commands in Makefile of ripper was wrong: it tries to
replace `y.tab.c` with `ripper.c`, but before that, ytab.sed replaced
`y.tab.c` with `parse.c`, which led to a wrong result.
git-svn-id: svn+ssh://ci.ruby-lang.org/r...
mame (Yusuke Endoh)
11:40 AM Revision 52de8260 (git): compile.c: optimize branches
* compile.c (compile_branch_condition, iseq_compile_each0):
eliminate unreachable branches in NODE_IF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
10:27 AM Revision 4b39eaf4 (git): compile.c: binary logop check
* compile.c (compile_branch_condition): turn recursion at binary
logical operator into loop by goto, and check the result of RHS
of NODE_OR.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
10:21 AM Revision 82092f4b (git): prime.rb: remove alias after timeout test
* test/test_prime.rb: remove alias after timeout test.
* lib/prime.rb: fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
stomar (Marcus Stollsteimer)
09:48 AM Feature #13575 (Closed): [PATCH] speed up IO#close with many threads
r58812
normalperson (Eric Wong)
09:47 AM Feature #9632 (Closed): [PATCH 0/2] speedup IO#close with linked-list from ccan
Applied in changeset trunk|r58812.
----------
speed up IO#close with many threads
Today, it increases IO#close performance with many threads:
Execution time (sec)
name trunk after
vm_thread_close 4.276 3.018
Sp...
Anonymous
09:47 AM Revision 508091d9 (git): speed up IO#close with many threads
Today, it increases IO#close performance with many threads:
Execution time (sec)
name trunk after
vm_thread_close 4.276 3.018
Speedup ratio: compare with the result of `trunk' (greater is better)
name ...
Eric Wong
09:38 AM Bug #13492: Integer#prime? and Prime.each might produce false positives
@marcandre
I actually was working on the essentially same fix for the test case and about to commit; only I did want to fix the test for Math.sqrt first (which could be backported) and then switch to Integer.sqrt.
stomar (Marcus Stollsteimer)
12:39 AM Bug #13492 (Closed): Integer#prime? and Prime.each might produce false positives
Good catch.
I tweaked the timeout test by patching `Integer.sqrt`.
marcandre (Marc-Andre Lafortune)
09:23 AM Bug #13343 (Closed): Improve Hash#merge performance
Applied in changeset trunk|r58811.
----------
Improve Hash#merge performance
* hash.c (rb_hash_merge): use rb_hash_dup() instead of rb_obj_dup() to duplicate
Hash object. rb_hash_dup() is faster duplicating function for Hash object...
watson1978 (Shizuo Fujita)
09:23 AM Revision 9cd66d70 (git): Improve Hash#merge performance
* hash.c (rb_hash_merge): use rb_hash_dup() instead of rb_obj_dup() to duplicate
Hash object. rb_hash_dup() is faster duplicating function for Hash object
which got rid of Hash#initialize_dup method calling.
Hash#merge will ...
watson1978 (Shizuo Fujita)
08:34 AM Bug #13191: sample/pty/shl.rb がうまく動かない
ruby 2.4.2p131 (2017-05-10 revision 58637) [x86_64-linux] で試してみたところ、 r57530 も backport しないと C-z がきかないようです。
exit したときに shl.rb のプロンプトに戻ってこないので trunk で試してみたら同じ状態でした。
具体的には以下のように exit の後、操作が効かなくなるので C-z で止めて、再度 0 で選ぶと ThreadError になって sh...
znz (Kazuhiro NISHIYAMA)
05:14 AM Bug #13578: Another iseq_set_sequence: adjust bug
Thank you. While your test code does NOT repro under 2.4.1p111, it does under trunk. I've verified that this and my original code all compile fine under latest trunk. zenspider (Ryan Davis)
03:37 AM Bug #13578 (Closed): Another iseq_set_sequence: adjust bug
nobu (Nobuyoshi Nakada)
05:03 AM Feature #13585 (Rejected): select! and reject! do not returns the same array in specific situations
This can be surprising, but it's in line with many other destructive methods. It can be very useful when writing a loop that continues until there's no change anymore. Avoiding destructive methods leads to a better programming style anyw... duerst (Martin Dürst)
02:14 AM Feature #8661: Add option to print backtrace in reverse order (stack frames first and error last)
FYI it is intentional for this feature being automatically enabled right now, instead of some configuration like the OP requests.
The reason behind this is that stderr is expected to be passed to other processes (like some logging inf...
shyouhei (Shyouhei Urabe)
02:11 AM Revision 35c54a11 (git): compile.c: fix catch-table labels optimization
* compile.c (remove_unreachable_chunk): do not eliminate chunks
followed by labels in catch-table entries.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:36 AM Revision 68354c35 (git): lib/prime: Fix primality of some large integers [#13492].
* lib/prime.rb: Use accurate sqrt to insure all factors are tested.
Patch by Marcus Stollsteimer.
* test/test_prime.rb: Adapt test for timeout
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Marc-Andre Lafortune
12:27 AM Feature #13581: Syntax sugar for method reference
Why the version with symbol (`Math->:sqrt`) needs to be supported?
americodls (Americo Duarte)

05/19/2017

11:39 PM Revision 825a1e93 (git): Merge gemspec from ruby/fileutils.
* Replaced homepage option to source code location as github.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
hsbt (Hiroshi SHIBATA)
10:32 PM Feature #13585: select! and reject! do not returns the same array in specific situations
It's pretty clearly documented:
"If changes were made, it will return `self`, otherwise it returns `nil`."
phluid61 (Matthew Kerwin)
09:48 PM Feature #13585 (Rejected): select! and reject! do not returns the same array in specific situations
When all elements are returned on select!, the method returns nil.
~~~
(main) normal> [1,2,3].select! { |x| x == 0 }
=> []
(main) normal> [1,2,3].select! { |x| x == 1 }
=> [1]
(main) normal> [1,2,3].select! { |x| x == 1 || x == 2...
sobrinho (Gabriel Sobrinho)
09:34 PM Revision c018d464 (git): fix off-by-one in r58806
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58807 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Eric Wong
09:33 PM Revision b9f8fc51 (git): test/ruby/test_io.rb: new test for IO.select exception set
Ensure this rarely-used feature of IO.select continues
to work properly.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
07:58 PM Feature #13368: Improve performance of Array#sum with float elements
watson1978 (Shizuo Fujita) wrote:
> naruse (Yui NARUSE) wrote:
> ...
Though I reported to clang when it breaks build like https://bugs.llvm.org//show_bug.cgi?id=8319
Clang is considered still development at performance like other inli...
naruse (Yui NARUSE)
07:53 PM Bug #13584 (Third Party's Issue): Crash in logging (os_log) on MBP
.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/httpclient-2.7.1/lib/httpclient/session.rb:597: [BUG] Segmentation fault at 0x00000110ecca3a ainalem (Mikael Ainalem)
07:04 PM Bug #13542: MinGW trunk Builds - Summary of Issues
Built `ruby 2.5.0dev (2017-05-20 trunk 58803) [x64-mingw32]` and removed all encoding related settings, and also any patches affecting that. Test results [here](https://msp-greg.github.io/file.mingw_test-all.html).
* test-all has an ...
MSP-Greg (Greg L)
06:53 PM Feature #13552 (Closed): [PATCH 0/2] reimplement ConditionVariable, Queue, SizedQueue using ccan/list
Applied in changeset trunk|r58805.
----------
thread_sync.c: rewrite the rest using using ccan/list
The performance improvement increases as the number of waiters
increases, due to avoiding the O(n) behavior of rb_ary_delete on
the wai...
Anonymous
08:11 AM Feature #13552: [PATCH 0/2] reimplement ConditionVariable, Queue, SizedQueue using ccan/list
ko1@atdot.net wrote:
> > https://80x24.org/spew/20170519034419.GA29820@whir/raw
>
> Thank you. Adding `const` helps us to recognize.
>
> ```
> PACKED_STRUCT_UNALIGNED(struct rb_queue {
> struct list_head waitq;
> const...
normalperson (Eric Wong)
06:39 AM Feature #13552: [PATCH 0/2] reimplement ConditionVariable, Queue, SizedQueue using ccan/list

> https://80x24.org/spew/20170519034419.GA29820@whir/raw
Thank you. Adding `const` helps us to recognize.
```
PACKED_STRUCT_UNALIGNED(struct rb_queue {
struct list_head waitq;
const VALUE que;
int num_waiting;
})...
ko1 (Koichi Sasada)
03:51 AM Feature #13552: [PATCH 0/2] reimplement ConditionVariable, Queue, SizedQueue using ccan/list
ko1@atdot.net wrote:
> Sorry for late response.

No problem.

> Only one comment (maybe you passes all of tests, right?)

Of course :)

> New data type should be RUBY_TYPED_WB_PROTECTED (they need to use write barriers correctl...
normalperson (Eric Wong)
02:24 AM Feature #13552 (Assigned): [PATCH 0/2] reimplement ConditionVariable, Queue, SizedQueue using ccan/list
Sorry for late response.
Only one comment (maybe you passes all of tests, right?)
New data type should be RUBY_TYPED_WB_PROTECTED (they need to use write barriers correctly).
Do you want to try or should I modify?
Thanks,
Koic...
ko1 (Koichi Sasada)
06:53 PM Revision ea1ce47f (git): thread_sync.c: rewrite the rest using using ccan/list
The performance improvement increases as the number of waiters
increases, due to avoiding the O(n) behavior of rb_ary_delete on
the waiting thread. Uncontended queues and condition variables
performance is not altered significantly.
Fu...
Eric Wong
06:44 PM Bug #13390: MinGW build test-all SEGV, issue in test framework or error recovery?
As mentioned in [13542](https://bugs.ruby-lang.org/issues/13542), I have not had a failure with this for a while, even when using -j3, which is when the issue typically occurred.
Please close, as I cannot.
MSP-Greg (Greg L)
06:50 AM Bug #13390 (Assigned): MinGW build test-all SEGV, issue in test framework or error recovery?
naruse (Yui NARUSE)
06:34 PM Revision 44e48eca (git): thread_sync.c: rename mutex_waiter struct to sync_waiter
We will reuse this struct for ConditionVariable, Queue, and SizedQueue,
so it is no longer Mutex-specific.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58804 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
06:11 PM Feature #13583 (Closed): Adding `Hash#transform_keys` method
In 2.4, new useful method `Hash#transform_values` was added. I would like to propose also adding matching method `Hash#transform_keys`.
```ruby
{a: 1, b: 2}.transform_keys { |k| k.to_s }
=> {"a"=>1, "b"=>2}
```
What needs to be ...
graywolf (Gray Wolf)
04:19 PM Revision 79d99551 (git): Define classes for r58800
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e naruse (Yui NARUSE)
04:16 PM Bug #13336: Default Parameters don't work
This is intended. If a method accepts keyword arguments and if its last argument is a hash object, it is considered for keyword arguments. If you want to pass a hash as the first parameter, you need to explicitly pass a hash for keywor... mame (Yusuke Endoh)
06:47 AM Bug #13336: Default Parameters don't work
mame-san: what do you think about it?
ko1 (Koichi Sasada)
04:09 PM Feature #8631: Add a new method to ERB to allow assigning the local variables from a hash
Umm, I noticed that actually the length of "ERB.new(*).result(locals: {a: b})" is the same as "ERB.new("aaa").result_with_hash(a: b)". So the long name of 2 seems not a problem compared to 3.
Then, my final personal preference is Sek...
k0kubun (Takashi Kokubun)
03:56 PM Feature #8631: Add a new method to ERB to allow assigning the local variables from a hash
I found that my suggestion is a little hard to implement to avoid argument modification. It got a little ugly https://github.com/ruby/ruby/pull/1618/commits/ed1c1e520eec6cb96f1eae88bef2fa4ac54a3e6c.
Anyway, currently we have 3 possibl...
k0kubun (Takashi Kokubun)
04:06 PM Misc #12935 (Closed): Webrick: Update HTTP Status codes, share them
Applied in changeset trunk|r58801.
----------
Net::HTTP::STATUS_CODES is added as HTTP Status Code Repository [Misc #12935]
Note that 418 I'm a teapot doesn't exist because RFC 2324 and
RFC 7168 are not registered in IANA repository.
h...
naruse (Yui NARUSE)
04:06 PM Revision 83af1c6a (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
04:06 PM Revision bd73d374 (git): Net::HTTP::STATUS_CODES is added as HTTP Status Code Repository [Misc #12935]
Note that 418 I'm a teapot doesn't exist because RFC 2324 and
RFC 7168 are not registered in IANA repository.
https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5...
naruse (Yui NARUSE)
04:06 PM Revision cca77ee9 (git): Add more HTTP status classes
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e naruse (Yui NARUSE)
03:16 PM Bug #13582 (Closed): IMAPTest#test_append_fail always errors on Windows
r58792で追加されたテストですが、Windowsでは毎回Errorになります。
assertion自体は通過してるっぽいですが、テストメソッドから抜ける際に
@receiver_thread の中でErrno::ECONNRESETになる[1]か、もしくは、
最後のimap.logoutでErrno::ECONNRESETになるか[2]、どちらかが常に
発生しています。
rubyciを見ると、Debian 7.5 i686やUbuntu armv7l ...
usa (Usaku NAKAMURA)
03:13 PM Bug #13351 (Closed): net/http: Net::HTTP.start sets wrong default arg value
Applied in changeset trunk|r58798.
----------
Net::HTTP#start now pass :ENV to p_addr by default [Bug #13351]
To avoid this, pass nil explicitly.
naruse (Yui NARUSE)
03:13 PM Revision 61bbe32c (git): * 2017-05-20
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:13 PM Revision 67723c1e (git): Net::HTTP#start now pass :ENV to p_addr by default [Bug #13351]
To avoid this, pass nil explicitly.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58798 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
naruse (Yui NARUSE)
02:58 PM Revision 0183613b (git): compile.c: dump_disasm_list_with_cursor
* compile.c (dump_disasm_list_with_cursor): improve disassemble
list. show whole elemetns and mark the current element.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
02:43 PM Feature #13581: Syntax sugar for method reference
my current thinking is if that short form should do symbol support.
if `Math->sym` should be supported, than the normal variant need to be `Math->:sqrt`
i currently think if we also could abuse the call method.
so we could harne...
Hanmac (Hans Mackowiak)
02:16 PM Feature #13581: Syntax sugar for method reference
The **`->`** was just a suggestion... Could be another symbol or combination of symbols like **`Math->>sqrt`**, **`Math=>>sqrt`**, **`Math+>sqrt`**, **`Math$>sqrt`**, **`Math:>sqrt`**, etc
I just think could have another way to write it...
americodls (Americo Duarte)
01:37 PM Feature #13581: Syntax sugar for method reference
that might collide with `-> {}` a lambda syntax
so i think the chances are low that ruby gets something like that.
so ruby probably does think its "`Math(->sqrt)`" and thats a Syntax error.
Hanmac (Hans Mackowiak)
12:44 PM Feature #13581 (Closed): Syntax sugar for method reference
Some another programming languages (even Java, in version 8) has a cool way to refer a method as a reference.
I wrote some examples here: https://gist.github.com/americodls/20981b2864d166eee8d231904303f24b
I miss this thing in ruby...
americodls (Americo Duarte)
02:15 PM Bug #13545 (Closed): Ruby built by clang 4.0.0 parses Float literal wrongly
Applied in changeset trunk|r58796.
----------
Merge latest dtoa.c [Bug #13545]
Apply some part of http://www.netlib.org/fp/dtoa.c with my eyes...
naruse (Yui NARUSE)
02:14 PM Revision 7be47caa (git): Merge latest dtoa.c [Bug #13545]
Apply some part of http://www.netlib.org/fp/dtoa.c with my eyes...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
naruse (Yui NARUSE)
02:02 PM Misc #13525 (Closed): Expand HTTPS to lists.ruby-lang.org
Thank you for your confirming.
I enforced https on all of lists.ruby-lang.org.
If you faced some issue, Please reopen or submit issue ticket.
hsbt (Hiroshi SHIBATA)
12:44 PM Revision a4d51619 (git): Of course, opened file is not able to unlink on Windows
* test/test_tempfile.rb (test_create_with_block): close the tempfile before
unlink. fixed a failure on Windows introduced at r58791.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
U.Nakamura
11:21 AM Feature #13577: Digest.file accidentally receives File object but uses file path
as Sorah did there: https://github.com/aws/aws-sdk-ruby/pull/1516
i would suggest that Digest should try to read file objects directly giving to the #file method if able.
Hanmac (Hans Mackowiak)
09:03 AM Feature #13577 (Assigned): Digest.file accidentally receives File object but uses file path
Digest::SHA256.file()'s first argument is file path name but it accidentally accepts file object.
But for file objects created with O_TMPFILE to_path returns the directory of the temporary file and this File.open will fail.
```
cl...
naruse (Yui NARUSE)
11:15 AM Feature #13568: File#path for O_TMPFILE fds has no meaning
i think returing an unexisting path whould be way problematic if it isnt checked if it exist.
other functions might depend on it.
and trying to open `"/tmp/#165106976 (deleted)"` in (read)/writing mode might result in unexpected resul...
Hanmac (Hans Mackowiak)
09:17 AM Feature #13568 (Assigned): File#path for O_TMPFILE fds has no meaning
We discussed about this today in [DevelopersMeeting20170519Japan](https://bugs.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20170519Japan). Conclution in this meeting is:
- Return unexist path with informational message, like in...
sorah (Sorah Fukumori)
10:49 AM Bug #13580: bug
on second run
~~~
~/projects/ngrx-todolist   with_jsonapi_suite  clear; rspec spec/api/comments/create_spec.rb
1) comment#create valid
Failure/Error: let!(:task) { create :task, task: task }
SystemStackErro...
bjorn2 (Sergey Homa)
10:48 AM Bug #13580 (Closed): bug
https://pastebin.com/raw/NJ6QCggq
repository state when bug occurred https://github.com/BjornMelgaard/ngrx-todolist/tree/ecc321e149f45ddb512334a3af845941f922ff5e
bjorn2 (Sergey Homa)
09:36 AM Revision a6df192d (git): tempfile.rb: do not call File.identical? on closed stream
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58794 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
09:35 AM Bug #13492: Integer#prime? and Prime.each might produce false positives
The patch seems good. akr (Akira Tanaka)
09:34 AM Bug #13578: Another iseq_set_sequence: adjust bug
Further reduced via IRC:
~~~ ruby
def process_defn
if false
case 42
when s {} then
when 42 then
return
end
end
return
end
~~~
zenspider (Ryan Davis)
09:06 AM Bug #13578 (Closed): Another iseq_set_sequence: adjust bug
This seems to be related to #12613
~~~ ruby
#!/usr/bin/env ruby -w
def process_defn
if true then
# nothing needed here
else
if true then
case 42
when 42 then
return 42 # BOOM
when s { ...
zenspider (Ryan Davis)
09:29 AM Bug #13315: Single "%" at the end of `printf` format string appears in the result
When I wrote the original code, it was intentional, but without any specific reason.
It's OK for me to raise an error for this case.
Matz.
matz (Yukihiro Matsumoto)
09:29 AM Feature #13562 (Closed): Use a sized enumerator with #yield_self
shyouhei (Shyouhei Urabe)
09:25 AM Revision 940f32eb (git): * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
09:25 AM Revision 84c15963 (git): net/imap: Net::IMAP#append should not block when NO response is received
[ruby-dev:50129] [Bug#13579]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
shugo (Shugo Maeda)
09:22 AM Bug #13579 (Closed): Net::IMAP#append blocks when a NO response is received
Net::IMAP#append blocks when a NO response is received.
For example, if the destination mailbox doesn't exist, Net::IMAP#append blocks:
```ruby
require "net/imap"
imap = Net::IMAP.new("localhost")
imap.login("username", "passwor...
shugo (Shugo Maeda)
09:20 AM Revision 3c5344bf (git): tempfile.rb: remove in Tempfile.create
* lib/tempfile.rb (Tempfile.create): should not fail even if the
temporary file has been removed in the block, just ignore.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
09:17 AM Feature #13056: base option to Dir.glob
Looks good to me.
Matz.
matz (Yukihiro Matsumoto)
09:08 AM Feature #11302: Dir.entries and Dir.foreach without [".", ".."]
Sounds good.
Matz.
matz (Yukihiro Matsumoto)
09:06 AM Feature #11302: Dir.entries and Dir.foreach without [".", ".."]
+1 for Dir.children shyouhei (Shyouhei Urabe)
09:01 AM Feature #11302: Dir.entries and Dir.foreach without [".", ".."]
There is `Pathname#children` and `Pathname#each_child`.
How about `Dir.children` and `Dir.each_child` ?
akr (Akira Tanaka)
09:01 AM Feature #13333: block to yield
I think it would make generator happy. nobu (Nobuyoshi Nakada)
09:00 AM Feature #13309 (Rejected): Locale paramter for Integer(), Float(), Rational()
It should be done by gem.
This will depends Unicode CLDR, and it's beyond Ruby itself's scope.
naruse (Yui NARUSE)
08:57 AM Feature #13576 (Open): File#to_path shall be deleted
[Feature #13568] sheds light on situations where a File might not have its corresponding path. I understand that this is a nature of a file in general, that it might or might not have such thing. I don't argue that fact.
Problem is ...
shyouhei (Shyouhei Urabe)
08:53 AM Feature #13260 (Rejected): Kernel#Boolean
I reject the proposal.
It may be useful for some application, I admit, but it is not the language matter.
Matz.
matz (Yukihiro Matsumoto)
08:19 AM Revision 94ddec6f (git): add specs for Unicode-wide case conversions introduced in Ruby 2.4
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e duerst (Martin Dürst)
08:14 AM Feature #13518 (Feedback): Indented multiline comments
How about that matching indentation of `=begin` and `=end`?
```ruby
=begin
in a comment
=end
still in a comment
=end
# end of the comment
```
nobu (Nobuyoshi Nakada)
08:08 AM Bug #13548 (Feedback): miniruby SEGV while building with non-default CFLAGS (caused by __builtin_setjmp)
vp (Vladimir Pavlov) wrote:
> Particularly, you assign the result of setjmp() call to a variable.
It is not assigned since r43522.
Maybe newer `__builtin_setjmp` has changed the format of saved registers.
nobu (Nobuyoshi Nakada)
08:08 AM Feature #13575 (Closed): [PATCH] speed up IO#close with many threads
Today, it increases IO#close performance with many threads:
Execution time (sec)
name trunk after
vm_thread_close 4.276 3.018
Speedup ratio: compare with the result of `trunk' (greater is better)
name ...
normalperson (Eric Wong)
08:05 AM Revision 0cbe2cfd (git): improve examples, fix one improbably should_not value
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e duerst (Martin Dürst)
07:54 AM Revision 37da9485 (git): specify unsigned (fix r58784).
* method.h (rb_method_definition_t#type): specify unsigned explicitly.
Some compilers (includes VC) returns negative value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58788 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ko1 (Koichi Sasada)
07:42 AM Bug #13429: Net::SMTP has no read timeout when connexion over TLS
keysen (Jérémy Carlier) wrote:
> When connecting using TLS to an unresponsive SMTP server, Net::SMTP can hang until 10 minutes.
In Ruby 2.4, open_timeout affects TLS handshake.
I'm not sure whether it should be backported to 2.3.
...
shugo (Shugo Maeda)
07:34 AM Bug #13249: Access modifiers don't have an effect inside class methods in Ruby >= 2.3
I will insert warning.
I will not change the current behavior.
ko1 (Koichi Sasada)
07:34 AM Revision 6c9027e0 (git): fix syntax error
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
07:31 AM Feature #13483: TracePoint#enable with block for thread-local trace
Matz approved it. ko1 (Koichi Sasada)
07:26 AM Bug #13413 (Assigned): --with-static-linked-ext doesn't install extension files on `make install`
ko1 (Koichi Sasada)
07:25 AM Bug #13101 (Feedback): Date#rfc2822 and Time#rfc2822 don't return the same format
I think there is no problem with time.rb.
I don't want to change the day format in time.rb
because the current behavior is valid according to RFC 2822 and
needless behavior change can cause incompatibility.
Also, time.rb's -0000 ...
akr (Akira Tanaka)
07:24 AM Bug #13312 (Assigned): String#casecmp raises TypeError instead of returning nil
@stomar
It should return nil same as other comparison methods. Can you handle this?
hsbt (Hiroshi SHIBATA)
07:12 AM Feature #8661 (Closed): Add option to print backtrace in reverse order (stack frames first and error last)
Applied in changeset ruby-trunk:trunk|r58786.
----------
eval_error.c: enrich backtrace
* eval_error.c (print_backtrace): add frame number when printing
in reverse order. [Feature #8661]
nobu (Nobuyoshi Nakada)
06:15 AM Feature #8661 (Assigned): Add option to print backtrace in reverse order (stack frames first and error last)
naruse (Yui NARUSE)
06:14 AM Feature #8661 (Closed): Add option to print backtrace in reverse order (stack frames first and error last)
Applied in changeset ruby-trunk:trunk|r58785.
----------
Add NEWS about [Feature #8661]
naruse (Yui NARUSE)
06:09 AM Feature #8661: Add option to print backtrace in reverse order (stack frames first and error last)
We expect some people may object this.
Therefore we're gathering feedback now (so thank you for your feedback).
To gather feedback wider, we'll give final decision after preview 1, including rspec and Rails will follow this change or...
naruse (Yui NARUSE)
07:12 AM Revision 87023a1d (git): eval_error.c: enrich backtrace
* eval_error.c (print_backtrace): add frame number when printing
in reverse order. [Feature #8661]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:12 AM Bug #13373 (Feedback): FileUtils methods for copy, move and remove directories is not providing a decent error trace for letting know if it was success or fail
Could you tell us more details? Your sample code and acquired errors (or output).
ko1 (Koichi Sasada)
06:54 AM Bug #13324 (Closed): IRB Segmentation Fault from eval infinite loop
Fundamentally, we can't control machine stack overflow.
We will improve the situation (but can't solve completely).
ko1 (Koichi Sasada)
06:52 AM Bug #13337: Eval and Later Defined Local Variables
This is specification.
(1) parse `example` method and define `foo`.
(2) In `eval` method, compile given string (`"foo"`) and defined `foo` was used (without any problem).
So it is documentation issue.
Can anyone write about it?
ko1 (Koichi Sasada)
06:42 AM Bug #13330 (Assigned): Array.include? is slow for symbols
Thank you. I'll commit it. ko1 (Koichi Sasada)
06:26 AM Bug #13320 (Feedback): rescue blocks get an entry in backtrace locations
```
def foo
puts caller(0) # (1)
end
def bar
p 0
begin # (3)
p 1
raise
p 2
rescue
foo # (2)
end
end
bar # (4)
#=>
0
1
(1) t.rb:2:in `foo'
(2) t.rb:12:in `rescue in bar'
(3) t.rb:7:in `b...
ko1 (Koichi Sasada)
06:14 AM Revision 5b58d8e6 (git): Add NEWS about [Feature #8661]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e naruse (Yui NARUSE)
06:07 AM Bug #13196: Improve keyword argument errors when non-keyword arguments given
Agreed with better message description.
Matz.
matz (Yukihiro Matsumoto)
06:00 AM Feature #13494 (Closed): [PATCH] pack rb_method_definition_t struct
Applied in changeset trunk|r58784.
----------
method.h: pack rb_method_definition_t struct
We only have 12 method types, so 4 bits is enough for
rb_method_type_t.
Size reductions:
- x86-64 48 => 40 bytes
- x86 28 => 24 byt...
Anonymous
02:33 AM Feature #13494: [PATCH] pack rb_method_definition_t struct
Sorry for late response.
No problem.
Thanks,
Koichi
ko1 (Koichi Sasada)
06:00 AM Revision f82a9304 (git): method.h: pack rb_method_definition_t struct
We only have 12 method types, so 4 bits is enough for
rb_method_type_t.
Size reductions:
- x86-64 48 => 40 bytes
- x86 28 => 24 bytes
* method.h (enum method_optimized_type): split out for CPP
(struct rb_method_definition...
Eric Wong
03:12 AM Feature #12463 (Rejected): ruby lacks plus-plus
I reject this ticket with the reason #5. ko1 (Koichi Sasada)
03:08 AM Bug #12670: Segmentation fault on `Magick::Image#get_pixels` on ruby since ruby-2.2
Sorry for late response.
Unfortunately I have no enough disk to run docker. Try later when I get new machine.
ko1 (Koichi Sasada)
03:06 AM Feature #13133 (Rejected): TracePoint: Add event type for constant access
ko1 (Koichi Sasada)
03:05 AM Bug #13188 (Closed): Reinitialize Ruby VM.
I close this ticket because we need long-time effort.
> Also, can we introducing it in 2.5?
> ...
If we can.
ko1 (Koichi Sasada)
02:47 AM Feature #13265 (Rejected): TracePoint for basic operation redefinition
Sorry for late response.
Basically, TracePoint should be implementation independent.
(so that `:c_call, :c_return` are not good events)
The list of "basic operation" is highly implementation dependent information.
ko1 (Koichi Sasada)
02:42 AM Bug #13438: Fix heap overflow due to configure.in not being updated for HEAP_* -> HEAP_PAGE_* variable renaming
Sorry for late response.
> we may want to drop OpenBSD <5.2 support
On https://bugs.ruby-lang.org/projects/ruby-trunk/wiki/SupportedPlatforms
You can decide it. I don't have any idea we should or we shouldn't. Could you decide ...
ko1 (Koichi Sasada)
01:28 AM Bug #13573 (Closed): Compilation on Mac OS X 10.5.8 fails because of missing _fgetattrlist
Backport r57248. nobu (Nobuyoshi Nakada)
12:40 AM Bug #13573: Compilation on Mac OS X 10.5.8 fails because of missing _fgetattrlist
I think Ruby 2.4.x on Mac 10.5.x is not a supported combination. The proposed patch _seems_ fine though. I no longer own a PPC Mac so cannot test it. shyouhei (Shyouhei Urabe)
12:41 AM Feature #9970: Add `Hash#map_keys` and `Hash#map_values`
graywolf (Gray Wolf) wrote:
> You said
> ...
Thank you, please file a separate issue that requests this method.
shyouhei (Shyouhei Urabe)
12:25 AM Feature #13574: Method redefinition warning
As there's no other way to silence the redefinition warning (apart from removing the method first, which isn't atomic), the fact aliases silence it is very useful.
As a special case, aliasing it back to itself is particularly helpful ...
matthewd (Matthew Draper)
12:07 AM Feature #13574 (Open): Method redefinition warning
Hi,
If I redefine a method like this, I get a warning:
~~~ruby
class Foo
def bar
end
end
class Foo
def bar
end
end
~~~
If I alias the method to a different name, I don't get a warning:
~~~ruby
class Foo
...
tenderlovemaking (Aaron Patterson)
 

Also available in: Atom