Activity
From 09/05/2018 to 09/11/2018
09/11/2018
-
11:01 PM Feature #15074: Create 'official' C API documentation on ruby-doc.org
- @hsbt what do you think about writing the docs within C API files like `ruby.h`, `intern.h` and `extension.h` itself so that ruby-doc.org can run doxygen on them to generate the relevant documents? It will keep the documentation up-to-da...
-
12:38 AM Feature #15074: Create 'official' C API documentation on ruby-doc.org
- Alright. I think its a matter of adding the extension.rdoc file to the ruby-doc.org sources and then push changes to extension.rdoc in the core ruby repo.
-
09:55 PM Bug #15105 (Closed): `rb_debug_inspector_open` breaks lazy proc optimization
- Calling `rb_debug_inspector_open` inside a block that uses lazy proc optimizations breaks the implementation. r60397 introduced the bug.
I've attached a failing test, but I'll paste the diff here as well:
```diff
From 54e55b83f1a... -
04:16 PM Bug #15103: undecipherable nil error for `+`
- Never mind, I found the error. Please close this.
They were not operationally exact.
This ``while num >= modk + residues[r]; r += 1 end``
had to be this ``while (num-1) >= modk + residues[r]; r += 1 end``
Now I remember why I did... -
04:02 PM Bug #15103 (Rejected): undecipherable nil error for `+`
- I am experiencing the following error in a method I rewrote that makes no sense whatsover.
Here's the original method.
```
def method1(num, residues, flag)
modpg, rescnt = (residues[-1] - 1), residues.size
... - 03:14 PM Revision bddc28b2 (git): * 2018-09-12
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64688 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:14 PM Revision 0325145f (git): _mjit_compile_insn.erb: move pc on JIT cancel
- if and only if it's not moved yet, to avoid potential bugs in the future.
_mjit_compile_send.erb: ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64687 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
03:12 PM Bug #15082: Memory leak in net/http/response and net/http/header
- Thanks for pointing this PR. I ran it again with this specific memory_profiler version and there is no memory leaks.
It seems that I don't have enough permissions to close the issue. -
05:16 AM Bug #15082: Memory leak in net/http/response and net/http/header
- @alexis Look into this PR https://github.com/SamSaffron/memory_profiler/pull/59
Once merged this PR should fix the issue you faced.
I think this can be closed now. -
02:38 PM Revision 9f6e9b40 (git): mjit_worker.c: atomically print main message and \n
- To attempt to fix CI failure on rubyci freebsd:
https://rubyci.org/logs/rubyci.s3.amazonaws.com/freebsd11zfs/ruby-trunk/log/20180911T123001Z.fail.html.gz
```
JIT success (68.7ms): mjit9@(eval):1 -> /usr/home/hsbt/chkbuild/tmp/build/2018... -
02:10 PM Revision 6e3fe890 (git): bare_instructions.rb: use Hash#fetch to read attr
- to raise descriptive KeyError instead of NoMethodError in case these
attrs are accidentally removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:48 PM Revision 10ff0a2b (git): _mjit_compile_insn.erb: prefer insn.always_leaf?
- rather than `trace_enablable_insns` which is hard to maintain.
This would make performance bad because new branches for tracepoint will
be added.
Optcarrot before:
fps: 56.885371547337655
fps: 60.02493636060194
fps: 63.051028327122076
... -
12:53 PM Revision 67bd8fb3 (git): _mjit_compile_pc_and_sp.erb: skip moving pc
- when catch_except_p is false and insn.always_leaf? is true (never makes
arbitrary method call in the insn).
On Optcarrot, unfortunately this didn't have measureable performance impact.
But still this is a good direction since it becomes... -
11:26 AM Revision 24e30ef7 (git): transform_mjit_header.rb: add static to Init_*
- as well, to make CI succeed with VM_CHECK_MODE > 1.
vm_insnhelper.c: drop unnecessary MJIT_HEADER ifdef. This is intended to
be ignored by having `static inline`. Removing that by macro would be
helpful for minimizing compilation time, ... -
11:09 AM Revision 0f3bd3e6 (git): test_jit.rb: show extra debug info for #test_unload_units
- failure
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64681 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
11:05 AM Revision 6f7fafbf (git): random.c: prefixed fill_random_bytes
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64680 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
11:01 AM Revision db40f678 (git): vm_insnhelper.c: stop unnecessarily using rb_sprintf
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
10:58 AM Revision 30011cbb (git): vm_insnhelper.c: fix -Wformat-security on rb_bug
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
09:48 AM Revision c2bfb4e9 (git): add new instruction attribute called leaf
- An instruction is leaf if it has no rb_funcall inside. In order to
check this property, we introduce stack canary which is a random
number collected at runtime. Stack top is always filled with this
number and checked for stack smashing... - 09:46 AM Revision ecda2d23 (git): * 2018-09-11
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
09:46 AM Revision 1a38555c (git): Use https instead of http
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
01:18 AM Feature #15092 (Rejected): Provide step count in Range constructor
-
01:16 AM Feature #15092: Provide step count in Range constructor
- OK I'm convinced this is probably a bad idea since `step` returns an `ArithmeticSequence`
and is not a property of `Range`.
Closing the issue. -
01:03 AM Feature #15092: Provide step count in Range constructor
- We've already have Emuerator::ArithmeticSequence in trunk.
Please use it. -
12:10 AM Bug #13931: correct install_name of libruby on macOS (libruby.2.5.0.dylib -> libruby.2.5.dylib)
- Requesting backport to 2.4
https://github.com/Homebrew/homebrew-core/pull/31967#issuecomment-420100406
09/10/2018
-
11:21 PM Misc #14981: DevelopersMeeting20180913Japan
- * [Feature #13167] Dir.glob is 25x slower since Ruby 2.2 (ahorek)
* improves performance of a glob pattern with braces, especially on windows but also on other platforms
* the idea was already approved by @matz #13873 but later rev... -
07:59 PM Bug #15088: Leaky behaviour when GC disabled
- Thank you @normalperson & @ko1 for taking a look and for the explanation here 😀
-
07:18 PM Bug #15097: Gem install fails on Ruby 2.5.1 with Cygwin (get_dns_server_list undefined)
- nobu (Nobuyoshi Nakada) wrote:
> I can't reproduce it, with the trunk and 2.5.2 in the repository, using
Thanks for taking a look at it.
This is on a 32-bit Windows, if that has any significance?
However I now figured out a work... -
09:31 AM Bug #15097: Gem install fails on Ruby 2.5.1 with Cygwin (get_dns_server_list undefined)
- I can't reproduce it, with the trunk and 2.5.2 in the repository, using
```
$ LANG=C i686-pc-cygwin-gcc -v
Using built-in specs.
COLLECT_GCC=i686-pc-cygwin-gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-pc-cygwin/6.4.0/lto-wrapper.exe
... -
03:52 AM Bug #15097 (Assigned): Gem install fails on Ruby 2.5.1 with Cygwin (get_dns_server_list undefined)
- Compiled and installed Ruby 2.5.1 on Cygwin, and now gem install fails with:
~~~ ruby
ERROR: While executing gem ... (NameError)
undefined local variable or method `get_dns_server_list' for Win32::Resolv:Module
~~~
While ... -
01:05 PM Revision 90245094 (git): appveyor.yml: try VS140
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
09:35 AM Revision 67dba250 (git): signal.c: consider non-sigaltstack platforms
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
07:23 AM Feature #15074: Create 'official' C API documentation on ruby-doc.org
- At first, `ruby-doc.org` is not our `official` web resource. It's a third party resource.
But `ruby-doc.org` maybe uses documentation generated by rdoc with ruby source code. So, You can add its documentation under the `doc` directory. -
04:23 AM Revision 991e95bb (git): util.c: removed extra #endif [Bug #15091]
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
04:21 AM Revision ef92aa9a (git): util.c: fix ruby_qsort with qsort_s
- * util.c (ruby_qsort): __STDC_VERSION__ may not be defined even if it
is available. fixed duplicate definitions when qsort_s is available
on non-Windows platforms. [ruby-core:88921] [Bug #15091]
git-svn-id: svn+ssh://ci.ruby-lang.... - 01:43 AM Revision 5679d0c5 (git): there is no such predefined macro. check build before commit!
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64670 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
09/09/2018
-
06:42 PM Feature #15095: [PATCH] share VM stack between threads and fibers if identical
- Koichi Sasada <ko1@atdot.net> wrote:
> On 2018/09/10 2:26, Eric Wong wrote:
> > Sorry, I mean they can share VM stack cache; not the in-use VM stack.
>
> It makes sense.
>
> But I remember that Fiber stack is smaller than Thread... -
06:03 PM Feature #15095: [PATCH] share VM stack between threads and fibers if identical
- On 2018/09/10 2:26, Eric Wong wrote:
> Sorry, I mean they can share VM stack cache; not the in-use VM stack.
It makes sense.
But I remember that Fiber stack is smaller than Thread VM stack because
of rough estimation (Fiber may... -
06:03 PM Feature #15095: [PATCH] share VM stack between threads and fibers if identical
- On 2018/09/10 2:31, Eric Wong wrote:
> OK, I thought that was the case. But no plans to use `const' here
> in the future, right? In other words, this patch should be OK?
Not sure about the future.
But it is okay to commit your pat... -
05:32 PM Feature #15095: [PATCH] share VM stack between threads and fibers if identical
- ko1@atdot.net wrote:
> normalperson (Eric Wong) wrote:
> > Also, why cast in ec_set_vm_stack?
> > https://80x24.org/spew/20180909080140.16293-1-e@80x24.org/raw
> > I've barely touched code this week, so maybe I forgot something :x... -
05:32 PM Feature #15095: [PATCH] share VM stack between threads and fibers if identical
- ko1@atdot.net wrote:
> > ec->vm_stack is always allocated with malloc, so stacks for root
> > fiber (thread stack) and non-root fibers can be shared as long
> > as the size is the same.
>
> I'm not sure why we can share the VM sta... -
03:50 PM Feature #15095: [PATCH] share VM stack between threads and fibers if identical
- normalperson (Eric Wong) wrote:
> Also, why cast in ec_set_vm_stack?
> ...
Yes. These fields were `const` at least on my laptop to modify something.
-
03:48 PM Feature #15095: [PATCH] share VM stack between threads and fibers if identical
- > ec->vm_stack is always allocated with malloc, so stacks for root
> ...
I'm not sure why we can share the VM stack. If we run root fiber and non-root fiber with switching, it will conflicts.
Do I misunderstand something?
-
08:12 AM Feature #15095: [PATCH] share VM stack between threads and fibers if identical
- Also, why cast in ec_set_vm_stack?
https://80x24.org/spew/20180909080140.16293-1-e@80x24.org/raw
I've barely touched code this week, so maybe I forgot something :x -
07:56 AM Feature #15095 (Closed): [PATCH] share VM stack between threads and fibers if identical
- ec->vm_stack is always allocated with malloc, so stacks for root
fiber (thread stack) and non-root fibers can be shared as long
as the size is the same. The purpose of this change was mainly
to reduce dependencies on ROOT_FIBER_CONTE... - 03:46 PM Revision 73e7cdeb (git): * 2018-09-10
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64669 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:46 PM Revision 7785f579 (git): .travis.yml: separate ruby/spec on old version
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64668 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:43 PM Bug #15088 (Rejected): Leaky behaviour when GC disabled
- Thank you Eric.
This is my 2nd experiment:
```
...
# adding the following code to original trial code.
GC.start
puts"After2 - All: #{ObjectSpace.each_object.count}"
puts"After2 - Symbols: #{Symbol.all_symbols.size}"
```
... -
02:01 PM Feature #15093: Retrive Array elements with infinite ranges specified by Float::INFINITY
- This could be fixed, at least in theory, but in practice this is no longer an issue: use endless range
```
a[0...] # => [1, 2, 3, 4]
```
I'm unsure if we should change the behavior, since it allows catching of subtle errors where... -
09:24 AM Feature #15093: Retrive Array elements with infinite ranges specified by Float::INFINITY
- I can not say much about the reasoning (I am neutral there) but
I agree in one regards - if we use a large number, we get all
Array members:
a = [1,2,3,4] # => [1, 2, 3, 4]
a[0..111111111] # => [1, 2, 3, 4]
So from thi... -
03:04 AM Feature #15093 (Open): Retrive Array elements with infinite ranges specified by Float::INFINITY
- Currently in Ruby head (2.6) the following gives an error:
~~~ ruby
2.6-head :001 > a = [1,2,3,4]
# => [1, 2, 3, 4]
2.6-head :002 > a[0..Float::INFINITY]
#Traceback (most recent call last):
# 2: from /home/sameer/.rvm/rubie... -
01:57 PM Feature #15092: Provide step count in Range constructor
- v0dro (Sameer Deshmukh) wrote:
> Advantages of changing the constructor:
> ...
Very debatable.
> * Consistency in specifying step count in constructor (simple and straightforward way) and using
> ...
It's actually not consistent, s... -
09:19 AM Feature #15092: Provide step count in Range constructor
- > Wouldn't the result be [1, 4, 7, 10, 13]?
Off-by-one is ... common. :)
A bit more on topic, Float::INFINITY is quite long. Could
we not use :infinity to refer to it in some methods or
something shorter? I think ruby users shou... -
03:37 AM Feature #15092: Provide step count in Range constructor
- v0dro (Sameer Deshmukh) wrote:
> I would like to propose making changes to the Range constructor so that a user can specify
> ...
The array will return `[1,4,7,10]`. Sorry for previous mistake. -
03:36 AM Feature #15092: Provide step count in Range constructor
- > Wouldn't the result be [1, 4, 7, 10, 13]?
Ah yes. My bad. Editing the description. Thank you. -
03:12 AM Feature #15092: Provide step count in Range constructor
- v0dro (Sameer Deshmukh) wrote:
> And I want the values `1`, `4`, `7`, `10` and `12`, I can simply specify a Range like this:
> ...
Wouldn't the result be `[1, 4, 7, 10, 13]`?
-
02:59 AM Feature #15092: Provide step count in Range constructor
- Advantages of changing the constructor:
* Makes it easy to read test code for someone new to Ruby.
* Consistency in specifying step count in constructor (simple and straightforward way) and using
the shorter syntax (idiomatic Ruby way... -
02:42 AM Feature #15092 (Feedback): Provide step count in Range constructor
- No need to change the constructor. Instead of:
```
Range.new 0, Float::INFINITY, 3
```
Use the shorter
```
(0...) % 3
```
-
02:28 AM Feature #15092 (Rejected): Provide step count in Range constructor
I would like to propose making changes to the Range constructor so that a user can specify
a `step` count along with `start` and `stop`. Since Ruby 2.6 will introduce a `step` property
in Ranges anyway I think this will be a useful a...-
01:06 PM Bug #15091: [solaris] encdb.h.tmpl segfault
- thanks @nobu
but now I have an error
```
error Unknown version qsort_s
```
the build passed without this line
https://github.com/ruby/ruby/commit/8e9a8c043ef5b16a2f13999bd2c5d59d61dd00d1#diff-6d7e72ea1ca2b7d0258e568a155084bdR219 -
07:49 AM Bug #15091 (Closed): [solaris] encdb.h.tmpl segfault
- Applied in changeset trunk|r64661.
----------
util.c: qsort_s in C11
* configure.ac: macro for C11 to use qsort_s.
* util.c (ruby_qsort): fix for C11 qsort_s. the comparison function
for MSVCRT qsort_s is compatible with BSD qsort_... -
12:48 PM Revision 1050c08d (git): Add latest version gcc-8 case to Travis CI
- [Fix GH-1937]
Co-authored-by: Jun Aruga <jaruga@redhat.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
12:48 PM Revision c3c73ba2 (git): .travis.yml: branches only for travis-ci
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
12:42 PM Revision f419aa7b (git): thread.c: get rid of false warnings by gcc-8
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
10:51 AM Revision c09fc47a (git): Fix a typo
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
10:12 AM Bug #15050: GC after forking with fibers crashes
- Koichi Sasada <ko1@atdot.net> wrote:
> Ok. We need to avoid this kind of crash.
>
> https://bugs.ruby-lang.org/issues/15050
OK, I think I fixed the issue (also including [Feature #15095])
Greg, there's a small win32-specific c... - 08:50 AM Revision 64b326c2 (git): spec/ruby/library/socket/addrinfo: require for SocketSpecs
- Otherwise, I get NameError when running these IPv6 tests individually
or in parallel.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e - 07:49 AM Revision 432af3e6 (git): * 2018-09-09
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
07:49 AM Revision 8e9a8c04 (git): util.c: qsort_s in C11
- * configure.ac: macro for C11 to use qsort_s.
* util.c (ruby_qsort): fix for C11 qsort_s. the comparison function
for MSVCRT qsort_s is compatible with BSD qsort_r, but not with C11
qsort_s, in spite of its name.
note that mingw ... -
05:28 AM Feature #14927: Loading multiple files at once
- nobu (Nobuyoshi Nakada) wrote:
> Doesn't the order matter?
Very often, it does not. If it does, one can always require the one that's needed first, say, then require the whole directory; require won't load the same file twice so this... -
04:33 AM Feature #14927: Loading multiple files at once
- shevegen (Robert A. Heiler) wrote:
> In the event that the project may be relocated, here is the
> ...
Doesn't the order matter? -
03:33 AM Feature #14183: "Real" keyword argument
- After working a lot on `**{}`, I still strongly believe that we must maintain conversion of keyword arguments to positional argument, e.g.:
```
def foo(*ary)
end
foo(kw: 1) # => must remain ok
```
OTOH, it may be possible to di... -
03:27 AM Bug #15078: Hash splat of empty hash should not create a positional argument.
- mame (Yusuke Endoh) wrote:
> I'd like to agree with you, but also really like to fix #15052. Do you find a good semantics of **hash to satisfy both this ticket and that one?
This is a long post, sorry.
* Summary *
I agree that ... -
02:31 AM Feature #15074: Create 'official' C API documentation on ruby-doc.org
- Alright. So as a first step can you please tell me how it would be possible to create
this page for the C API? Or maybe start with the wiki?
I can send a PR with some preliminary docs once you approve a course of action.
09/08/2018
-
10:12 PM Bug #15091: [solaris] encdb.h.tmpl segfault
- pdahorek@seznam.cz wrote:
> https://bugs.ruby-lang.org/issues/15091
> ```
> https://www.oracle.com/technetwork/server-storage/solaris11/downloads/index.html
Weird, I'm not familiar with Solaris versions, but it seems our
CI machi... -
04:31 PM Bug #15091 (Closed): [solaris] encdb.h.tmpl segfault
- gcc -v
```
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/gcc/7/lib/gcc/x86_64-pc-solaris2.11/7.3.0/lto-wrapper
Target: x86_64-pc-solaris2.11
Configured with: /builds/ulhg/workspace/Solaris_11u4/Userland/full-build/... -
02:35 PM Feature #14927: Loading multiple files at once
- I thought about creating a new issue but then I remembered that
the issue here refers to a similar use case that I wanted to
show.
Take the following link as an example:
https://github.com/jordansissel/fpm/blob/master/lib/fpm.rb
... -
06:50 AM Feature #15085: Decrease memory cache usage of MJIT
- As long as I can see from the benchmark result for the improved case, it looks good. But at least I would like to see micro benchmarks for opt_send_without_block and send. Because of _mjit_compile_send, it may not be affected so much tho...
-
02:44 AM Revision 7671126d (git): Use `&.` after `&.`
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 01:09 AM Revision edc4df32 (git): * 2018-09-08
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 01:09 AM Revision e83c3083 (git): test/ruby/test_thread.rb: join threads in each test
- Leaky thread detection doesn't happen frequently, enough
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
09/07/2018
-
09:03 PM Bug #15088: Leaky behaviour when GC disabled
- liamtabi@gmail.com wrote:
> https://bugs.ruby-lang.org/issues/15088
> 100_000.times do |i|
> "to_sym_#{i}".to_sym
> end
>
> GC.enable
> GC.start
You need at least another call to GC.start, here.
I think it is because g... -
03:59 PM Bug #15088 (Rejected): Leaky behaviour when GC disabled
- Hello
I've observed some leaky behaviour when creating dynamic Symbols ("string".to_sym) when GC is disabled. Creating a dynamic symbol after running `GC.disable` creates an extra string allocation that isn't garbage collected when GC... -
04:36 PM Bug #15078: Hash splat of empty hash should not create a positional argument.
- marcandre (Marc-Andre Lafortune) wrote:
> First, I hope we can agree that `any(**{})` and `any(**Hash.new)` should have the exact same result (for any definition of `any`).
Of course :-)
> ...
What do you think about #15052?
... -
03:07 PM Bug #15087: Segmentation fault with splat and block
- Good catch. My patch for #15052 will fix this issue.
-
02:58 PM Bug #15087 (Closed): Segmentation fault with splat and block
- The following code produces segmentation faults in Ruby 2.5.0, 2.5.1, and 2.6.0dev (2018-09-07 trunk 64656). This code worked in Ruby 2.4.1.
~~~ ruby
test_proc = Proc.new { "test" }
def foo(bar: 1, &block)
yield
end
foo(**{}, &... -
02:37 PM Revision 3c08f507 (git): ext/objspace/object_tracing.c (freeobj_i): fix missing assignment
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
01:48 PM Feature #15066: Documentation and providing better API for accessing Complex numbers functions in C extensions
>
> ...
As Benoit says (rightly), I don't think we need a very elaborate API. Therefore the following functions would be sufficient:
* Constructor from double: Something like `rb_complex_new(double real, double imag)`.
* Access r...-
01:43 PM Revision 5af7cda5 (git): tool/node_name.rb: rewrote without flip-flop
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
08:28 AM Revision 164a93c8 (git): object_tracing.c: register TracePoint objects
- * ext/objspace/object_tracing.c (trace_object_allocations_start): to
prevent TracePoint objects from GC, register them in the VM, since
they are unique per VM.
http://ci.rvm.jp/results/trunk-test@ruby-sky3/1291901
* ext/objspace/o... -
03:42 AM Revision 68df2b08 (git): test/ruby/test_ast.rb: assert error messages too
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:39 AM Revision 32aeb3dd (git): Refactor test
- [Fix GH-1946]
From: Josh Cheek <josh.cheek@gmail.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
03:23 AM Revision 8eb96c61 (git): ext/objspace/object_tracing.c (freeobj_i): no lookup before delete
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 03:16 AM Revision 870c296d (git): * 2018-09-07
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:16 AM Revision 4ff0ce6a (git): ext/objspace/object_tracing.c: get rid of aliasing pointers
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
09/06/2018
-
11:25 PM Feature #15085 (Rejected): Decrease memory cache usage of MJIT
- MJIT makes ruby-methods faster by ordinary, but I have observed that some cases are exceptional.
I guess the one is caused by `invokesuper` instruction.
And I guess it is related to memory caching, especially iTLB.
Attached "export-... -
06:50 PM Bug #15078: Hash splat of empty hash should not create a positional argument.
- First, I hope we can agree that `any(**{})` and `any(**Hash.new)` should have the exact same result (for any definition of `any`).
So the question is: what should the result be?
For me, writing `**hash` means "do as if I had writte... -
03:51 AM Bug #15078: Hash splat of empty hash should not create a positional argument.
- It is also related to
https://bugs.ruby-lang.org/issues/11860
https://bugs.ruby-lang.org/issues/12022
https://bugs.ruby-lang.org/issues/10708 -
05:44 PM Bug #14716: SecureRandom throwing an error in Ruby 2.5.1
- I worked around this problem by forcing `SecureRandom` to use the OpenSSL gem:
```ruby
module SecureRandom
if RUBY_VERSION == "2.5.1"
class << self
def gen_random(n)
begin
require 'openssl'
rescue N... -
05:42 PM Bug #14999: ConditionVariable doesn't reacquire the Mutex if Thread#kill-ed
- lars@greiz-reinsdorf.de wrote:
> Issue #14999 has been updated by larskanis (Lars Kanis).
> > > So it seems it doesn't happen in Ruby <= 2.5 due to thread
> > > caching being disabled then?
> >
> > Right; but that might just ... -
05:23 PM Bug #15084 (Closed): Backport r64476
- This affects 2.4.4 as reported by Lars: [ruby-core:88852]
I expect it to affect all 2.x versions, even. [Bug #14999]
"thread_sync.c (rb_mutex_sleep): disable interrupt checking in ensure"
Should be straightforward despite the ti... -
11:28 AM Bug #15082: Memory leak in net/http/response and net/http/header
- Upon further inspection, it seems duplicating long text with interpolation allocates an extra string(frozen). You can observe this using the following script.
~~~
def string_info
GC.disable
obj_ids = []
final_ids = []
obj_s... -
09:45 AM Bug #15082: Memory leak in net/http/response and net/http/header
- It can be an issue related to MemoryProfiler or some edge case to ObjectSpace.trace_object_allocations_start
The following code also result in a similar result:
~~~
MemoryProfiler.report{ 200.times{|i| "SOME RANDOM TEXT#{i}: SOME ... -
06:23 AM Bug #15082 (Closed): Memory leak in net/http/response and net/http/header
- Hello,
I'm observing a memory leak in net/http with the following script :
~~~
require "net/http"
require "bundler/inline"
gemfile do
gem "memory_profiler"
end
def profile_http_get(n)
uri = URI("http://www.ruby-lang.... - 09:24 AM Revision ad10b43f (git): re-patched r50599 because of test failure on TravisCI.
- [Backport #14060]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_4@64649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
03:53 AM Bug #14971: error: implicit declaration of function ‘rb_vm_call0
- This issue has been masked by #15072, but has resurfaced.
@nobu: Ping! -
03:02 AM Revision 5b476b4a (git): Extracted file list for csv.gemspec.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64648 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
09/05/2018
-
11:15 PM Bug #14885 (Closed): Is documenting-ruby a dead project?
- Applied in changeset trunk|r64647.
----------
[DOC] Remove link to dead project
[Bug #14885] [ci skip] -
11:15 PM Revision 7e08d60d (git): [DOC] Remove link to dead project
- [Bug #14885] [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
11:02 PM Bug #15078: Hash splat of empty hash should not create a positional argument.
- It is not so trivial what it should be. If you look at only `foo(**{}) #=> [{}]` itself, it might be non-intuitive, indeed. However, IMO, this is a consequence of the current weird spec of keyword arguments (a keyword hash is passed as...
-
04:22 PM Bug #15078 (Closed): Hash splat of empty hash should not create a positional argument.
- Looks like #10856 is not completely fixed, but I can't reopen it
```
def foo(*args); args; end
foo(**{}) # => []
foo(**Hash.new) # => [{}], should be []
``` -
10:28 PM Bug #15080 (Closed): Work on Benchmark::Tms documentation
- Fixes a couple issues with "+param+ is not documented" in lib/benchmark.rb
I would like to contribute more to the documentation, so if there's something I should be doing differently in these tickets, please let me know. -
09:52 PM Feature #13618: [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
- Greg.mpls@gmail.com wrote:
> Issue #13618 has been updated by MSP-Greg (Greg L).
>
>
> @normalperson Eric,
>
> I applied the two patches in 'note 139', and three test suites stopped.. With test-all running parallel, it's diff... -
09:34 PM Revision 4204eacf (git): fix a typo [ci skip]
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
08:40 PM Bug #15079 (Closed): Documentation missing for Enumerator::Lazy#force
- Applied in changeset trunk|r64645.
----------
enumerator.c: [DOC] Enumerator::Lazy#force [ci skip]
added documentation of Enumerator::Lazy#force, just to clarify that it
is an alias of an inherited method. [ruby-core:88872] [Bug #15079] -
07:22 PM Bug #15079 (Closed): Documentation missing for Enumerator::Lazy#force
- This isn't a bug with the ruby language, but rather with the documentation. (At http://ruby-doc.org/core-2.5.1/Enumerator/Lazy.html)
Expected behavior:
There is documentation for the `#force` method for lazy enumerators.
Actual be... -
08:40 PM Revision c1cc8418 (git): enumerator.c: [DOC] Enumerator::Lazy#force [ci skip]
- added documentation of Enumerator::Lazy#force, just to clarify that it
is an alias of an inherited method. [ruby-core:88872] [Bug #15079]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
08:39 PM Revision ebff0059 (git): Add platform guards for AIX
- * Most of these seem OS bugs.
* See https://rubyci.org/logs/rubyci.s3.amazonaws.com/aix71_ppc/ruby-trunk/log/20180905T103302Z.fail.html.gz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
08:39 PM Revision a140f157 (git): Guard a few specs which ipv6_available?
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
08:02 PM Revision c46515e4 (git): backward.h: removed stale declarations
- * include/ruby/backward.h (rb_complex_set_real, rb_complex_set_imag):
removed useless declarations which have been deprecated from the
beginning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64642 b2dd03c8-39d4-4d8f-98ff-823fe6... -
07:06 PM Feature #14473 (Closed): Add Range#subrange?
- Applied in changeset trunk|r64640.
----------
range.c: Range#cover? accepts Range object. [Feature #14473]
* range.c (range_cover): add code for range argument.
If the argument is a Range, check it is or is not
covered b... - 07:06 PM Revision de13863a (git): * 2018-09-06
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64641 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 07:06 PM Revision 9ca73892 (git): range.c: Range#cover? accepts Range object. [Feature #14473]
- * range.c (range_cover): add code for range argument.
If the argument is a Range, check it is or is not
covered by the reciver. If it can be treated as a
sequence, this method treats it that way.
* t... -
05:17 PM Bug #15070: configure fails with (probably spurious) 'something wrong with CFLAGS="-g -O2 "' on macOS High Sierra
- Thanks for the clue -- it looks like I had `CPPFLAGS=-L /usr/local/opt/mysql@5.7/include` set globally for some reason (probably having to do with building the mysql gem). Removing that allows `configure` to succeed.
That said, it see... -
05:05 PM Feature #14183: "Real" keyword argument
- Let me add my voice to that of Benoit and Jeremy: the incompatibility is absolutely not worth it.
I believe that if we fix the few remaining corner cases, improve the error messages and explicitly document how Ruby handles keyword par... -
04:59 PM Feature #14183: "Real" keyword argument
- mame (Yusuke Endoh) wrote:
> Braced hash and bare one are inconsistent, even in the current spec.
> ...
The fact that `foo(**h) #=> {}` is a bug. Note that `foo(**{}) # => :default`, as I believe it should. Both should have same res... -
06:47 AM Feature #14183: "Real" keyword argument
- mame (Yusuke Endoh) wrote:
> > BTW, `p foo: 1` will no longer work then, and `p({foo: 1})` would be required, which feels very *unlike* Ruby, and is just impractical when debugging.
> ...
Half-joking: I'm not fully satisfied with `p fo... -
03:01 AM Feature #14183: "Real" keyword argument
- Eregon (Benoit Daloze) wrote:
> I would think the number of methods like debug() is a tiny fraction of the number of places we'd need to change if hash-without-braces is no longer supported.
> ...
I think you are too familiar with the ... -
04:45 PM Bug #11993 (Rejected): foo(hash) is handled like foo(**hash)
- First, `foo(b: 1)` has been exactly the same as `foo({b: 1})` since Ruby 1.8 at least. It is parsed exactly the same way. It's syntax sugar.
```
require 'ripper'
Ripper.sexp('foo(a : 1)') == Ripper.sexp('foo({a : 1})') # => true
``... -
04:11 PM Bug #11236: inconsistent behavior using ** vs hash as method parameter
- When last argument is hash-like but has keys that are not symbols, we could output instead "wrong number of arguments (2 for 1); note that the last argument has keys that are not symbols and thus was not considered as keyword parameters"
-
03:44 PM Bug #14130: Keyword arguments are ripped from the middle of hash if argument have default value
- This is a bug.
```
test1('River name' => 'Mississippi', length: 2000, 'Country' => 'USA')
# 3. SOURCE: {"River name"=>"Mississippi", "Country"=>"USA"}, OPTS: {:length=>2000} -- It is already a bit weird
```
My understanding is t... -
03:38 PM Bug #13647 (Open): Some weird behaviour with keyword arguments
- nobu (Nobuyoshi Nakada) wrote:
> Just an idea to keep the original argument, if something left.
> ...
I agree that if the conversion of a hash-like argument to keyword parameter fails because the keys aren't all symbols, the original o... -
03:25 PM Bug #13336 (Closed): Default Parameters don't work
- This is a duplicate of #12717, so closing this.
-
03:22 PM Bug #12717: Optional argument treated as kwarg
- I believe this is as designed.
As I stated previously (https://bugs.ruby-lang.org/issues/11967#note-3), my understanding is that:
* after all mandatory unnamed arguments are filled
* if the last remaining argument is hash-like
* ... - 01:33 PM Revision 19dec2a1 (git): * append newline at EOF.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
01:33 PM Revision 60ebd4e2 (git): Merge csv-3.0.0 from ruby/csv repository.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
01:16 PM Revision 21ce539f (git): fix typo
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
01:15 PM Revision 24418e0c (git): AIX doesn't set OptionLength for boolean options
- https://rubyci.org/logs/rubyci.s3.amazonaws.com/aix71_ppc/ruby-trunk/log/20180904T103302Z.fail.html.gz
https://www.ibm.com/support/knowledgecenter/ja/ssw_aix_72/com.ibm.aix.commtrf2/getsockopt.htm
git-svn-id: svn+ssh://ci.ruby-lang.org/... -
12:18 PM Bug #14999: ConditionVariable doesn't reacquire the Mutex if Thread#kill-ed
- @larskanis Thanks for the report.
I also noticed it happens on RubyCI for Ruby 2.4 and earlier
(example: https://rubyci.org/logs/rubyci.s3.amazonaws.com/arch/ruby-2.4/log/20180905T105615Z.fail.html.gz)
I'm not sure what's best.
@... -
07:05 AM Bug #14999: ConditionVariable doesn't reacquire the Mutex if Thread#kill-ed
- > > So it seems it doesn't happen in Ruby <= 2.5 due to thread
> ...
I get this error on ruby-2.4.4 [i386-mingw32] and [i386-mingw32] while nightly builds of RubyInstaller: https://ci.appveyor.com/project/larskanis/rubyinstaller2-hbu... -
11:58 AM Feature #15076: Struct to raise error when keyword arguments used but not enabled
- > Will it be clearer if a error is raised instead rather than assigning data incorrectly ?
With the current keyword arguments implementation (see also: [Feature #14183]), we can't distinguish the mistaken situation with one that we re... -
10:23 AM Feature #15076 (Rejected): Struct to raise error when keyword arguments used but not enabled
- ```ruby
Info = Struct.new(:name, :country, keyword_init: true)
c = Info.new(name: "myname", country: "Japan")
p c #=> #<struct Info name="myname", country="Japan">
``` -
08:29 AM Feature #15076 (Rejected): Struct to raise error when keyword arguments used but not enabled
- When Struct is used to instantiate object with keyword arguments disabled and yet if instantiated using keyword arguments, the instance fields will be set incorrectly.
Will it be clearer if a error is raised instead rather than assig... -
11:09 AM Feature #15066: Documentation and providing better API for accessing Complex numbers functions in C extensions
- v0dro (Sameer Deshmukh) wrote:
> > Isn't it enough to just use rb_funcall() to call Ruby methods on Complex numbers?
> ...
The existing Ruby methods should already be fast enough for most cases.
C macros/functions for accessing the re... -
07:37 AM Feature #15066 (Feedback): Documentation and providing better API for accessing Complex numbers functions in C extensions
- v0dro (Sameer Deshmukh) wrote:
> > Isn't it enough to just use rb_funcall() to call Ruby methods on Complex numbers?
> ...
What APIs do you need?
A concrete list, please.
> > RCOMPLEX_SET_REAL and RCOMPLEX_SET_IMAG are internal mac... -
04:54 AM Feature #15066: Documentation and providing better API for accessing Complex numbers functions in C extensions
- > Isn't it enough to just use rb_funcall() to call Ruby methods on Complex numbers?
Calling Ruby methods in C extensions defeats the purpose of writing a C extension since a non-trivial number of Ruby method calls take up significant ... -
11:00 AM Feature #15074: Create 'official' C API documentation on ruby-doc.org
- I think this would be nice to have. Matz often said that nobody minds if ruby
becomes faster :) - and I think nobody will mind if the documentation becomes
better (qualitatively; but also somewhat more documentation in general).
The... -
05:13 AM Feature #15074 (Open): Create 'official' C API documentation on ruby-doc.org
- Currently working with Ruby C API is basically reading a bunch of random
blogs and coming up with a solution based on inputs from various sources
(some of which can be out of date).
The only relevant resource for C API docs with pra... -
06:18 AM Bug #15072 (Closed): thread.c:4356:5: error: implicit declaration of function ‘ubf_list_atfork’
- That fix worked, thanks! Committed with r64635, okay on travis, not sure about other CIs.
-
04:03 AM Bug #15072: thread.c:4356:5: error: implicit declaration of function ‘ubf_list_atfork’
- duerst@it.aoyama.ac.jp wrote:
> https://bugs.ruby-lang.org/issues/15072
I think copying the macro for win32 for the !USE_UBF_LIST
case should work(*). Can you test and commit if it works?
(too tired and might not be back online s... -
03:01 AM Bug #15072 (Closed): thread.c:4356:5: error: implicit declaration of function ‘ubf_list_atfork’
- When compiling on cygwin, I get the following error:
```
compiling thread.c
thread.c: In function ‘rb_thread_atfork_internal’:
thread.c:4356:5: error: implicit declaration of function ‘ubf_list_atfork’ [-Werror=implicit-function-de... -
06:04 AM Revision 4fcd9d70 (git): define ubf_list_atfork() as empty on cygwin
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
01:32 AM Bug #15069 (Closed): Backport "suppress warning: 'const' attribute on function returning 'void' "
- (Changing status to closed; it triggers backporting process. This doesn't mean rejection.)