Activity
From 05/23/2017 to 05/29/2017
05/29/2017
-
06:56 PM Feature #13378: Eliminate 4 of 8 syscalls when requiring file by absolute path
- Thank you for the feedback! I've attached an updated patch to address the issues.
As for testing it, I haven't been able to think of a reasonable method to verify the behaviour without using dtrace/strace, since the only observable ef... -
06:46 PM Feature #13604: Exposing alternative interface of readline
- I think I managed to simplify it quite a bit, if you would take a look :)
Also I'm thinking about exposing the add_hist setting, since it's saved on mReadline anyway, it would allow user to dynamicly enable/disable auto-adding of hist... - 05:56 PM Revision afa0e3c9 (git): * properties.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
05:56 PM Revision f35c3a54 (git): Clean up a bit the Process.setpriority specs
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
05:56 PM Revision a578c375 (git): Enable Process.setpriority for a single process on more platforms.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58961 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
04:39 PM Feature #13570: Using mkmf for ruby/spec C API specs
- Benoit,
Sorry, never set this to 'watch'. I'll try a build with MinGW.
FWIW, I just got one of the spec c files to compile with only the following --
```ruby
require 'mkmf'
Dir.chdir('src/build-x86_64/spec/rubyspec/optional/c... -
03:33 PM Feature #13570 (Assigned): Using mkmf for ruby/spec C API specs
-
03:33 PM Feature #13570: Using mkmf for ruby/spec C API specs
- I attach here the current version of the spec_helper.rb doing the compilation of extensions.
It seems to now work correctly for out-of-source builds,
and with an extra hack uses the right ruby in the Makefile
(RbConfig.ruby in ./rbcon... -
04:10 PM Bug #13609: CI error on travis at spec for Process.setpriority
- Thanks for the fix nobu!
-
03:34 PM Bug #13609 (Closed): CI error on travis at spec for Process.setpriority
- Applied in changeset trunk|r58959.
----------
Run in separate process/pgrp [Bug #13609] -
02:56 PM Bug #13609: CI error on travis at spec for Process.setpriority
- It occurs sporadically in these days.
It seems a race condition between `getpriority` and `setpriority` in a process group.
```ruby
# bug-13609.rb
Process.setpgrp
pr = Process.getpriority(Process::PRIO_PGRP, 0)
fork {Process.ge... -
09:39 AM Bug #13609 (Closed): CI error on travis at spec for Process.setpriority
- Trying to make a commit (r58954) for issue #13590, I got a CI error at https://travis-ci.org/ruby/ruby/builds/237086017. Reverting at r58955, the problem persisted at https://travis-ci.org/ruby/ruby/builds/237090520.
The error looked ... - 03:34 PM Revision ab86387a (git): * 2017-05-30
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58960 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:34 PM Revision eee4dee0 (git): Run in separate process/pgrp [Bug #13609]
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
02:50 PM Feature #13606: Enumerator equality and comparison
- duerst (Martin Dürst) wrote:
> Actually, I wonder if there's any difference between what the OP wants and
> ...
The above allocates Arrays, Enumerator equality would not. -
07:13 AM Feature #13606: Enumerator equality and comparison
- MSP-Greg (Greg L) wrote:
> Could be helpful, but some `Enumerators` are not ordered.
All `Enumerators` are ordered. The order is defined by the `each` method, or alternatively by the `to_a` method.
Actually, I wonder if there's an... -
02:50 PM Bug #13537: ruby crash in rb_gc_mark
- I can confirm having the same issue. It's intermediate but reproducible, and affects both 2.4.0 and 2.4.1 versions.
The setup is simple:
- OS X (macOS 10.12.5 with latest patches)
- XCode command line tools (also latest)
- rbenv ... -
01:36 PM Bug #13611 (Rejected): MinGW spec/rubyspec/optional/capi compile/link issues
- For the last two weeks, I have been successfully running `make test-spec` in [MinGW builds](https://msp-greg.github.io/file.mingw_test-all.html#test-spec-Failure-Error-Summary). Over this past weekend, there were several changes to the ...
-
11:19 AM Revision 01ebc04f (git): Simplify, avoid extra exceptions and add test for concurrent mspec mkdir_p
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58958 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
10:53 AM Revision fc7241ff (git): rubyspec: Fix method redefinition warning
- ruby/spec/rubyspec/library/erb/run_spec.rb:63: warning: method redefined; discarding old main
ruby/spec/rubyspec/library/erb/result_spec.rb:53: warning: previous definition of main was here
ruby/spec/rubyspec/library/erb/run_spec.rb:76: ... -
10:22 AM Revision 26e32b7d (git): test/erb/test_erb.rb: Fix unused variable warning
- ruby/test/erb/test_erb.rb:575: warning: assigned but unused variable - foo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
10:16 AM Bug #13597: Does read_nonblock call remalloc for the buffer if does it just set the size attribute
- Hi Eric
Thank you so much for your response - it provided a lot of useful information I didn't know otherwise. I've pointed the user who opened the pull request to your response so he has the chance to update his code based on the new... -
09:57 AM Feature #13610 (Assigned): IPAddr doesn't provide helpful methods to get the subnet or IP address
- I've implemented it myself using some "wild" code around the .inspect or default return from an IPAddr object from ipadr.rb
It would be nice to, once having loaded an IP range, to then be able to get its subnet, its IP and its CIDR.
... -
08:59 AM Revision e07bff3c (git): revert r58954 temporarily
- Revert change to maximum of 4 bytes for UTF-8 characters at r58954 temporarily.
This failed spec at https://travis-ci.org/ruby/ruby/builds/237086017, but it
is totally unclear why.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58955... -
08:41 AM Revision a03690ae (git): Change max byte length of UTF-8 to 4 bytes
- In enc/utf_8.c, change maximum byte length of UTF-8 to 4 bytes (from 6)
to conform to definition of UTF-8. This closes issue #13590.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58954 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
08:13 AM Bug #13589: unmatched opening backtick / closing quote in NoMethodError: undefined method `name' for {}:Hash
- shyouhei (Shyouhei Urabe) wrote:
> domaio (Dorian M) wrote:
> ...
Well, to be precise, English quotations use ‘…’ and “…” in high-quality typography. The use of \`…' is a fallback convention on some systems. See https://en.wikipedia.org/... -
07:51 AM Feature #13588: Add Encoding#min_char_size, #max_char_size, #minmax_char_size
- haines (Andrew Haines) wrote:
> phluid61 (Matthew Kerwin) wrote:
> ...
Not true. There are quite a few East Asian encodings with max length of 2, 3, or 4. E.g. Shift_JIS, EUC_JP, GB18030,... But it's still true that the maximum size is... -
07:03 AM Revision 83ddb7c1 (git): fix up r58952
- * spec/mspec/lib/mspec/helpers/fs.rb (Object#mkdir_p): rescue
File.stat when the target does not exist.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:53 AM Revision e0b0b923 (git): fix race condition
- * spec/mspec/lib/mspec/helpers/fs.rb (Object#mkdir_p): fix race
condition when multi_exec.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58952 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:39 AM Revision 5689f7c7 (git): tool/runruby.rb: exec ruby-runner
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:39 AM Revision d4408a3d (git): ruby-runner.c: replace argv[0]
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:25 AM Bug #9993: x86_64 linux + i686 os = 32bit ruby, but `RUBY_PLATFORM=x86_64`
- I had similar issue
----
Environment info:
OS: FreeBSD 10.3 STABLE
rvm:
version: "rvm 1.29.1 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io/]"
updated: "2 months 9 days 18 hours 28 minutes 46 seconds... -
05:51 AM Feature #13608: Add TracePoint#thread
- use case?
-
05:21 AM Feature #13608 (Rejected): Add TracePoint#thread
- rb_trace_arg_t, TracePoint's internal struct, already stores the thread which the event happened at,
but there's not API to fetch it.
How about adding an API to get the info.
```diff
diff --git a/test/ruby/test_settracefunc.rb b/te... -
05:19 AM Revision f8fbb8bc (git): default.mspec: remove useless flags
- * spec/default.mspec: removed -I options for useless or non-
existent paths from flags. there is no library scripts and .ext
directory in the source directory.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58949 b2dd03c8-39d4-4... -
02:02 AM Bug #13605: GC bug calling `ObjectSpace.each_object`
- What is `to_ignore` and `candidates` in your script? Is it possible for you to show us a step to reproduce your situation?
-
02:00 AM Bug #13607: .rvm/rubies/ruby-2.4.0/lib/ruby/2.4.0/forwardable.rb:228: [BUG] Segmentation fault at 0x00000000000038
- I can't point a finger on the exact location where the script fails but it seems to be a memory corruption.
05/28/2017
-
07:48 PM Feature #13606: Enumerator equality and comparison
- MSP-Greg (Greg L) wrote:
> Could be helpful, but some `Enumerators` are not ordered. So how would `==` work for 'hash like' objects (assuming they're not based on a hash, which has an `==` operator)?
> ...
Equal objects should produce... -
06:21 PM Feature #13606: Enumerator equality and comparison
- Could be helpful, but some `Enumerators` are not ordered. So how would `==` work for 'hash like' objects (assuming they're not based on a hash, which has an `==` operator)?
I suppose it could be considered 'restricted' to ordered col... -
04:55 PM Feature #13606: Enumerator equality and comparison
- duerst (Martin Dürst) wrote:
> Sounds interesting in theory, but do you have actual use cases? And do you think that the potential inefficiency is worth it?
The use cases are the same as for comparing `Array`s.
The potential ineffic... -
04:50 PM Feature #13606: Enumerator equality and comparison
- shevegen (Robert A. Heiler) wrote:
> [...] but they are not entirely the same are they? Different
> ...
Most objects in Ruby are compared semantically if the object IDs are different, including `Array` and `Hash`.
> What would the... -
02:01 PM Feature #13606: Enumerator equality and comparison
- I am not even sure that I understand the proposal.
If I understood it correctly then two enumerable objects (did I get this part right)
should return true if they behave/return the same? I think I can see it being
related to duck t... -
08:29 AM Feature #13606 (Feedback): Enumerator equality and comparison
- Sounds interesting in theory, but do you have actual use cases? And do you think that the potential inefficiency is worth it?
-
06:47 PM Feature #13604: Exposing alternative interface of readline
- It should be possible. The bool is easy (I just set it on `Readline` module just like I do the handler block and I try to find a way to pass `char *` inside VALUE. I'll find a way and post updated patch.
I don't really see a benefit t... -
04:41 PM Revision abbfc048 (git): suppress warning: ambiguous first argument; put parentheses or a space even after `-' operator
- Introduced at r58905
http://rubyci.s3.amazonaws.com/ubuntu/ruby-trunk/log/20170526T153003Z.diff.html.gz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58948 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
04:40 PM Revision dd014800 (git): Revert "Update to ruby/spec@2a047c8"
- This reverts commit 2531a1013b56a030f99ea4c2ee36e66dbf38a855.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e - 04:29 PM Revision 5fcbdd3d (git): * properties.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 04:29 PM Revision 8847d0b6 (git): * 2017-05-29
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
04:29 PM Revision 0f9fa1dd (git): Revert r58939 and r58942
- This reverts following commits because it breaks mswinci
* Update to ruby/spec@2a047c8
* Update to ruby/spec@ca32ae2
see also the result:
http://rubyci.org/logs/mswinci.japaneast.cloudapp.azure.com/vc12-x64/ruby-trunk/log/20170528T14001... -
02:53 PM Bug #13607 (Closed): .rvm/rubies/ruby-2.4.0/lib/ruby/2.4.0/forwardable.rb:228: [BUG] Segmentation fault at 0x00000000000038
- I got the follow output when create a simple relationship in Rails, here the code snippet (NOTE: 15 times).
It appears in a randomic way!
```ruby
@t = 15
@t.times do
FactoryGirl.create :entity_user
end
@users = User.al... -
02:17 PM Revision 1245a4a4 (git): lldb_cruby.py: constants from the target
- * misc/lldb_cruby.py (lldb_init): get constants from
ruby_dummy_gdb_enums in the target.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
12:02 PM Revision 75adc77e (git): Update to ruby/spec@ca32ae2
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
11:38 AM Feature #13570 (Closed): Using mkmf for ruby/spec C API specs
- I made the change in https://github.com/ruby/spec/commit/84ea66ef61424ef87d03658cbc140d4b1af17c22
which was imported in r58939. - 11:30 AM Revision 135ed12e (git): * properties.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
11:30 AM Revision 4c1403c3 (git): Add tool to pull latest mspec/spec when commits have been synchronized
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
11:30 AM Revision 2531a101 (git): Update to ruby/spec@2a047c8
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
09:49 AM Revision ab55cd9f (git): ruby.c: file in load_file argument
- * ruby.c (load_file): move opened file to an argument, to reduce
open/close calls in the near future.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
09:49 AM Revision 3ade78ff (git): ruby.c: shrink ruby_cmdline_options_t
- * ruby.c (ruby_cmdline_options_t): reordered members and turned
simple flags into bit fields to reduce the size (136->104 on
LP64).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e - 05:39 AM Revision a028cfc5 (git): test/ruby/test_io.rb: adjust CPU usage check to 10%
- I miscalculated for r58934, since we sleep 100ms, and
the worst possible case is 100 Hz in the kernel meaning
we only have 10ms resolution. So, we need to increase
our CPU percentage to >= 10% for this.
This should be more than enough ... -
01:48 AM Feature #11952 (Closed): Use getrusage for Process.times if available
- Applied in changeset trunk|r58935.
----------
process.c: Use getrusage(2) in Process.times
if getrusage(2) is available, to improve precision of Process.times and
its user like lib/benchmark.rb.
On macOS, since getrusage(2) ha... -
01:48 AM Revision 253232c0 (git): process.c: Use getrusage(2) in Process.times
- if getrusage(2) is available, to improve precision of Process.times and
its user like lib/benchmark.rb.
On macOS, since getrusage(2) has better precision than times(3),
they are much improved like:
* Before
Process.times
=> #<struct P... - 01:43 AM Revision 109ccfdb (git): tests: increase CPU percentage threshold for assert_cpu_usage_low
- When sleeping for the tick rate of 100ms (defined in
thread_pthread.c) as we do in test/ruby/test_io.rb
(test_copy_stream_no_busy_wait), it may not be possible to
measure with <= 10ms resolution on 100HZ systems (CONFIG_HZ in
the Linux k...
05/27/2017
-
11:22 PM Feature #13606 (Rejected): Enumerator equality and comparison
- In Ruby, most objects are compared by value. What do you think about `Enumerator`s following the same pattern? I think this would greatly increase the expressiveness of Ruby.
Proposal:
Two `Enumerator`s should be considered equal (... -
10:22 PM Feature #11952: Use getrusage for Process.times if available
- It seems fine.
Actually, times(3) is implemented using getrusage(2) on NetBSD.
http://cvsweb.netbsd.org/cgi-bin/cvsweb.cgi/src/lib/libc/gen/times.c?rev=1.15&content-type=text/x-cvsweb-markup
Also, times(2) seems to obtain same res... - 09:55 PM Revision ddf2a167 (git): * properties.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 09:55 PM Revision 33319b88 (git): * remove trailing spaces.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
09:55 PM Revision ead40959 (git): Update to ruby/spec@2795010
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
09:54 PM Revision 24db4287 (git): Update to ruby/mspec@6c95759
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
09:05 PM Feature #13604: Exposing alternative interface of readline
- All improvements to Readline are great - I can't have commandline user interfaces in ruby (on linux) without Readline these days. :)
The only thing that I think isn't too great is the use of global variables. Is it possible to get rid... -
10:01 AM Feature #13604 (Closed): Exposing alternative interface of readline
- GNU Readline has multiple modes of operation. At the moment, the readline extension only supports typical, `Readline.readline` mode. However, there is also alternative callback-based interface which is also useful.
```ruby
require_re... -
08:09 PM Bug #13605 (Closed): GC bug calling `ObjectSpace.each_object`
- This code made Ruby bail out with the message "[BUG] rb_gc_mark(): 0x000000040dc740 is T_NONE":
~~~ ruby
ObjectSpace.each_object(Module){|m|
next if (to_ignore.include?(m) rescue true)
if m.respond_to?(:instance_methods)
... -
06:39 PM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
- Usaku,
You are correct. Linked from the page you mentioned is [_tzset](https://msdn.microsoft.com/en-us/library/90s5c885.aspx). This (sort of) doc's what ENV['TZ'] can be set to.
From my testing, the strings can be anything. I c... -
05:25 PM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
- Interesting, an offset of 3600 means 1 hour so UTC+1, like current TZ=Europe/London summer time.
Does anyone know what could go wrong?
I am thinking part of it might be that C functions related to time
might behave slightly differ... -
03:46 PM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
- Sorry for the delay, I'm at -0500 (Central US), and I seem to have lost a video card this morning.
Anyway, error is identical to [mingw mspec](https://msp-greg.github.io/file.mingw_test-all.html#mspec-1-failure). Below is the full ru... -
10:26 AM Bug #13591 (Feedback): spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
- Once I reproduced the behavior, but after some maintenance of my mingw environment, it doesn't appear.
Anyway at this time, it's considered as a bug of ruby or spec or mingw or something.
Just removing spec sounds not appropriate. -
09:33 AM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
- FWIW the patch looks OK to me, I think we should merge it.
This might be a difference between the different configuration of Windows builds.
Testing for invalid timezones is rather difficult,
some platforms behave differently, and t... -
05:53 AM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
- Nobu,
I'll have a look at your code, see if I can determine whats going on. Believe me, I did a couple of builds, and it kept failing...
Thanks. -
05:18 AM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
- I haven't seen such failure on AppVeyor yet.
https://ci.appveyor.com/project/nobu/ruby/build/1.0.119 -
02:46 AM Bug #13591: spec/rubyspec/core/time/zone_spec - Windows does not support ENV['TZ']
- Having now built with [mswin-build](https://github.com/unak/mswin-build), this test still fails. Also, I'm seeing some of the same issues in test-all (test-enum callcc segv, etc).
Please try and run the spec tests (or this specific t... - 05:04 PM Revision d97c171b (git): * properties.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 05:04 PM Revision 67ffb0dc (git): * 2017-05-28
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
05:04 PM Revision 4d177a1f (git): Initial commit of LLDB port of debug utility
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:29 PM Feature #13560: Module#attr_ methods return reasonable values
- > What would perhaps be nice would be to have a way to initialize these to nil, upon
attr_* definition
Why nice ? This is definitely a purpose of `initialize` method. Belongs to object initialization, not class definition. In additio... -
03:17 PM Bug #13603: SecureRandom.uuid is not valid v4 and/or RFC 4122
- shyouhei (Shyouhei Urabe) wrote:
> Is this a matter of our test code, or the actual output of SecureRandom.uuid does not conform the RFC?
test-case from repo (https://github.com/ruby/ruby/blob/ruby_2_4/test/test_securerandom.rb#L174)... -
01:31 AM Bug #13603: SecureRandom.uuid is not valid v4 and/or RFC 4122
- Is this a matter of our test code, or the actual output of SecureRandom.uuid does not conform the RFC?
-
01:54 PM Revision 1d9030a1 (git): bootstraptest/test_insns.rb: Fix typo
- on test message. "torexp" insn does not exist.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
09:49 AM Feature #13483: TracePoint#enable with block for thread-local trace
- ko1 (Koichi Sasada) wrote:
> However, this proposal breaks this expectation.
Could you explain it?
Is it because trace.enable { code } does not behave like
begin; trace.enable; code; ensure; trace.disable; end ?
If so, I think... - 08:26 AM Revision b3d126d5 (git): rb_wait_for_single_fd: do not OOM or segfault with invalid FD on select()
- Instead, match the poll() implementation used on Linux for now;
as the Linux poll(2) manpage describes using negative FD to
easily ignore an FD in a larger FD set while (sleeping the given
timeout). I'm not entirely sure if matching pol... - 07:23 AM Revision 71dca4b6 (git): test for IO.copy_stream CPU usage (r58534)
- I'm likely to make similar mistakes in the future when working
on Fiber auto-scheduling. Start adding assertions for existing
code, first.
* test/ruby/test_io.rb (test_copy_stream_no_busy_wait): added
* test/lib/test/unit/assertions.rb... - 07:18 AM Revision 85fe3def (git): Revert "common: "test-all" depends on "exts" target"
- This reverts r58919.
Apparently skipping exts is intentional since r58759
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
05:41 AM Bug #13503 (Closed): Improve performance of some Time & Rational methods
- Applied in changeset trunk|r58922.
----------
Improve performance of some Time & Rational methods
rational.c (i_gcd): replace GCD algorithm from Euclidean algorithm to Stein
algorithm (https://en.wikipedia.org/wiki/Binary_GCD_algor... -
05:41 AM Bug #13519 (Closed): Improve performance of some Time methods
- Applied in changeset trunk|r58921.
----------
Improve performance of some Time methods
internal.h : add rb_numeric_quo() as internal API.
rational.c : rename numeric_quo() to rb_numeric_quo() as internal API.
time.c (quov): optimize by... -
05:41 AM Revision b0accd9b (git): Improve performance of some Time & Rational methods
- rational.c (i_gcd): replace GCD algorithm from Euclidean algorithm to Stein
algorithm (https://en.wikipedia.org/wiki/Binary_GCD_algorithm).
Some Time methods will call internal quov() function and it calls
Rational#quo -> f_... -
05:41 AM Revision 6fcb76ed (git): Improve performance of some Time methods
- internal.h : add rb_numeric_quo() as internal API.
rational.c : rename numeric_quo() to rb_numeric_quo() as internal API.
time.c (quov): optimize by invoking rb_numeric_quo() to retrieve a value of
Numeric#quo instead of method dispa... -
05:18 AM Revision e7ff8622 (git): .travis.yml: exts is not needed for tests here
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 04:35 AM Revision f9afb444 (git): common: "test-all" depends on "exts" target
- This allows me to test changes to ext/ more easily by only typing:
make test-all TESTS=/path/to/ext/test_foo.rb
I spent a few minutes wondering what was wrong before I realized
changes to exts were not taking effect.
git-svn-id: svn... -
04:12 AM Feature #13602: Optimize instance variable access if $VERBOSE is not true when compiling
- It doesn't look nice to assume `$VERBOSE` doesn't change.
And seems that benchmark includes allocation and initialization. -
03:43 AM Revision 8e81b3c7 (git): mspec/commands/mspec.rb: formatter for multi_exec
- * spec/mspec/lib/mspec/commands/mspec.rb (MSpecMain#multi_exec):
as multi_exec children must run with yaml formatter, append the
option for it after other options to override another formatter
option with a warning if it is given.
... -
03:14 AM Revision 944c8f40 (git): .travis.yml: get number of processors at runtime
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:06 AM Revision 2e75043a (git): erb.rb: Use str_uplus instead of rb_str_dup
- to skip unnecessary string allocation on frozen_string_literal: false.
str_uplus can bypass calling rb_str_dup when OBJ_FROZEN is true.
* Before
erb_render 1.064
* Afete
erb_render 0.909
git-svn-id: svn+ssh://ci.ruby-lang.... -
02:47 AM Revision 697c82b6 (git): benchmark: Rename to bm_erb_render.rb
- from bm_app_erb_render.rb.
I'm told from ko1 that bm_app_* is namespace for Ruby applications,
not for ERB and we should use bm_erb_* for ERB benchmark instead.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58915 b2dd03c8-39d4-4d8f... -
02:01 AM Revision b3a9fd0d (git): apply timeout scale
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
01:40 AM Feature #13601 (Closed): Remove yield_self from Ruby 2.5 (already implemented)
- Closing as per request.
-
12:23 AM Feature #13601: Remove yield_self from Ruby 2.5 (already implemented)
- You both have provided better examples as to the differences. Also finding out `yield_self` returns an Enumerator was a new one to me. I guess this feature request can be closed.
-
01:36 AM Feature #13600: yield_self should be chainable/composable
- I'm not sure if this should be an extension to yield_self or a separate new method.
-
01:26 AM Bug #13599 (Closed): Float#ceil(n) doesn't work for small floats
- Applied in changeset trunk|r58913.
----------
numeric.c: fix for small number
* numeric.c (flo_floor, flo_ceil): should not return zero for small
number. [ruby-core:81394] [Bug #13599] -
01:26 AM Revision 9f5a468c (git): numeric.c: fix for small number
- * numeric.c (flo_floor, flo_ceil): should not return zero for small
number. [ruby-core:81394] [Bug #13599]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:04 AM Revision 1dec75c0 (git): dir.c: fix FD leaks
- * dir.c (do_opendir): close FD when fdopendir failed, e.g.,
ENOTDIR. [Feature#13056]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
05/26/2017
-
09:37 PM Feature #13601: Remove yield_self from Ruby 2.5 (already implemented)
- `instance_eval` changes scope, while `yield_self` does not.
```ruby
class A
def foo
1
end
def yield_self
yield self
end
end
def self.foo
2
end
p A.new.instance_eval { self.foo * 3 } # => 3
p A.new.... -
08:33 PM Feature #13601: Remove yield_self from Ruby 2.5 (already implemented)
- Note there are differences, for example
~~~ruby
42.instance_eval { abs2 } #=> 1764
~~~
won't work with Kernel#yield_self and
~~~ruby
42.yield_self #=> #<Enumerator: 42:yield_self>
~~~
won't work with BasicObject#instance_eval... -
07:35 PM Feature #13601 (Closed): Remove yield_self from Ruby 2.5 (already implemented)
- Issue https://bugs.ruby-lang.org/issues/6721 for adding `yield_self` is unnecessary as `BasicObject#instance_eval` will do the exact same thing.
~~~ruby
class BasicObject
alias :yield_self :instance_eval
end
2.yield_self { |x|... -
09:31 PM Bug #10093: SecureRandom.uuid is not valid v4 and/or RFC 4122
- usa (Usaku NAKAMURA) wrote:
> Please do not reuse past tickets.
Open new issue https://bugs.ruby-lang.org/issues/13603 -
02:25 PM Bug #10093: SecureRandom.uuid is not valid v4 and/or RFC 4122
- Please do not reuse past tickets.
-
01:54 PM Bug #10093: SecureRandom.uuid is not valid v4 and/or RFC 4122
- https://www.ietf.org/rfc/rfc4122.txt (#4.4)
---
current test is https://github.com/ruby/ruby/blob/ruby_2_4/test/test_securerandom.rb#L174
```ruby
def test_uuid
uuid = @it.uuid
assert_equal(36, uuid.size)
assert_match(/\A... -
09:29 PM Bug #13603 (Closed): SecureRandom.uuid is not valid v4 and/or RFC 4122
- https://www.ietf.org/rfc/rfc4122.txt (#4.4)
---
(reopen from https://bugs.ruby-lang.org/issues/10093#change-65105)
current test is https://github.com/ruby/ruby/blob/ruby_2_4/test/test_securerandom.rb#L174
```ruby
def test_uuid... -
08:48 PM Feature #13602 (Rejected): Optimize instance variable access if $VERBOSE is not true when compiling
- This patch optimizes instance variable lookup in the case the $VERBOSE
is not true when compiling. If $VERBOSE is not true when compiling
code, it makes the instance variable access use an optimized VM
instruction that does not check... -
06:32 PM Feature #13378: Eliminate 4 of 8 syscalls when requiring file by absolute path
- > ```diff
> ...
When you are CRuby developer, all functions declared under include/**/*.h are considered public C API.
(Note that if you are C extension developer, some of such APIs are experimental or private...)
Therefore rb_find_... -
05:11 PM Revision 015d05c6 (git): numeric.c: remove duplicate code
- * numeric.c (flo_to_i): use dbl2ival and reduce duplicate code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e - 05:10 PM Revision 081b38fd (git): * 2017-05-27
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
05:10 PM Revision 6270d595 (git): Improve Array#concat performance if only one argument is given
- * array.c (rb_ary_concat_multi): concatenate the array without generating
temporary Array object if only one argument is given.
This is very similar with r58886.
Array#concat will be faster around 19%.
[Fix GH-1634]
###... -
04:52 PM Feature #13600: yield_self should be chainable/composable
- In case the description is unclear, the goal is to support something like this:
```
pipeline = (&:upcase).yield_self(&:reverse)
"ruby".yield_self(pipeline)
#=> "YRUB"
```
or else:
```
pipeline = (&:upcase) | (&:reverse)
"r... -
03:29 PM Feature #13600 (Rejected): yield_self should be chainable/composable
- One of the main use cases that would make `yield_self` a helpful addition is to build functional pipelines (function composition). This is currently not possible since Proc/Lambda do not handle `yield_self` in the expected way.
I beli... -
02:55 PM Bug #13599 (Closed): Float#ceil(n) doesn't work for small floats
- When using ceil to round up to n digits (as opposed to nearest integer) with the optional first argument, it doesn't work for very small floats:
~~~
2.4.1 :001 > 0.0000000001.ceil(1)
=> 0.0 # => Expected output: 0.1
# Doing it... -
02:17 PM Revision 43572889 (git): erb.rb: Tiny improvement of compiling cost
- by reducing string allocation.
* Before
app_erb 0.687
* After
app_erb 0.679
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:58 PM Revision 9f9f8236 (git): erb.rb: [DOC] Follow compiled code's change
- introduced in r58905.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e - 01:49 PM Revision d9efeebf (git): * properties.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
01:49 PM Revision 6f685e10 (git): erb.rb: Generate static string with opt_str_uminus
- to skip object allocation for static string.
We can't always enable frozen_string_literal pragma because we can't
freeze string literals embedded by user for backward compatibility.
So we need to use fstring for each static string.
Sin... -
12:45 PM Feature #11952: Use getrusage for Process.times if available
- Does anyone have opinion about this? Can I commit this?
I think it would be good to apply this patch to improve lib/benchmark.rb's precision. -
12:12 PM Revision 5fc32362 (git): erb.rb: Use script encoding instead of force_encoding
- The original intention of introducing `_erbout.force_encoding`
in r21170 was:
- "returns a string in the same character encoding as the input string."
- "When the input string has a magic comment, however, it returns a string
in the e... -
09:49 AM Revision e3c14068 (git): remove extra call to OleInitialize
- [Fix GH-1629]
Signed-off-by: Matt Wrock <matt@mattwrock.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58903 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
07:28 AM Bug #13595 (Closed): rb_alloc_tmp_buffer2 broken when: elsize % sizeof(VALUE) == 0 - Applied in changeset trunk|r58902.
----------
attempt to fix rb_alloc_tmp_buffer2 for ALLOCV_N
This is a confusing function to my arithmetic-challenged mind,
but nobu seems alright with this. Anyways this lets me use
large values of e... -
05:35 AM Bug #13595: rb_alloc_tmp_buffer2 broken when: elsize % sizeof(VALUE) == 0
- Reconsidered and yours seems the intended.
-
05:19 AM Bug #13595: rb_alloc_tmp_buffer2 broken when: elsize % sizeof(VALUE) == 0
- Maybe like this?
```diff
diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h
index 0b277dce19..95dab1bf3f 100644
--- a/include/ruby/ruby.h
+++ b/include/ruby/ruby.h
@@ -1612,9 +1612,10 @@ rb_alloc_tmp_buffer2(volatile VALUE *s... - 07:28 AM Revision 190e29f7 (git): attempt to fix rb_alloc_tmp_buffer2 for ALLOCV_N
- This is a confusing function to my arithmetic-challenged mind,
but nobu seems alright with this. Anyways this lets me use
large values of elsize without segfaulting, and "make exam"
passes.
* include/ruby/ruby.h (rb_alloc_tmp_buffer2):... -
07:04 AM Revision 5e7ce519 (git): dir.c: yield without base part
- * dir.c (glob_helper): yield globbed part only without the base
directory path part if the base is given. [Feature#13056]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
07:02 AM Revision 9ee48c0a (git): runruby.rb: no PRELOAD on multiarch [ci skip]
- * tool/runruby.rb: do not set environment to preload on multiarch
platforms, otherwise other external commands (e.g., /bin/sh)
fail to run.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:42 AM Revision 10ee38b6 (git): * lib/uri/common.rb: [DOC] add rdoc to describe
- URI.unescape is obsolete [ci-skip] [fix GH-1630]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:39 AM Revision c854fde3 (git): sprintf.c: remove redundant condition
- * sprintf.c (rb_str_format): when `t + 1 == end` (or `t < end`),
`*t == '%'` is always true. [ruby-core:80153] [Bug #13315]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:39 AM Revision a77cb8c8 (git): string.c: adjust style [ci skip]
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:28 AM Revision 2881374c (git): Symbol support for opt_eql_func too
- * vm_insnhelper.c (comparable_by_identity): extract the condition
where comparable by identity. currently both are same types,
Fixnum, Flonum, or Symbol.
* vm_insnhelper.c (opt_eql_func): support Symbol too.
git-svn-id: svn+ssh://... -
05:32 AM Feature #13483 (Rejected): TracePoint#enable with block for thread-local trace
-
05:32 AM Feature #13483: TracePoint#enable with block for thread-local trace
- After consideration, I found several problems.
There is a implicit expectation that we can emulate block accept call with begin/ensure like:
```
open do
...
end
#=> same as:
begin
open
yield
ensure
close
end
```
... -
05:27 AM Bug #13330 (Closed): Array.include? is slow for symbols
- Applied in changeset trunk|r58895.
----------
Symbol support for opt_eq_func.
* vm_insnhelper.c (opt_eq_func): optimize for symbol comparison.
[Bug #13330] [fix GH-1540] -
05:26 AM Revision ad0f8ff7 (git): Symbol support for opt_eq_func.
- * vm_insnhelper.c (opt_eq_func): optimize for symbol comparison.
[Bug #13330] [fix GH-1540]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:50 AM Revision 8dce6221 (git): compile.c: fix possible use of uninitialized value
- LABEL::unremovable added by r58810 is not initialized by
new_label_body(), making the optimization unstable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
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... -
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 ... -
06:30 PM Feature #8643: Add Binding.from_hash
- Yes, it makes sense. Thanks a lot! :)
-
03:47 PM Feature #8643 (Rejected): Add Binding.from_hash
- Since [Feature #8631] is accepted, closing this ticket.
-
06:29 PM Feature #8631: Add a new method to ERB to allow assigning the local variables from a hash
- Awesome, thanks!
-
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] -
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.
... -
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... -
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? -
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 -
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 -
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] -
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 - 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
-
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 -
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 "<%#"...
-
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... -
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. -
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 -
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 (... -
09:15 AM Bug #13390 (Closed): MinGW build test-all SEGV, issue in test framework or error recovery?
- Closing per OP request
-
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... -
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... -
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 -
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 -
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
-
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 -
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 ... -
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
... -
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... -
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... -
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 ... -
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... -
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 -
02:14 AM Feature #13056 (Closed): base option to Dir.glob
-
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 -
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?
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 -
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.
-
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? -
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... -
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... - 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
- 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... -
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 -
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 -
08:07 AM Bug #13596 (Closed): Segfault when catching SystemStackError in eval
-
06:46 AM Bug #13596: Segfault when catching SystemStackError in eval
- Updated description to add a successful testcase.
-
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, ...
-
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 ...
-
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] -
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 -
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... -
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 -
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 -
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 -
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 -
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... -
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... -
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 -
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... - 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 -
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. -
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) {
... -
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.
- 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...
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 -
04:08 PM Bug #13592 (Open): Enumerable#reduce with symbol does not respect method visibility
-
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... -
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. -
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.
-
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(:+)
~~~... -
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... -
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... -
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... -
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... -
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... -
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 -
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) -
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... - 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
-
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... -
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... -
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 -
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 -
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 -
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 -
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 -
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 -
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 -
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 -
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... -
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. -
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 ...
-
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... -
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... - 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
-
05:44 AM Bug #13579 (Closed): Net::IMAP#append blocks when a NO response is received
- Fixed in r58792 and r58844.
-
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. -
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 ... -
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 -
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