Activity
From 05/28/2018 to 06/03/2018
06/03/2018
-
11:47 PM Feature #14819: Efficient cstring to RVALUE typecasting for c extension gems
- IPAddr and Date are stdlib, not core, so I don't think a C-API (rb_cstr2ipaddr, rb_cstr2date) method could be added for them unless it was part of the related extensions . Date is written in C, but IPAddr is written in ruby and doesn't h...
-
11:21 PM Feature #14819 (Open): Efficient cstring to RVALUE typecasting for c extension gems
- A general pattern I notice in the PG / MySQL and other gems is a general need for a C string to RVALUE type casting.
A lot of the problem is that the libpq likes returning strings and you do not want to allocate an extra RVALUE string... -
11:00 PM Bug #14817: TracePoint#parameters for bmethod's return event should return the same value as its Method#parameters
- invoke_bmethod で vm_exec が終わったあとに EXEC_EVENT_HOOK(ec, RUBY_EVENT_RETURN, ...) するため、このような挙動になっているようです。
これは仕様でしょうか。とりあえずささださんに振ります。 -
10:54 PM Bug #14817: TracePoint#parameters for bmethod's return event should return the same value as its Method#parameters
- TracePoint#parameters の問題ではなく、define_method + TracePoint 全般の問題のようです。
```
define_method(:bm) {|a|}
trace = TracePoint.new(:call, :return){|tp|
p [tp.event, tp.lineno] if tp.method_id == :bm
}
trace.enable{
bm(0)
}
```
... -
02:47 PM Bug #14817 (Closed): TracePoint#parameters for bmethod's return event should return the same value as its Method#parameters
- define_methodしたメソッド(bmethod)のcall/returnイベント中にTracePoint#parametersを呼び出すと
以下の結果となります。
```
$ cat t.rb
define_method(:bm) {|a|}
p method_parameters: method(:bm).parameters
trace = TracePoint.new(:call, :return){|tp|
mid = tp... -
09:06 PM Feature #14815 (Closed): [PATCH] benchmark/driver.rb: add CPU time measurement targets
- Applied in changeset trunk|r63564.
----------
benchmark/driver.rb: add CPU time measurement targets
"Real" time is too unstable on my systems, hopefully counting
only CPU time can gain more reliable benchmark results.
[ruby-core:87362... - 09:06 PM Revision b3cb6dba (git): * 2018-06-04
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 09:06 PM Revision c27a8e87 (git): benchmark/driver.rb: add CPU time measurement targets
- "Real" time is too unstable on my systems, hopefully counting
only CPU time can gain more reliable benchmark results.
[ruby-core:87362] [Feature #14815]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63564 b2dd03c8-39d4-4d8f-98ff-82... -
07:46 PM Bug #14322: Inconsitency in command line options between 2.4 and 2.5
- yeeey, +1 for not silently breaking stuff :)
-
05:42 PM Bug #14322: Inconsitency in command line options between 2.4 and 2.5
- graywolf (Gray Wolf) wrote:
> out of curiosity, why there was no deprecation phase for this change?
This commit on Mar 3, 2018 did deprecate it, but it says that ubygems.rb may be removed on or after Dec 1, 2018. https://github.com/r... -
07:23 PM Bug #14818 (Closed): [Docs] Backport r63112 to ruby 2.5
- Please backport r63112 (https://github.com/ruby/ruby/commit/23228b6e3139fb33d42f6dae4ec9bdabb21e52b2) since the bug also applies to ruby-2.5 documentation.
-
02:06 PM Bug #14816 (Closed): Extension build failure on a system with musl libc
- Some extensions fail to build on a Linux with musl (Void Linux). Build of unf_ext is an example.
isinf() and isnan() are defined as macros in musl: https://git.musl-libc.org/cgit/musl/tree/include/math.h
https://github.com/gliderlabs/... -
05:11 AM Feature #14694 (Closed): TracePoint#parameters
- Applied in changeset trunk|r63562.
----------
Add TracePoint#parameters
It can be used to get the parameters' information of method and block.
There was no way to get block parameters.
It was possible but ineffective to get method para... - 05:10 AM Revision ce7c531c (git): * properties.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
05:10 AM Revision cd0fec37 (git): Add TracePoint#parameters
- It can be used to get the parameters' information of method and block.
There was no way to get block parameters.
It was possible but ineffective to get method parameters via Method
object: `tp.defined_class.method(tp.method_id).parameter... -
02:47 AM Feature #14739: Improve fiber yield/resume performance
- I've made a short blog post about this PR: https://www.codeotaku.com/journal/2018-06/improving-ruby-fibers/index
06/02/2018
-
11:31 PM Feature #14815 (Closed): [PATCH] benchmark/driver.rb: add CPU time measurement targets
- benchmark/driver.rb: add CPU time measurement targets
"Real" time is too unstable on my systems, hopefully counting
only CPU time can gain more reliable benchmark results.
- 11:05 PM Revision 25d18918 (git): * 2018-06-03
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
11:05 PM Revision 8ce71b61 (git): Promote Prime library to default gems.
- * Its upstream is https://github.com/ruby/prime.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
10:54 PM Feature #14814 (Closed): rb_vm_insn_addr2insn: use sto to perform addr2insn mapping
- The current VM_INSTRUCTION_SIZE is 198, so the linear search
becomes a bit painful.
I noticed rb_vm_insn_addr2insn2 showing up at the top of some
profiles while working on some malloc-related stuff, so I
decided to attack it.
Wi... -
02:05 PM Feature #14813 (Assigned): [PATCH] gc.c: make gc_enter+gc_exit pairs dtrace probes, too
- gc.c: make gc_enter+gc_exit pairs dtrace probes, too
I would like to use these with systemtap to gather
min/max/avg/variance data for gc_*_continue functions.
I prefer to use systemtap/dtrace and not modify or load extra
Ruby cod... -
01:57 PM Revision 1dd43218 (git): Promote Logger to default gems.
- * Its upstream is https://github.com/ruby/logger.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:55 PM Revision 46ec01cb (git): Fixed wrong variable name.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
12:29 PM Misc #14812 (Closed): Question: Option Parser
- Hi,
Is there an option / way to ignore undeclared options and get them in a resultset so, I can handle them in a custom way?
Example scenario: Program A redirects unsupported arguments to another Program B called from inside progra... -
12:17 PM Revision 8a4656c9 (git): gmake.mk: update in the source directory properly
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
08:46 AM Feature #13396: Net::HTTP has no write timeout
- I just noticed that just use write_nonblock can solve this ticket:
```diff
diff --git a/lib/net/protocol.rb b/lib/net/protocol.rb
index 7ec636b384..2a806caeb6 100644
--- a/lib/net/protocol.rb
+++ b/lib/net/protocol.rb
@@ -77,6 +7... - 08:36 AM Revision 295b1c5e (git): * properties.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
08:36 AM Revision 14e19692 (git): Added test for default gems validation.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
07:50 AM Revision 7495b2d2 (git): enum.c: bignum counter
- * enum.c (imemo_count_up, imemo_count_value): promote the counter
value to a bignum on overflow. [Bug #14805]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
07:04 AM Revision 4973f304 (git): Fixed wrong require path
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:02 AM Revision 0f5b6752 (git): Promote REXML to default gems.
- * upstream repostiory is https://github.com/ruby/rexml
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
05:12 AM Feature #14811 (Open): Dynamically extend Ruby VM stack
- We (Keita Sugiyama and me) have presented the work on dynamically extending the Ruby VM stack today at RubyKaigi 2018 in Senday,
see http://rubykaigi.org/2018/presentations/sugiyama-k.html.
This is an issue to discuss when and how to... -
04:33 AM Feature #14808 (Rejected): Last token of endless range should have EXPR_END
- That code is valid syntax in both versions, and it is *not* an endless range in the trunk as well as 2.5.
As `..` is an infix operator and requires the RHS, newlines following it are just ignored.
So it equals to:
```ruby
case 5
whe... -
01:23 AM Feature #14808 (Rejected): Last token of endless range should have EXPR_END
- In 2.5.1:
```ruby
irb(main):001:0> require 'ripper'
irb(main):002:0> pp Ripper.lex("case 5\nwhen 3..\n puts(true)\nend\n")
[[[1, 0], :on_kw, "case", EXPR_BEG],
[[1, 4], :on_sp, " ", EXPR_BEG],
[[1, 5], :on_int, "5", EXPR_END|E... -
04:17 AM Bug #14543: `make commit` show error of `common-srcs`
- I discussed about this with nobu.
```
941:common-srcs: $(srcs_vpath)parse.c $(srcs_vpath)lex.c $(srcs_vpath)enc/trans/newline.c $(srcs_vpath)id.c \
```
nobu copied above files by his own tool before `make commit`. I requested to ... -
03:49 AM Bug #14810 (Closed): Segfault during travis build (Ruby trunk 63545)
- I'm not sure what information would be helpful, so here's a link to the log: https://travis-ci.com/brian-kephart/rspec-rails/jobs/127220659#L2339
Please let me know if I can provide any more assistance, or present this in a more helpf... -
03:30 AM Bug #14809 (Closed): calc_lineno() returns wrong location
- r62051のコミット以降
```
$ cat -n t.rb
1 class String
2 def -@
3 p caller_locations(1, 1)[0]
4 end
5 end
6
7 -""
$ ruby-trunk t.rb
"t.rb:1:in `<main>'"
$ ruby-2.5 t.rb
"t.rb:7:in `... -
02:39 AM Revision 6bb70c11 (git): enum.c: mitigate overflows
- * enum.c (enum_count): convert counters to Integer as unsigned
long, instead of long, to mitigate overflows.
[ruby-core:87348] [Bug #14805]
* enum.c (ary_inject_op): ditto.
* enum.c (each_with_index_i): ditto, instead of int.
* en... -
01:34 AM Feature #14739: Improve fiber yield/resume performance
- Here is a more realistic benchmark which fiber context switch is only a tiny percentage of the actual run-time.
A brief summary of the benchmark: `async-http` uses an event-driven stackful coroutine (fiber) based design. Each request ... -
01:07 AM Feature #14739: Improve fiber yield/resume performance
- I fixed autoconf issues and built on Linux. The performance improvement was even more impressive.
```
koyoko% ruby --version
ruby 2.6.0dev (2018-06-01 native-fiber 63544) [x86_64-linux]
last_commit=Better support for amd64 platform... -
01:23 AM Bug #14387: Ruby 2.5 を Alpine Linux で実行すると比較的浅めで SystemStackError 例外になる
- jnardone (joe nardone) wrote:
> it's frustrating that this is still open after four months. alpine-ruby-2.5 is borderline unusable with this still in Ruby. do we know if @ncopa is still working on this issue or not?
I wrote 0001-t... -
01:14 AM Revision ccc52902 (git): Promote RSS library to default gems.
- Its upstream was moved to https://github.com/ruby/rss.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:02 AM Bug #14793 (Closed): Hash returned from CGI.parse has [] as default value
-
12:51 AM Bug #14805 (Closed): Enumerator#count is silently limited to int32
- Applied in changeset trunk|r63549.
----------
memo->u3.cnt is long not int [Bug #14805] -
12:51 AM Revision 9b6175b2 (git): memo->u3.cnt is long not int [Bug #14805]
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63549 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
06/01/2018
-
11:21 PM Feature #14739: Improve fiber yield/resume performance
- I've made a new branch with the new implementation above.
It shows a slightly improved performance improvement over `libcoro`.
Here is without the PR:
```
^_^ > ./build/bin/ruby ./fiber_benchmark.rb 10000 1000
setup time for 1... -
10:45 PM Bug #14804: GzipReader cannot read Freebase dump (but gzcat/zless can)
- (Note that `f.each_line.count` would return the wrong result anyway, due to https://bugs.ruby-lang.org/issues/14805 , since 3130753066 is outside int32 range, but it doesn't have the chance to do so, on account of stopping prematurely.)
-
07:27 AM Bug #14804 (Closed): GzipReader cannot read Freebase dump (but gzcat/zless can)
- This is likely related to https://stackoverflow.com/questions/35354951/gzipstream-quietly-fails-on-large-file-stream-ends-at-2gb (and its accepted answer).
The file in question: http://commondatastorage.googleapis.com/freebase-public/... -
10:35 PM Bug #14805: Enumerator#count is silently limited to int32
- It's interestingly also negative on JRuby. Headius noted in the #ruby IRC channel that [this patch](https://gist.github.com/headius/7296808402fd2fae496310cf0baa7239) would fix the issue for JRuby.
It's positive in TruffleRuby.
It's... -
09:32 AM Bug #14805: Enumerator#count is silently limited to int32
- Confirmed on trunk.
-
07:41 AM Bug #14805 (Closed): Enumerator#count is silently limited to int32
- One takes for granted that integers will be promoted into bigints in Ruby when needed.
Not so with `Enumerator#count`:
2147483647.times.count
# => 2147483647
2147483648.times.count
# => -2147483648
(notice the ... -
10:23 PM Bug #14807: 2.6.0-preview2 segfaults on OpenBSD due to missing pthread_condattr_init call
- normalperson (Eric Wong) wrote:
> Btw, is PTHREAD_COND_INITIALIZER supported on OpenBSD?
It's defined but I don't think it would be usable:
~~~
/usr/include/pthread.h:#define PTHREAD_COND_INITIALIZER NULL
~~~ -
10:12 PM Bug #14807: 2.6.0-preview2 segfaults on OpenBSD due to missing pthread_condattr_init call
- Thanks, r63548
Btw, is PTHREAD_COND_INITIALIZER supported on OpenBSD?
Something like this:
```
--- a/thread_pthread.c
+++ b/thread_pthread.c
@@ -55,7 +55,7 @@ static struct {
#if defined(HAVE_PTHREAD_CONDATTR_SETCLOCK) && \
... -
08:51 PM Bug #14807 (Closed): 2.6.0-preview2 segfaults on OpenBSD due to missing pthread_condattr_init call
- r63238 refactored thread_pthread.c, and where there was previously a pthread_condattr_init call to initialize the pthread_condattr_t value, it removed the call and passed the pthread_condattr_t* directly to pthread_condattr_setclock with...
- 09:56 PM Revision 832b601e (git): Initialize condattr_monotonic via pthread_condattr_init
- Some operating systems will work without calling
pthread_condattr_init, but some won't (such as OpenBSD). Prior
to r63238, pthread_condattr_init was always called before
calling pthread_condattr_setclock.
From: Jeremy Evans <code@jeremy... - 09:23 PM Revision 24c6231e (git): * 2018-06-02
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 09:23 PM Revision 3eb12cb6 (git): gc.c: reduce size slightly by making MEMOP_TYPE_MALLOC zero
- Most (if not all) architectures have instructions for comparing
against zero, allowing compilers to generate more compact code.
Other MEMOP_TYPE_* enum values are not compared in hot paths,
but MEMOP_TYPE_MALLOC is checked in objspace_m... -
01:10 PM Revision afbf10e8 (git): Added missing dependency for ast.c.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
09:45 AM Feature #14801: New method 'show_stack' to show Ruby stack(s) when program is running
- A bit of feedback as asked by Martin; I'll skip the implementation detail part since
I do not know C so others have to comment on that part.
- The name: I think the name is ok in "itself", that is, if we see "show_stack",
we can und... -
02:27 AM Feature #14801 (Open): New method 'show_stack' to show Ruby stack(s) when program is running
- It would be great to have a method to show the Ruby stack(s) (there are actually two of these) while a Ruby program is running. This would help people to understand how Ruby works internally. There is functionality in Ruby already to pri...
-
09:29 AM Feature #14802: Update Unicode data to Unicode Version 11.0.0
- All power to the emoji. \o/
-
05:16 AM Feature #14802 (Closed): Update Unicode data to Unicode Version 11.0.0
- Unicode Version 11.0.0 will be published sometimes later this year, probably in late June. This is an issue to manage updating Ruby to Unicode 11.0.0. Details to follow.
-
08:26 AM Bug #14806 (Closed): Partially backport r63300: Make --with-soname actually work on macOS
- r63300 was mainly about changing the default names, but also included a fix for --with-soname to take effect.
So, please partially backport r63300 to 2.3, 2.4 and 2.5 using the attached patches.
Merging this along with #14803 makes -... -
07:22 AM Bug #14803 (Closed): Backport r63544: Fix name clash issue with --with-soname
- 07:13 AM Revision 6251615c (git): Skip colliding filenames in LIBRUBY_ALIASES
- This allows user to specify any name in `--with-so-name` that might
cause a name clash with LIBRUBY_ALIASES on the platform.
Without this, for example, configuring with `--with-soname=ruby
--enable-shared` on macOS would end up running ... -
06:53 AM Revision ce2f4f85 (git): string.c: trivial optimizations
- * string.c (rb_str_aset): prefer BUILTIN_TYPE over TYPE after
SPECIAL_CONST_P check.
* string.c (rb_str_start_with): prefer RB_TYPE_P over switch by
TYPE.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63543 b2dd03c8-39d4-4d8f-9... - 06:37 AM Revision ccdcc730 (git): * 2018-06-01
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:37 AM Revision 87ccf7e5 (git): string.c: doc for [Feature #13712]
- * string.c (rb_str_start_with): [DOC] start_with? example with
regexp.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63541 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:26 AM Bug #14795: Should 'net/http' require 'net/http/status' ?
- jeremyevans0 (Jeremy Evans) wrote:
> tonytonyjan (Wei-Hang Jian) wrote:
> ...
Hi Jeremy, thank you for the reference, I didn't know that thread before (It seems like there has not been a conclusion yet :(
By the way, I can see that... -
05:11 AM Bug #14795: Should 'net/http' require 'net/http/status' ?
- tonytonyjan (Wei-Hang Jian) wrote:
> IMHO, I would suggest use `Kernel::autoload`, thus we don't need to type `net/http/status` when we want it, and they will never be loaded into memory until we try to access the constant `STATUS_CODES... -
04:57 AM Bug #14795: Should 'net/http' require 'net/http/status' ?
- IMHO, I would suggest use `Kernel::autoload`, thus we don't need to type `net/http/status` when we want it, and they will never be loaded into memory until we try to access the constant `STATUS_CODES`. Isn't it win-win?
-
03:14 AM Bug #14795: Should 'net/http' require 'net/http/status' ?
- net/http itself doesn't need net/http/status.
Therefore at this time it's intentional.
Though I may change it if there's a reasonable use case to require it. -
06:03 AM Bug #14793: Hash returned from CGI.parse has [] as default value
- FYI: https://github.com/ruby/ruby/blob/fef8339f582b125e1fec5f3d47adbb48f7cede92/lib/cgi/core.rb#L393
-
03:10 AM Bug #14015: Enumerable & Hash yielding arity
- Here's more code to show how the situation is complicated.
I don't know which of these can be considered bugs and which are as per spec.
The method `check` below checks if a method accepting one argument (`one`) or two arguments (`two`... -
03:00 AM Feature #14217: Expose RUBY_PATCHLEVEL_STR or similar with patch level info for rc/preview as a constant
- Could you elaborate how you want to use it?
-
12:06 AM Bug #14789 (Third Party's Issue): Debian 9, ARM, rails 5.2.0 not works.
- Tivgres (Sergey D) wrote:
> Yeah, with disabled gem it's worked.
> ...
Thanks for the report anyways!
05/31/2018
-
11:17 PM Feature #14594: Rethink yield_self's name
- Right. I am not against the idea of function composition. But it should be discussed separately from `yield_self` and `then`. Remember I rejected #13600 but not #6284.
Matz.
-
11:08 PM Feature #14594: Rethink yield_self's name
- matz (Yukihiro Matsumoto) wrote:
> If you really wanted a non-unwrapping method for promises, use `yield_self`.
If I understand what you mean by "unwrapping" here, the new method still doesn't `call` yielded procs to make them compos... -
04:50 PM Feature #14594: Rethink yield_self's name
- @jrochkind It is introduced that a normal object can behave like promises.
So the name conflict is intentional.
If you really wanted a non-unwrapping method for promises, use `yield_self`.
Matz.
-
01:01 PM Feature #14594: Rethink yield_self's name
- I'm concerned that `then` is used in Promises, and is already in use in many promise-implementing libraries, including [concurrent-ruby](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Promise.html).
The Promise librarie... -
05:02 PM Bug #14789 (Closed): Debian 9, ARM, rails 5.2.0 not works.
-
05:01 PM Bug #14789: Debian 9, ARM, rails 5.2.0 not works.
- shyouhei (Shyouhei Urabe) wrote:
> > /home/tivgres/.rvm/gems/ruby-2.4.1/gems/bootsnap-1.3.0/lib/bootsnap/compile_cache/iseq.rb:18: [BUG] Bus Error at 0x2b7dff9
> ...
Yeah, with disabled gem it's worked.
Thanks for a help. Troubles not... -
04:48 PM Feature #14217: Expose RUBY_PATCHLEVEL_STR or similar with patch level info for rc/preview as a constant
- Is it possible to get any updates on this approach? :)
-
02:32 PM Feature #14800 (Open): Zlib::GzipReader#read does not support 2nd argument
- `Zlib::GzipReader#read` does not support 2nd argument for output buffer.
It is not same as `IO#read` and `StringIO#read`.
It is useful for duck typing to copy both plain files and gzipped files.
See also
* https://docs.ruby-lang... -
01:01 PM Feature #14799: Startless range
- Rails devs could also make use of this, e.g. in [queries](http://guides.rubyonrails.org/active_record_querying.html#range-conditions).
-
11:39 AM Feature #14799 (Assigned): Startless range
- I tried begin-less range once, and it caused many parser conflicts, so I gave up.
However, I've tried it again and created a patch with no conflicts.
A proof-of-concept patch is attached. It uses the damn lexer state, so I'd like no... -
09:51 AM Feature #14799: Startless range
- > except it seems endless range does not raise for #reverse_each :)
Funny!
Though, in fact, raises some big questions about `Enumerable` implementations. As far as I can understand, most of `Enumerable`'s methods aren't redefined ... -
09:31 AM Feature #14799: Startless range
- zverok (Victor Shepelev) wrote:
> > how should `Range#each` work for this kind of ranges?
> ...
Sounds reasonable, except it seems endless range does not raise for #reverse_each :)
```
zsh % ruby -ve '(1..).reverse_each {|i| p i }'... -
09:14 AM Feature #14799: Startless range
- > how should Range#each work for this kind of ranges?
Most probably it should not (the same as `Enumerable#reverse_each` or `last(5)` doesn't have a sense for already implemented endless ranges), just raise. -
08:10 AM Feature #14799: Startless range
- No strong opinion on this. However let me leave one question: how should `Range#each` work for this kind of ranges?
-
07:56 AM Feature #14799 (Closed): Startless range
- On introduction of endless range at #12912, "startless range" was discussed this way:
> @sowieso: Not having the opposite (`..5` and `..-2`) feels like this is rather a hack than a thoroughly planned feature.
> ...
In the context o... -
09:30 AM Revision fef8339f (git): vm_args.c: refined warning splat to var
- * vm_args.c (setup_parameters_complex): refine the warning message
for a splat hash which was passed to a single variable instead
of keyword arguments. this behavior will be changed when the
"real" keyword argument is introduced i... -
07:10 AM Revision a6273888 (git): fix the condition
- * test/ruby/test_rubyoptions.rb: Process.wait with WNOHANG returns
nil while the target process is alive.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:57 AM Revision 83b14c26 (git): test_rubyoptions.rb: relax timeout
- * test/ruby/test_rubyoptions.rb: wait for setting process title
until the child process dies, in the case of extra heavy loads.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:25 AM Revision 9e82c4f1 (git): NEWS: Add RubyVM::AST
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:24 AM Revision d4a6aaa1 (git): Undef RubyVM::AST::Node.new
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:13 AM Revision 46463af9 (git): Define AST module under RubyVM [experimental]
- * ext/-test-/ast/ast.c: Rename to ast.c
and define AST module under RubyVM.
* common.mk: compile ast.c.
* ext/-test-/ast/extconf.rb: Don't need this file anymore.
* inits.c (rb_call_inits): Call Init_ast to setup AST module.
* test/-ex... - 05:49 AM Revision c7c96353 (git): * 2018-05-31
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63533 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
05:49 AM Revision a97d22a0 (git): ast.c: Do not taint TOPLEVEL_BINDING
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
05/30/2018
-
11:01 PM Misc #14798 (Closed): [PATCH] gc.c: reduce parameters for gc_start and garbage_collect
- ```
Every time I look at gc.c, I get confused by argument ordering:
gc_start(..., TRUE, TRUE, FALSE, ...)
gc_start(..., FALSE, FALSE, FALSE, ... )
While we do not have kwargs in C, we can use flags to improve readability:
g... -
10:04 PM Feature #14757: [PATCH] thread_pthread.c: enable thread cache by default
- ko1 brought up a good point: this may interact badly with
3rd-party libraries which use thread-local storage via
pthread_getspecific/pthread_setspecific (or compiler
extensions).
On one hand, I expected this to be beneficial for ... -
08:24 PM Feature #14546: Hash#delete!
- duerst (Martin Dürst) wrote:
> it would be a bad idea to use a bang method in a context (such as delete) where it can be very easily mistaken as a mutating version (and by opposition, the non-bang method would be misunderstood as a non-... -
01:58 PM Feature #14794: Primitive arrays (Ruby 3x3)
- btw: 40% of arrays on my rails app contains only primitive elements
-
01:27 PM Feature #14794: Primitive arrays (Ruby 3x3)
- I'm interested to improve Ruby array's performance without specifying custom types or C extensions, it should just work out of the box.
```ruby
Numo::Int32.new(1,100)
Array.new(100, type: :integer)
```
or something like that isn't... -
02:26 AM Feature #14794: Primitive arrays (Ruby 3x3)
- Use numo-narray or nmatrix for homogeneous numeric arrays.
https://github.com/ruby-numo/numo-narray
https://github.com/SciRuby/nmatrix -
01:03 PM Revision b9212a77 (git): Ignore bundler assertions on ruby core test suite.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 01:01 PM Revision af9b1c95 (git): * properties.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 01:01 PM Revision 50181419 (git): * remove trailing spaces.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
01:01 PM Revision 8da8d4b0 (git): Merge RubyGems 3.0.0.beta1.
- * It drop to support < Ruby 2.2
* Cleanup deprecated methods and classes.
* Mark obsoleted methods to deprecate.
* and other enhancements.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e - 11:49 AM Revision c5cb386e (git): NEWS: clarify item about built-in thread cache
- [Feature #14757]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
11:33 AM Bug #14795: Should 'net/http' require 'net/http/status' ?
- shevegen@gmail.com wrote:
> I think it would make sense, given how important http status codes
> are in general (and people who use net/http may also usually deal
> with http status codes).
I disagree, nothing in net/http client c... -
07:15 AM Bug #14795: Should 'net/http' require 'net/http/status' ?
- I think it would make sense, given how important http status codes
are in general (and people who use net/http may also usually deal
with http status codes). -
09:13 AM Revision 162adb82 (git): Workaround for old LibreSSL
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
08:25 AM Feature #14594 (Closed): Rethink yield_self's name
- Applied in changeset trunk|r63525.
----------
object.c: Add a new alias `then` to `Kernel#yield_self`; [Feature #14594] -
08:24 AM Revision d53ee008 (git): object.c: Add a new alias `then` to `Kernel#yield_self`; [Feature #14594]
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
07:14 AM Bug #14796 (Closed): improper passing of &block - causes crash on MacOS 10.13.4 (17E202) with Ruby 2.5.0 within Rbenv
- Situation confirmed in 2.5.0, but seems fixed in 2.5.1. Try a newer version.
-
06:42 AM Bug #14796 (Closed): improper passing of &block - causes crash on MacOS 10.13.4 (17E202) with Ruby 2.5.0 within Rbenv
- offending code:
```ruby
def assert(message="", &block)
raise ArgumentError, "#{message} invalid" unless block.call
end
def check_uid(attribs)
attribs[:uid] = attribs[:uid]&.strip
assert({not attri...
05/29/2018
- 11:28 PM Revision 47f9dd84 (git): * 2018-05-30
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
11:28 PM Revision 9fd0858c (git): fake.rb: fix RUBY_DESCRIPTION for MJIT
- * template/fake.rb.in: switch RUBY_DESCRIPTION at runtime
depending on the MJIT status.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
10:02 PM Bug #14795 (Closed): Should 'net/http' require 'net/http/status' ?
- net/http/status.rb has been added (#12935) but it is [not required from net/http.rb](https://github.com/ruby/ruby/blob/0342fcbd51f2f423541f862c8d8e35873d849963/lib/net/http.rb#L1629-L1642) while other net/http/*.rb files are already requ...
-
08:34 PM Feature #14718: Use jemalloc by default?
- bluz71 (Dennis B) wrote:
> Redis ships jemalloc 4.0.3 (or near to) as seen here:
> ...
The latest Redis 5, ships with Jemalloc 5.1
-
03:29 PM Feature #14794 (Feedback): Primitive arrays (Ruby 3x3)
- dynamic arrays in ruby can contain various object types:
```ruby
[1, 1.0, 'text', Object.new]
```
however if I create a primitive array, let say only with integers (very common case). It should be more efficient.
```ruby
[1, 2, 3... -
03:12 PM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
- Ksec (Ed Chick) wrote:
> HfCloud (Xiangyu Shi) wrote:
> ...
Sorry for so late my reply...
I do not know mruby very much, I saw the examples using it in C language, It looks nice, according to its interfaces I think it can realize mult... -
09:12 AM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
- HfCloud (Xiangyu Shi) wrote:
> shyouhei (Shyouhei Urabe) wrote:
> ...
Slightly off topic, have you consider mruby? -
07:33 AM Feature #14792 (Feedback): Multiple RubyVM in one process to make real multi-threading.
-
05:56 AM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
- shyouhei (Shyouhei Urabe) wrote:
> HfCloud (Xiangyu Shi) wrote:
> ...
Oh...I have seen the relative issues and know you are trying making it. Appreciate your work!.
It's really a lesson indicating that don't abuse global variables ... -
05:46 AM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
- HfCloud (Xiangyu Shi) wrote:
> shyouhei (Shyouhei Urabe) wrote:
> ...
Not yet. Ko1 is working on this area. See also https://www.youtube.com/watch?v=mjzmUUQWqco -
05:28 AM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
- shyouhei (Shyouhei Urabe) wrote:
> This is what we call the MVM feature. There has been rich amount of efforts to make it possible and still not available in a production-ready manner.
Is there any system API, which can divide threa... -
05:26 AM Feature #14792: Multiple RubyVM in one process to make real multi-threading.
- This is what we call the MVM feature. There has been rich amount of efforts to make it possible and still not available in a production-ready manner.
-
05:11 AM Feature #14792 (Closed): Multiple RubyVM in one process to make real multi-threading.
- This is an old problem, maybe running multiple RubyVM is a good way, which can really run ruby code in parallel in one process (Each thread runs a RubyVM)and be compatible with old codes(If some codes depend on the GIL, they can still ...
-
11:35 AM Feature #12732: An option to pass to `Integer`, `Float`, to return `nil` instead of raise an exception
- rbjl (Jan Lelis) wrote:
> Although it does not solve Aaron's use case, I would suggest to have a `Integer.try_convert`, `Float.try_convert`, `Rational.try_convert`, and `Complex.try_convert` which do not raise exceptions, but just retur... -
09:41 AM Bug #14791: String.sub wrong parsing of replacement with capturing group
- Thanks for help!
I don't unterstand, why five backslahes are required in single quotes. My understanding was that characters in single quotes won't get interpolated so two backslashes should be sufficient. -
05:17 AM Bug #14791 (Rejected): String.sub wrong parsing of replacement with capturing group
- Let me reject; this is not a bug.
-
08:47 AM Revision 0342fcbd (git): fake.rb: fix RUBY_DESCRIPTION for MJIT
- * template/fake.rb.in: reflect MJIT to RUBY_DESCRIPTION.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
08:46 AM Revision 2df80d30 (git): spec/ruby: revert r63503 and r63508
- When RUBY_DESCRIPTION has `+JIT` already, it will be doubled.
Just fake.rb.in always has copied `RUBY_DESCRIPTION`, regardless
MJIT is enabled or not. `BOOTSTRAPRUBY` is not involved.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6... -
05:49 AM Bug #14793: Hash returned from CGI.parse has [] as default value
- My mistake, it looks like all CGI values are always returned as arrays:
~~~
CGI.parse("x=y")
#=> {"x"=>["y"]}
~~~
Please close. -
05:39 AM Bug #14793 (Closed): Hash returned from CGI.parse has [] as default value
- Is there a valid reason for this behaviour? It looks like a bug to me:
~~~
require 'cgi'
params = CGI.parse("")
params["x"]
#=> []
~~~
(Expected nil)
I looked at history and it looks like it has been there from the very b... -
02:48 AM Revision d2c6ed6b (git): mjit_compile.c: drop catch table handling
- The loop for `vm_exce_handle_exception` doesn't trigger `mjit_exec`, so
I don't think this code is no longer needed.
This was needed in development of original version of this JIT, but it
seems not needed from the beginning (r62189) at ... -
01:58 AM Revision 8b9e877b (git): Unused macro and field
- * node.h (nd_cnt, struct RNode): nd_cnt has been unused
since r60239, and also cnt field.
* .gdbinit (nd_cnt): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:40 AM Revision 7db2db67 (git): Unused macro
- * node.h (nd_noex): nd_noex has been unused since r24128.
* .gdbinit (nd_noex): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:19 AM Revision 3d1a523d (git): Unused macro
- * node.h (nd_frml): nd_frml has been unused since r34134.
* .gdbinit (nd_frml): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e - 01:18 AM Revision 9e5354eb (git): NEWS: add item about built-in thread cache
- This change may impact design of future programs and obviate
thread pools in many cases, so it's worth a mention.
Anyways, this seems stable since r63499 [Feature #14757]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63516 b2dd03c8-... -
01:00 AM Revision d6d130c1 (git): Unused macro
- * node.h (nd_argc): nd_argc has been unused since r24128.
* .gdbinit (nd_argc): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63515 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
12:14 AM Bug #14789 (Feedback): Debian 9, ARM, rails 5.2.0 not works.
- > /home/tivgres/.rvm/gems/ruby-2.4.1/gems/bootsnap-1.3.0/lib/bootsnap/compile_cache/iseq.rb:18: [BUG] Bus Error at 0x2b7dff9
Seems failing inside of bootsnap. Can you disable it to see if the problem disappears?
05/28/2018
-
07:42 PM Misc #14769: DevelopersMeeting20180621Japan
- > I'm sorry again.
Don't worry - took us all a little to adapt to the new format. :) -
02:02 AM Misc #14769: DevelopersMeeting20180621Japan
- shyouhei (Shyouhei Urabe) wrote:
> wanabe (_ wanabe) wrote:
> ...
I'm sorry for my lack of explanation.
I want the issue status to be clear.
"Feedback", "Assigned", "3rd party's issue", "Rejected".
I just want to know "Who's ball?",... -
01:18 AM Misc #14769: DevelopersMeeting20180621Japan
- (sorry for the last message. was a mistake, deleted)
wanabe (_ wanabe) wrote:
> * CRuby uses `pthread_getattr_np()` result for stack-level-check after r59630, but the function behaviour is different in glibc and musl.
@wanbe wh... -
07:06 PM Bug #14790: DateTime.iso8601 parses incorrect ISO8601
- Yes, you are right. It was a bug after all but not in the way I originally thought :D.
Hanmac (Hans Mackowiak) wrote:
> you mean the offset right?
> ...
-
03:19 PM Bug #14790 (Closed): DateTime.iso8601 parses incorrect ISO8601
- Applied in changeset trunk|r63512.
----------
time.rb: fix parsing time zone in iso8601
* lib/time.rb (Time.xmlschema): a colon in time zone designator
can be omitted. [ruby-core:87277] [Bug #14790] -
01:36 PM Bug #14790: DateTime.iso8601 parses incorrect ISO8601
- you mean the offset right?
https://en.wikipedia.org/wiki/ISO_8601#Time_zone_designators says that "±hhmm" is valid too in iso8601
so i think the bug is more in Time because the offset should be valid?
Time itself does print it a... -
01:20 PM Bug #14790 (Closed): DateTime.iso8601 parses incorrect ISO8601
- I noticed it today when migrating to Time in my library but DateTime somehow parses incorrect ISO8601 dates. Technically that's a feature but I believe this behaviour is incorrect. Time#iso8601 behaves correctly in this case.
# Steps ... -
04:04 PM Feature #14788: `Hash#keys` Could Accept a Block
- How about `each_key`?
```ruby
{ 1 => '1', 2 => '2', 3 => '3', 4 => '4' }.each_key.select(&:odd?) # => [1, 3]
``` -
12:25 PM Feature #14788: `Hash#keys` Could Accept a Block
- I personally understand what Ryan suggested and meant; the example shows that he
can integrate the ".select" step .keys, through the use of block.
To me the example is also readable and the intent is clear, so in that particular
cas... -
07:35 AM Feature #14788: `Hash#keys` Could Accept a Block
- If I were you, I would rather request a new method named `Hash#select_keys` for that purpose.
-
06:19 AM Feature #14788: `Hash#keys` Could Accept a Block
- I don't like it.
From `keys {|k| k.something }` I wouldn't know what it does with the keys, if they would select or map the keys or both.
Is probably against that "least surprise" thing -
03:35 PM Revision dc2a979b (git): time.rb: fix parsing time zone in iso8601
- * lib/time.rb (Time.xmlschema): the minute in time zone designator
can be omitted together with the preceding colon.
[ruby-core:87277] [Bug #14790]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63514 b2dd03c8-39d4-4d8f-98ff-823f... -
03:25 PM Bug #14791: String.sub wrong parsing of replacement with capturing group
- need 5 or 6 (6 when using ")
~~~ ruby
"abc".sub(/(b)/, '\\\\\1') #=> "a\\bc"
"abc".sub(/(b)/, "\\\\\1") #=> "a\\\x01c"
"abc".sub(/(b)/, "\\\\\\1") #=> "a\\bc"
~~~
but be careful that irb returns inspected value, that is impor... -
02:28 PM Bug #14791: String.sub wrong parsing of replacement with capturing group
- Can you give a solution for my second example?
~~~ ruby
"abc".sub(/(b)/, '\\1') # doesn't works, should be "a\bc"
~~~
I want to replace the 'b' with '\b'. How many backslashes do I need?
The #sub method has problems with consecuti... -
02:01 PM Bug #14791: String.sub wrong parsing of replacement with capturing group
- read the Docs:
~~~
If replacement is a String it will be substituted for the matched text. It may contain back-references to the pattern's capture groups of the form "\d", where d is a group number, or "\k<n>", where n is a group nam... -
01:44 PM Bug #14791 (Rejected): String.sub wrong parsing of replacement with capturing group
- ~~~ ruby
irb(main):001:0> "abc".sub(/(b)/, '#\1#') # works
=> "a#b#c"
irb(main):002:0> "abc".sub(/(b)/, '\\1') # doesn't works, should be "a\bc"
=> "abc"
irb(main):003:0> "abc".sub(/(b)/, '\\\1') # doesn't works, should be "a\\bc"
... - 03:19 PM Revision 7b4671f0 (git): * 2018-05-29
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:19 PM Revision 71fed537 (git): time.rb: fix parsing time zone in iso8601
- * lib/time.rb (Time.xmlschema): a colon in time zone designator
can be omitted. [ruby-core:87277] [Bug #14790]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
02:24 PM Revision 3e2ff59f (git): Unused macro and field
- * node.h (nd_cfnc, struct RNode): nd_cfnc has been unused
since r49938, and also cfunc field.
* .gdbinit (nd_cfnc): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
12:22 PM Bug #14789 (Third Party's Issue): Debian 9, ARM, rails 5.2.0 not works.
- Hello, I try to use rails at orange pi board on armbian (debian 9 for ARM), but it's have a bug?
ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [armv7l-linux-eabihf]
`rails -v
/home/tivgres/.rvm/gems/ruby-2.4.1/gems/bootsnap-... -
12:00 PM Feature #12906: do/end blocks work with ensure/rescue/else
- Old issue, but still perhaps the right place to mention this: the new syntax ONLY works in do/end, not in {} blocks (as mentioned above.)
It also does not work in "block-like" places like a for loop. So this is not valid syntax:
``... - 12:42 AM Revision dceecfb6 (git): * 2018-05-28
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
12:42 AM Revision 1f4796a1 (git): Merge etc gemspec from github repository.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e