Project

General

Profile

Activity

From 04/19/2018 to 04/25/2018

04/25/2018

07:45 PM Feature #14709: Proper pattern matching
On considering a bit more, I've come up with a few syntax variants for such a feature.
Preference towards avoiding `%p` and other shorthands in favor of a more self-descriptive word like `matches` or `match`.
### 1. matches
Ther...
baweaver (Brandon Weaver)
05:22 AM Feature #14709: Proper pattern matching
## On Pattern Matching in Other Languages
For continuity, we should also go over implementations in other languages.
Note that I am not an expert in any of these languages, and only proficient in Javascript. I would encourage other...
baweaver (Brandon Weaver)
02:53 AM Feature #14709: Proper pattern matching
It should also be mentioned that the way I achieved the pattern matching mentioned above was by using a status container in the style of Elixir (`{:ok, result}` except `[true, result]`):
https://github.com/baweaver/qo/blob/83577f80a47...
baweaver (Brandon Weaver)
01:35 AM Feature #14709: Proper pattern matching
It was mentioned to me on Reddit that I should detail exactly what cases of pattern matching would entail.
For the case of Qo, these include four primary categories:
* Array matches Array
* Array matches Object
* Hash matches Has...
baweaver (Brandon Weaver)
12:39 AM Feature #14709: Proper pattern matching
I am the author of aforementioned Qo, so I believe I can shed some light on a few things:
* The thinking behind Qo
* Reusable syntax features
* Making it feel like Ruby
* Shortcomings of current syntax
* Performance considerations...
baweaver (Brandon Weaver)
05:35 PM Bug #14712 (Closed): test_step does not work for implementations with full 64-bit fixnum
In test/ruby/test_numeric.rb, in test_step, there's the following logic:
```ruby
assert_operator((0.0).step(bignum.to_f, 1.0).size, :>=, bignum) # may loose precision
```
where bignum is
```
bignum = RbConfig::LIMITS['FIXNUM_...
headius (Charles Nutter)
04:53 PM Feature #14701: If the object is not frozen, I want to be able to redefine the compound assignment operator.
I agree with matz.
Python's inplace operators sound like a fundamental design flaw to me,
because `a += b` is no longer `a = a + b` but sometimes something completely different and there is no way to differentiate at the source level...
Eregon (Benoit Daloze)
03:22 PM Feature #14701: If the object is not frozen, I want to be able to redefine the compound assignment operator.
ANOTHER IDEA:
How about allowing to redefine `+!` instead of `+=` although it looks not intuitive for me, but it would be a ruby way.
sonots (Naotoshi Seo)
03:19 PM Feature #14701: If the object is not frozen, I want to be able to redefine the compound assignment operator.
> Use append instead of += for arrays.
`+=` operation for NArray is totally different with `append` for ruby array.
What we want to do with `+=` operation for NArray is to do element-wise addition like
```
narray([1, 2, 3]) += na...
sonots (Naotoshi Seo)
02:00 PM Revision 6509c178 (git): [DOC] Fix capitallizing [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63260 b2dd03c8-39d4-4d8f-98ff-823fe69b080e znz (Kazuhiro NISHIYAMA)
11:57 AM Bug #14711 (Closed): URI::HTML5ASCIIINCOMPAT returns expression
Applied in changeset trunk|r63259.
----------
common.rb: unused constant
* lib/uri/common.rb (URI::HTML5ASCIIINCOMPAT): remove the constant
which has been unused since r40460, and wrong since r49069 due
to the operator precedence. ...
nobu (Nobuyoshi Nakada)
07:00 AM Bug #14711 (Closed): URI::HTML5ASCIIINCOMPAT returns expression
Since Ruby 2.3.0 URI::HTML5ASCIIINCOMPAT returns expression instead of an array.
I guess it's a backward compatibility issue.
```
➜ ~ RBENV_VERSION=2.2.5 ruby -e "require 'uri'; p URI::HTML5ASCIIINCOMPAT"
[#<Encoding:UTF-7 (dum...
aderyabin (Andrey Deryabin)
11:56 AM Revision 27e97285 (git): common.rb: unused constant
* lib/uri/common.rb (URI::HTML5ASCIIINCOMPAT): remove the constant
which has been unused since r40460, and wrong since r49069 due
to the operator precedence. [ruby-core:86678] [Bug #14711]
git-svn-id: svn+ssh://ci.ruby-lang.org/rub...
nobu (Nobuyoshi Nakada)
10:43 AM Bug #12305: "can't remove str from str_id" at unregister_sym
Was there any resolution to this issue? We are encountering the same issue now that we have upgraded our Ruby from 2.1.6 to 2.3.3. This happens randomly throughout our framework when we are trying to run regression.
Any and all infor...
eramsey (Eric Ramsey)
08:16 AM Revision 512041bf (git): Avoid "should_not raise_error" in Thread#raise spec
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Eregon (Benoit Daloze)
08:15 AM Revision 9498d66c (git): Fix style in Thread#raise spec
* Add space after { and before }.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eregon (Benoit Daloze)
08:11 AM Revision 66058dd5 (git): Use Thread.pass in loop{} to check interrupts more often
* The spec now runs in ~5ms vs ~100ms before.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63256 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eregon (Benoit Daloze)
08:03 AM Misc #14698: DevelopersMeeting20180517Japan
> please follow the format to make easy to copy&paste.
@ko1 I've updated my comment with a list of "functional programming" tickets.
zverok (Victor Shepelev)
01:54 AM Misc #14698: DevelopersMeeting20180517Japan
Hi,
I will copy & paste topics to ticket's "description" later so that please follow the format to make easy to copy&paste.
mrkn's exmaple is perfect:
```
* [Feature #14697] Introducing Range#% as an alias to Range#step (mrkn)
...
ko1 (Koichi Sasada)
01:47 AM Misc #14698: DevelopersMeeting20180517Japan
I would also like to propose that this be discussed as it recently came up: https://bugs.ruby-lang.org/issues/14709
Though it may be premature.
baweaver (Brandon Weaver)
06:45 AM Bug #14708 (Closed): argument stack underflow (-1) (SyntaxError)
Applied in changeset trunk|r63255.
----------
compile.c: fix unconditional branch optimization
* compile.c (iseq_peephole_optimize): add dummy `putnil` after a
`jump` replacing an unconditional branch, to adjust removed
`dup`. [ru...
nobu (Nobuyoshi Nakada)
06:45 AM Revision 067066fc (git): compile.c: fix unconditional branch optimization
* compile.c (iseq_peephole_optimize): add dummy `putnil` after a
`jump` replacing an unconditional branch, to adjust removed
`dup`. [ruby-core:86666] [Bug #14708]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63255 b2dd03c8-39d...
nobu (Nobuyoshi Nakada)

04/24/2018

11:28 PM Feature #14710 (Open): I'd like to know from C API that "It has only one reference to Ruby object" to determine whether it is a temporary object.
I'd like to know from C API that "It has only one reference to Ruby object" to determine whether it is a temporary object.
Because broadcasting with python numpy is faster for
(1 line case)
y = x + 1 + 1
than
(2 ...
naitoh (Jun NAITOH)
08:32 PM Feature #14705 (Closed): [PATCH] eval.c (ruby_setup): disable THP on Linux
Applied in changeset trunk|r63253.
----------
eval.c (ruby_setup): disable THP on Linux
Transparent Huge Pages (THP) decrease the effectiveness of
CoW-friendly GC because it decreases page granularity. That is,
a forked process dirtyi...
normalperson (Eric Wong)
08:32 PM Revision b768dc22 (git): * 2018-04-25
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
08:31 PM Revision acbbf8b0 (git): eval.c (ruby_setup): disable THP on Linux
Transparent Huge Pages (THP) decrease the effectiveness of
CoW-friendly GC because it decreases page granularity. That is,
a forked process dirtying one bit of CoW-shared memory can
trigger a copy of a huge page (2MB on x86-64) instead ...
Eric Wong
07:35 PM Bug #13524: miniruby: [BUG] Segmentation fault at 0x0055e487e00230 ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-li
All, I modified Shyouhei's Dockerfile to use alpine3.7 and jemalloc 5.0.1 and it no longer segfaults:
~~~
FROM ruby:2.4.4-alpine3.7
~~~
~~~
Step 8/10 : ADD segv.c /tmp/segv.c
---> be86245150aa
Step 9/10 : RUN gcc -ljemall...
mperham (Mike Perham)
04:19 PM Feature #14709: Proper pattern matching
I think only matz can answer that.
On a side note, I am not aware of a issue request about it. Has this
already been suggested, or is it only a presentation? If it has not
yet been proposed formally through an issue request on the t...
shevegen (Robert A. Heiler)
03:19 PM Feature #14709 (Closed): Proper pattern matching
On RubyKaigi 2017, there was a [presentation](http://rubykaigi.org/2017/presentations/yotii23.html) of Yuki Torii about possible implementation of pattern matching.
The syntax proposed in presentation was:
```ruby
res = [:ng, 500]...
zverok (Victor Shepelev)
02:45 PM Bug #14708 (Closed): argument stack underflow (-1) (SyntaxError)
~~~
ruby -e '[].each { false || [].each { } }' # OK
ruby -e '[].each { nil.nil? || [].each { } }' # OK
ruby -e '[].each { true || [].each { } }'
-- raw disasm--------
<L498253648>
trace: 100
0000 nop ...
tim.leppard (Tim Leppard)
12:40 PM Feature #13683: Add strict Enumerable#single
How about `Enumerable#just(num=1)` or `Enumerable#only(num=1)`?
nobu (Nobuyoshi Nakada)
12:26 PM Bug #14707 (Closed): String#scan(/\K/) has changed its behavior in ruby 2.5
Applied in changeset trunk|r63252.
----------
string.c: fix scanned substring with `\K`
* string.c (scan_once): fix the matched substring with `\K`, the
beginning of that string may differ from the matched position.
[ruby-core:8666...
nobu (Nobuyoshi Nakada)
11:48 AM Bug #14707 (Closed): String#scan(/\K/) has changed its behavior in ruby 2.5
It seems `\K` does not work as expected any more:
```
% ruby -ve 'p "a1 a2 a3".scan(/a\K./)'
ruby 2.3.7p456 (2018-03-28 revision 63014) [x86_64-darwin17]
["1", "2", "3"]
ruby 2.4.5p297 (2018-03-29 revision 63036) [x86_64-darwi...
knu (Akinori MUSHA)
12:25 PM Revision 2c8f16e6 (git): string.c: fix scanned substring with `\K`
* string.c (scan_once): fix the matched substring with `\K`, the
beginning of that string may differ from the matched position.
[ruby-core:86663] [Bug #14707]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63252 b2dd03c8-39d4-4d8...
nobu (Nobuyoshi Nakada)
12:22 PM Feature #12607: Ruby needs an atomic integer
Should this issue be assigned to Matz? rosenfeld (Rodrigo Rosenfeld Rosas)
09:53 AM Feature #14706: Atomic Integer incr/decr
I guess this may come up several times in the future. Would
this be a good candidate for discussion in the upcoming
ruby developer meeting? I don't want to suggest it myself
since I was not the one who started the thread (that was
...
shevegen (Robert A. Heiler)

04/23/2018

11:46 PM Revision 3471d0f6 (git): rescue Errno::EPROTOTYPE
* test/webrick/test_httpserver.rb (test_gigantic_request_header):
Errno::EPROTOTYPE is sometimes raised on Mac OS X 10.10.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
09:40 PM Feature #14706: Atomic Integer incr/decr
Jeremy, good point. I would agree that the different semantics are enough to justify a different class. Namespacing it within the Thread class also seems reasonable, e.g. `Thread::Counter` so it would be available if you `require 'thre... mperham (Mike Perham)
09:27 PM Feature #14706: Atomic Integer incr/decr
Related ticket with some discussion already (and partially rejected) https://bugs.ruby-lang.org/issues/12607 rafaelfranca (Rafael França)
09:18 PM Feature #14706: Atomic Integer incr/decr
I think this feature in general is a good candidate for addition to stdlib.
I don't think the `Integer` class is appropriate for this, because (some) Integers are immediate values, and all Integers are frozen, and you can't modify the...
jeremyevans0 (Jeremy Evans)
09:08 PM Feature #14706: Atomic Integer incr/decr
I've always missed that feature as well, so I'm +1 to this. This and many other built-in thread-safe helpers by the way ;) rosenfeld (Rodrigo Rosenfeld Rosas)
08:53 PM Feature #14706 (Closed): Atomic Integer incr/decr
Ruby does not any thread-safe way to implement simple counters without a Mutex. Today Ruby provides Integer#succ but this funcalls "+", making it thread-unsafe as far as I know.
I'd propose adding Integer#incr(amount=1) and Integer#r...
mperham (Mike Perham)
04:20 PM Revision 6c4cab00 (git): * 2018-04-24
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
04:20 PM Revision f84efbaa (git): revert r63212
except test_jit.rb.
In some situations, this generates a wrong code. I'll add a test for it
later but let me revert this to make it work for now.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
01:56 PM Feature #14697: Introducing Range#% as an alias to Range#step
I'm supposing that this new notation of Range#step is mostly used for slicing numerical arrays like Numo::NArray.
This usecase is very similar to Python's slice notation used for slicing numpy's arrays.
With this new notation, `ary[:...
mrkn (Kenta Murata)
12:51 PM Revision 4cae5353 (git): compile.c: copy a short insn with leave
* compile.c (iseq_peephole_optimize): copy not only `leave`, with
a non-operand instruction, which are not longer than `jump`.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:09 PM Revision 425118b8 (git): [DOC] URI::Generic#port returns Integer [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63247 b2dd03c8-39d4-4d8f-98ff-823fe69b080e znz (Kazuhiro NISHIYAMA)
09:52 AM Revision c6ad7a62 (git): compile.c: insn before pop
* compile.c (iseq_peephole_optimize): more eliminatable
instructions before `pop` without side effects.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:02 AM Misc #14698: DevelopersMeeting20180517Japan
zverok (Victor Shepelev) wrote:
> > your favorite ticket numbers you want to ask to discuss with your SHORT comment or summary.
> ...
I would second this list, especially #6284 (composition of Procs) and #13581 (syntax sugar for method...
baweaver (Brandon Weaver)
07:00 AM Feature #13581: Syntax sugar for method reference
sevos (Artur Roszczyk) wrote:
> After a while I am becoming a bigger fan of the triple colon operator. We could implement a class MethodSelector for handling the logic and the operator would be expected to return an instance of the clas...
baweaver (Brandon Weaver)
05:54 AM Revision 87ca4f30 (git): test/ruby/test_io.rb: add extra Thread#join to delay close
Maybe this fixes some CI failures. Also, use different timeouts
for each item for hopefully easier diagnosis.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
02:07 AM Revision 1222560a (git): thread_pthread.c: fallback to CLOCK_REALTIME
* thread_pthread.c (Init_native_thread): fallback to the default
CLOCK_REALTIME when failed to set to CLOCK_MONOTONIC, e.g. on
Solaris. [Misc #14497]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63244 b2dd03c8-39d4-4d8f-98ff-8...
nobu (Nobuyoshi Nakada)

04/22/2018

10:33 PM Misc #12004: Code of Conduct
gabe@binti.com wrote:
> Issue #12004 has been updated by gkop (Gabe Kopley).
>
> matz (Yukihiro Matsumoto) wrote:
>> We have set our Code of Conduct.
>>
>> https://www.ruby-lang.org/en/conduct/
>>
>> I hope it works. We may upg...
spatulasnout (B Kelly)
10:21 PM Feature #14705 (Closed): [PATCH] eval.c (ruby_setup): disable THP on Linux
Transparent Huge Pages (THP) decrease the effectiveness of
CoW-friendly GC because it decreases page granularity. That is,
a forked process dirtying one bit of CoW-shared memory can
trigger a copy of a huge page (2MB on x86-64) inste...
normalperson (Eric Wong)
09:21 PM Feature #14703 (Closed): [PATCH] net/imap: set SO_KEEPALIVE on TCP sockets
Applied in changeset trunk|r63243.
----------
net/imap: set SO_KEEPALIVE on TCP sockets
Otherwise connections (commonly on IDLE, but it could be any
command) may never receive notifications of link errors.
[ruby-core:86628] [Feature #...
normalperson (Eric Wong)
09:21 PM Revision c4056a4a (git): net/imap: set SO_KEEPALIVE on TCP sockets
Otherwise connections (commonly on IDLE, but it could be any
command) may never receive notifications of link errors.
[ruby-core:86628] [Feature #14703]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63243 b2dd03c8-39d4-4d8f-98ff-82...
Eric Wong
07:41 PM Revision 75e5a91e (git): sprintf.c: fix typo
* sprintf.c: [DOC] fix typo.
Patch by Lazarus Lazaridis (iridakos). [Fix GH-1789]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
stomar (Marcus Stollsteimer)
04:33 PM Revision 532464d1 (git): Same as the last commit (comment out tests for CI).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63241 b2dd03c8-39d4-4d8f-98ff-823fe69b080e ko1 (Koichi Sasada)
04:03 PM Revision fdf2764e (git): * 2018-04-23
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
04:03 PM Revision dd45691d (git): Skip some tests to make CI healthy.
r63236 (or r63237) introduces test failures and CI shows errors.
This commit makes skipping these tests. Please revert this commit
after tests (and rubyspec) work fine.
Failure log example:
https://gist.github.com/ko1/8456cf25fe35a696b...
ko1 (Koichi Sasada)
12:09 PM Misc #14497 (Closed): [PATCH] thread*: all condvars are monotonic
Applied in changeset trunk|r63238.
----------
thread*: all condvars are monotonic
There's no reason to use CLOCK_REALTIME for any condvars in Ruby.
Indeed, we initialized all condvars with RB_CONDATTR_CLOCK_MONOTONIC
anyway; so simplif...
normalperson (Eric Wong)
12:09 PM Revision ed590bdb (git): thread*: all condvars are monotonic
There's no reason to use CLOCK_REALTIME for any condvars in Ruby.
Indeed, we initialized all condvars with RB_CONDATTR_CLOCK_MONOTONIC
anyway; so simplify our code and reduce ifdefs.
[ruby-core:85639] [Misc #14497]
git-svn-id: svn+ssh:...
Eric Wong
09:43 AM Bug #14600: test-all & REXML - fixup
I've enabled almost tests.
The tests reveals some XPath related bugs. They are good tests.
I've fixed most of the XPath related bugs. Namespace axis related XPath isn't fixed yet. I'll work on it later.
kou (Kouhei Sutou)
09:38 AM Revision 7a6f3410 (git): rexml: Fix XPath bug of //#{ELEMENT_NAME}[#{POSITION}]
The position should be counted for each nodeset but the previous
implementation counts position for union-ed nodeset.
For example, "/a/*/*[1]" should be matched to "<c1/>" and "<c2/>" with
the following XML.
<a>
<b>
<...
Sutou Kouhei
08:09 AM Revision 4d15e619 (git): rexml: Fix XPath bug of /#{ELEMENT_NAME}
It doesn't mean that all elements which name "ELEMENT_NAME" with any
namespace URI including null namespace URI. It means that all elements
which name "ELEMENT_NAME" with null namespace URI.
https://www.w3.org/TR/1999/REC-xpath-19991116...
Sutou Kouhei
05:53 AM Misc #14692: Question: Ruby stdlib's Option Parser
nobu (Nobuyoshi Nakada) wrote:
> Currently, it is not able.
> ...
Can you please show me an example code on how to achieve this ?
I see the issue is in `parser_in_order` method
```
begin
sw, = co...
xz0r (xz0r xz0r)
04:01 AM Revision b252d8ad (git): mjit_compile.c: comment the intention of r63092 [ci skip]
It's for "leave" instruction.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
12:47 AM Revision 56e87b2c (git): made *.cmd excutable
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63234 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
12:46 AM Revision 04ac0363 (git): made *.cmd excutable
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63233 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
12:12 AM Bug #14681: `syswrite': stream closed in another thread (IOError)
samuel@oriontransfer.org wrote:
> > We no longer set O_NONBLOCK on sockets/pipes by default since
> > 1.9+; and but that didn't help with slow filesystems whose
> > buffers are full (or using weird stuff like O_SYNC/O_DIRECT).

> C...
normalperson (Eric Wong)
12:02 AM Revision 0b429ad2 (git): Makefile.in: MJIT_ARCHFLAG
* Makefile.in (mjit_config.h): separate MJIT_ARCHFLAG for each
architecture on universal binary. cannot use precompiled-header
with multiple -arch options.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63232 b2dd03c8-39d4-4d8f-...
nobu (Nobuyoshi Nakada)

04/21/2018

11:32 PM Revision fed7f81b (git): test/ruby/test_io.rb: try to diagnose stuck test_recycled_fd_close
I can't reproduce the problem myself, but gets loop seems ought
to give more useful information for tracking down where we're
stuck, at least.
Followup-to: r63217
cf. http://ci.rvm.jp/results/trunk-test@frontier/804284
git-svn-id: svn...
Eric Wong
11:02 PM Revision c83decf6 (git): mjit.c: check pch status
* mjit.c (mjit_add_iseq_to_process, mjit_get_iseq_func): check if
pch failed before timedout.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
10:12 PM Bug #14681: `syswrite': stream closed in another thread (IOError)
> We no longer set O_NONBLOCK on sockets/pipes by default since
> ...
Can I set this to avoid the breaking code path? I know the write would succeed every time in this case.
> signaled cross-thread IO#close
Do you mind explaining ...
ioquatix (Samuel Williams)
06:12 PM Bug #14681: `syswrite': stream closed in another thread (IOError)
samuel@oriontransfer.org wrote:
> I reviewed your suggestion, and while it (in theory) works
> with the original example, it won't work with my actual use
> case which uses are set of shared threads to implement
> background workers...
normalperson (Eric Wong)
06:03 PM Bug #14681: `syswrite': stream closed in another thread (IOError)
samuel@oriontransfer.org wrote:
> Excuse my ignorance, but if you call write, why can't you just
> directly invoke `::write`? Why do you need to do
> `rb_thread_io_blocking_region`?

rb_thread_io_blocking_region releases the GVL b...
normalperson (Eric Wong)
01:26 PM Bug #14681: `syswrite': stream closed in another thread (IOError)
Excuse my ignorance, but if you call write, why can't you just directly invoke `::write`? Why do you need to do `rb_thread_io_blocking_region`? ioquatix (Samuel Williams)
01:18 PM Bug #14681: `syswrite': stream closed in another thread (IOError)
I reviewed your suggestion, and while it (in theory) works with the original example, it won't work with my actual use case. I have a fixed number of worker threads reading from a shared job queue and executing jobs - when the job is com... ioquatix (Samuel Williams)
01:14 PM Bug #14681: `syswrite': stream closed in another thread (IOError)
Eric, thanks so much for your commitment to fixing this issue and for taking a look at my specific use case.
I will try out your suggestions. If it works, it's good enough.
I look forward to your future bug fix.
ioquatix (Samuel Williams)
09:04 AM Bug #14681: `syswrite': stream closed in another thread (IOError)
Eric Wong <normalperson@yhbt.net> wrote:
> https://80x24.org/spew/20180421021502.31552-1-e@80x24.org/
> Note: the /* TODO: check func() */ in rb_thread_io_blocking_region
> But that WIP patch is broken...
>
> I think w...
normalperson (Eric Wong)
03:32 AM Bug #14681: `syswrite': stream closed in another thread (IOError)
samuel@oriontransfer.org wrote:
> Bug #14681: `syswrite': stream closed in another thread (IOError)
> https://bugs.ruby-lang.org/issues/14681

There's two bugs, here, I think. I made r63216 because it
became obvious to me with the...
normalperson (Eric Wong)
12:33 AM Bug #14681: `syswrite': stream closed in another thread (IOError)
Thanks, fixing now. normalperson (Eric Wong)
08:04 PM Revision 83bd262f (git): * 2018-04-22
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
08:04 PM Revision 300b22dc (git): Improve docs for URI library
* lib/uri/generic.rb: [DOC] fix invalid example code to make it
syntax highlighted; drop unnecessary `puts', `p'; adapt to current
inspect format without Object id; do not display unnecessary return
values in examples; fix or preve...
stomar (Marcus Stollsteimer)
07:50 PM Misc #12004: Code of Conduct
matz (Yukihiro Matsumoto) wrote:
> We have set our Code of Conduct.
> ...
Let's upgrade it, Matz.
gkop (Gabe Kopley)
01:15 PM Revision c04881f9 (git): test_jit.rb: follow the change of instruction
in r63225. Not strictly needed but to avoid confusion.
The JIT compiler itself seems working fine.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63227 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
01:09 PM Bug #14561: Consistent 2.5.0 seg fault in GC, related to accessing an enumerator in a thread
Thanks so much for your effort to isolate this issue.
I don't think any of my code is violating "First, Fiber.new and Fiber#resume must be in same thread, but Enumerator.new and Enumerator#peek don't have to be."
I will check.
ioquatix (Samuel Williams)
11:33 AM Feature #13618: [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
samuel@oriontransfer.org wrote:
> It would be also be pretty awesome if you could actually
> supply a reactor to use, e.g. `Fiber.new(io_reactor:
> my_reactor)`. In this case, blocking operations would call
> `my_reactor.wait_readab...
normalperson (Eric Wong)
11:12 AM Feature #14624: #{nil} allocates a fresh empty string each time
nobu@ruby-lang.org wrote:
> https://github.com/nobu/ruby/tree/feature/opt_to_s

Btw, I also had [ruby-core:81905] [Feature #13715] from last
year but forgot about it :x
normalperson (Eric Wong)
10:52 AM Revision fde115b1 (git): compile.c: optimize checktype
* compile.c (optimize_checktype): optimize `checktype` instruction
on a literal.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
10:52 AM Revision a3fe1034 (git): insns.def: checktype
* insns.def (checktype): split branchiftype to checktype and
branchif, to make branch condition negation possible.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:48 AM Revision c458aeff (git): compile.c: renamed macro arguments
* compile.c (INSERT_BEFORE_INSN, INSERT_BEFORE_INSN1): rename
argument `prev` as `next`.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
06:52 AM Bug #14659: segfault in ConditionVariable#broadcast and ConditionVariable#signal
nbeyer@gmail.com wrote:
> Bug #14659: segfault in ConditionVariable#broadcast and ConditionVariable#signal
> https://bugs.ruby-lang.org/issues/14659

I suspect this is identical to https://bugs.ruby-lang.org/issues/14634

Can you ...
normalperson (Eric Wong)
06:45 AM Revision ee29985d (git): rexml: Enable more tests
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Sutou Kouhei
06:43 AM Revision da89931d (git): rexml: Fix XPath concat() implementation
* lib/rexml/functions.rb (REXML::Functions.concat): Implement.
* test/rexml/test_jaxen.rb: Enable one more test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63222 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Sutou Kouhei
06:39 AM Revision 6793c0a2 (git): rexml: Fix XPath string() implementation
* lib/rexml/functions.rb( REXML::Functions.string):
* Support context node.
* Fix implementation for document node to remove out of root nodes.
* Support processing instruction node.
* Improve implementation for integer to omit d...
Sutou Kouhei
06:21 AM Revision e044924e (git): rexml: Make more readable
test/rexml/test_jaxen.rb: Use more meaningful name.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Sutou Kouhei
06:21 AM Revision 1992cec5 (git): rexml: Fix a test bug
test/rexml/test_jaxen.rb: Fix wrong assert_raise usage. Note that this code
isn't used yet.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Sutou Kouhei
06:18 AM Revision daec80fe (git): rexml: Make more readable
test/rexml/xpath/test_base.rb: Use here document for readability.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63218 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Sutou Kouhei
04:02 AM Revision 7e9c19ad (git): test/ruby/test_io.rb: add closing recycled FD test
Followup-to: r63216
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
03:12 AM Revision 645f7fbd (git): io.c: do not use rb_notify_fd_close close on recycled FD
It is unsafe to release GVL and call rb_notify_fd_close after
close(2) on any given FD. FDs (file descriptor) may be recycled
in other threads immediately after close() to point to a different
file description. Note the distinction bet...
Eric Wong

04/20/2018

10:53 PM Revision af72dcd9 (git): thread_sync: redo r62934 to use fork_gen
Instead of maintaining linked-lists to store all
rb_queue/rb_szqueue/rb_condvar structs; store only a fork_gen
serial number to simplify management of these items.
This reduces initialization costs and avoids the up-front cost
of resett...
Eric Wong
09:38 PM Feature #14487 (Closed): [PATCH] simplify altstack and enable reuse with thread cache
Applied in changeset trunk|r63213.
----------
simplify altstack and enable reuse with thread cache
Instead of allocating and registering the altstack in different
places, do it together to reduce code and improve readability.
When thre...
normalperson (Eric Wong)
09:38 PM Revision 730d257b (git): * 2018-04-21
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
09:38 PM Revision 475b4aa4 (git): simplify altstack and enable reuse with thread cache
Instead of allocating and registering the altstack in different
places, do it together to reduce code and improve readability.
When thread cache is enabled, storing altstack in rb_thread_t
is wasteful and we may reuse altstack in the sam...
Eric Wong
06:34 PM Feature #6284: Add composition for procs
yuroyoro (TOMOHITO Ozaki) wrote:
> Most languages do not define function composition in built-in operators, but provide them as function or method such as `compose`.
> ...
I do like the idea of using shovel as it's already fairly commo...
baweaver (Brandon Weaver)
03:23 PM Bug #14704 (Closed): Module#ancestors looks wrong when a module is both included and prepended in the same class.
`Module#ancestors` looks wrong when a module is both included and prepended in the same class.
Here is the example script:
```ruby
module M3; end
module M1
include M3
end
module M2
prepend M3
end
class Sub
includ...
knknkn1162 (Kenta Nakajima)
01:42 PM Revision e72a86fc (git): _mjit_compile_send.erb: inline attr_reader call
_mjit_compile_send_guard.erb: carve out the shared logic to invalidate
inlined method call
common.mk: update dependency for this change
test_jit.rb: add test for attr_reader optimization
* Benchmark
```
require 'benchmark_driver'
Be...
k0kubun (Takashi Kokubun)
01:40 PM Bug #14662: Stack consistency error in 2.5.1
Unfortunately I haven't found a way to reproduce this without a large portion of our code running, and because the error happens in different places I haven't been able to track it down. I'll keep trying but I think it is unlikely that I... jacobevelyn (Jacob Evelyn)
01:23 PM Feature #14111: ArgumentErrorが発生した時メソッドのプロトタイプをメッセージに含む
いくつか問題があるようです。
* `define_method` で定義されたメソッドで `ArgumentError` が起きるとSEGV
* `label` はメソッド名とは同じとは限らない
* 特異メソッドを持つオブジェクトをインスタンス変数にセットすると `Marshal.dump` できない
また、 `ArgumentError#to_s` は別ライブラリ(gem)で提供するということでしょうか。
「重箱の隅をつつく」ようですが、エラー発生か...
nobu (Nobuyoshi Nakada)
11:52 AM Feature #14703 (Closed): [PATCH] net/imap: set SO_KEEPALIVE on TCP sockets
Otherwise connections (commonly on IDLE, but it could be any
command) may never receive notifications of link errors.
Pretty trivial, will commit in a few days if no response.
normalperson (Eric Wong)
10:11 AM Misc #14698: DevelopersMeeting20180517Japan
shevegen (Robert A. Heiler) wrote:
> Just one comment:
> ...
This changed is just applied for the agenda page like https://bugs.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20180419Japan.
The wiki has an issue, other than commi...
naruse (Yui NARUSE)
10:03 AM Bug #14702 (Closed): On Ruby 2.5.1, tracepoint isn't working on the file that is loaded by load_iseq
On Ruby 2.5.1, when loading file with RubyVM::InstructionSequence.load_from_binary, TracePoint callback event is not working on loaded file.
## Steps to reproduce
Ruby version.
```
$ ruby -v
# => ruby 2.5.1p57 (2018-03-29 revisi...
makoto_tajitsu@hotmail.co.jp (Makoto Tajitsu)
08:27 AM Feature #14701 (Rejected): If the object is not frozen, I want to be able to redefine the compound assignment operator.
Use `append` instead of `+=` for arrays. Changing the behavior of `+=` would have too much compatibility problems from side-effect.
Matz.
matz (Yukihiro Matsumoto)
07:10 AM Revision 1658fb3f (git): Update latest bundled gems:
did_you_mean: 1.2.1
rake: 12.3.1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
hsbt (Hiroshi SHIBATA)
03:32 AM Bug #14634: Queue#push seems to crash after fork
benoit@sqreen.io wrote:
> The customer just sent me another crasher report (segfault).
> It happens in another location in Ruby on
> `Module.const_defined?`. I looked at the ruby code while going
> through the crasher trace, and it ...
normalperson (Eric Wong)
03:22 AM Revision b456eab2 (git): variable.c: fix thread + fork errors in autoload
This is fairly non-intrusive bugfix to prevent children
from trying to reach into thread stacks of the parent.
I will probably reuse this idea and redo r62934, too
(same bug).
* vm_core.h (typedef struct rb_vm_struct): add fork_gen coun...
Eric Wong
02:12 AM Feature #14352: Array#pack("M") Quoted-Printable with binary mode
なるせさん
ご検討いただきありがとうございました。
mailライブラリとしてはこの結果をベースに修正案を出してみようと思います。
kirika (Toshio Maki)
12:52 AM Bug #14700 (Rejected): Endless ranges don't seem to work properly with case statements
Please use parentheses, like `when (0..)`. Unfortunately, it is difficult to allow this because it may cause a conflict with existing programs.
```
x = 1
case x
when 0..
3
p "#{ x } is in 0..3"
end
```
mame (Yusuke Endoh)
12:25 AM Revision 5b9bb500 (git): vm_core.h: adjust indent [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
12:23 AM Revision db885d08 (git): range.c: step in bignum
* range.c (range_step): honor step in bignum addition.
[Feature #12912]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:10 AM Revision ad5a6aa7 (git): range.c: fix fixnum loop condition
* range.c (range_step): FIXABLE + FIXABLE never overflow, but may
not be FIXABLE. [Feature #12912]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)

04/19/2018

11:46 PM Revision 5a5c9a70 (git): fiddle/test_import.rb: fix warnings by rubygems
[Bug #14686]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
11:36 PM Bug #14686 (Closed): Windows - uninitialized constant Fiddle::Function::STDCALL, test issue
Applied in changeset trunk|r63205.
----------
fiddle/import.rb: suppress warning
* ext/fiddle/lib/fiddle/import.rb: suppress exception report when
$DEBUG is enabled. [ruby-core:86536] [Bug #14686]
nobu (Nobuyoshi Nakada)
11:35 PM Revision eb02a846 (git): fiddle/import.rb: suppress warning
* ext/fiddle/lib/fiddle/import.rb: suppress exception report when
$DEBUG is enabled. [ruby-core:86536] [Bug #14686]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
11:30 PM Feature #14701 (Open): If the object is not frozen, I want to be able to redefine the compound assignment operator.
If the object is not frozen, I want to be able to redefine the compound assignment operator (e.g. +=, -=, *=, /=, ..etc ).
https://docs.ruby-lang.org/ja/latest/doc/spec=2foperator.html
* Redefinable operator (method)
~~~
|...
naitoh (Jun NAITOH)
10:20 PM Feature #14697: Introducing Range#% as an alias to Range#step
Have we considered a name like `every`?
~~~ ruby
(1..).every(2) # => 2, 4, 6, 8
~~~
I did not know that `step` could do this until I read this. The name does not clearly indicate that it would do that to me, but that may also b...
baweaver (Brandon Weaver)
02:18 PM Feature #14697: Introducing Range#% as an alias to Range#step
I am not convinced that `step` is used enough to justify this. I know I basically never use it. Here's the number of uses for some projects:
rails: 3 uses
bundler: 0 uses
sinatra: 0 uses
WikiEduDashboard: 0 uses (a typical Ra...
marcandre (Marc-Andre Lafortune)
06:54 AM Feature #14697: Introducing Range#% as an alias to Range#step
Looks good to me. Any opinion?
Matz.
matz (Yukihiro Matsumoto)
06:31 AM Feature #14697 (Closed): Introducing Range#% as an alias to Range#step
In #13904, `Enumerator::ArithmeticSequence` has been accepted for the representation of a range with step value.
And in #12912, a new syntax of endless range `(1..)` has been accepted.
Combining these new features, we can write an en...
mrkn (Kenta Murata)
09:48 PM Bug #14700 (Rejected): Endless ranges don't seem to work properly with case statements
I'm running into an unexpected error with this code
~~~ ruby
case 1
when 0..
end
#!> SyntaxError: unexpected keyword_end, expecting keyword_then or ',' or ';' or '\n'
~~~
Thanks!
shan (Shannon Skipper)
09:34 PM Revision 9090241e (git): rexml: Fix a XPath bug that white spaces aren't ignored
lib/rexml/parsers/xpathparser.rb: Ignore white spaces in relative
location path.
test/rexml/xpath/test_base.rb: Add more test patterns and use more
debug friendly assertion style.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6320...
Sutou Kouhei
08:51 PM Revision 632e10ca (git): rexml: Fix wrong assertion
test/rexml/xpath/test_base.rb: Use constant value for the expected value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63203 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Sutou Kouhei
08:49 PM Revision 8257fcb1 (git): rexml: Use more debug friendly assertion style
test/rexml/xpath/test_base.rb: Expand loop assertion and stop to checking
just the first value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Sutou Kouhei
08:48 PM Revision b5321ba4 (git): rexml: Use more debug friendly assertion style
test/rexml/xpath/test_base.rb: Stop to use separated assertions for
checking array value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Sutou Kouhei
08:45 PM Revision be000dcc (git): rexml: Make more readable
test/rexml/xpath/test_base.rb: Use here document for XML.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Sutou Kouhei
06:01 PM Misc #14698: DevelopersMeeting20180517Japan
https://bugs.ruby-lang.org/issues/14473 Add Range#subrange? greggzst (Grzegorz Jakubiak)
04:19 PM Misc #14698: DevelopersMeeting20180517Japan
Just one comment:
> From this time, we use a ticket to make dev-meeting agenda page
\o/
I think this is a good change. However had, I also think that the
wiki is very good for an "organized back-log", together with the
log sum...
shevegen (Robert A. Heiler)
03:42 PM Misc #14698: DevelopersMeeting20180517Japan
https://bugs.ruby-lang.org/issues/14699 Subtle behaviors with endless range mame (Yusuke Endoh)
07:26 AM Misc #14698: DevelopersMeeting20180517Japan
> your favorite ticket numbers you want to ask to discuss with your SHORT comment or summary.
Functional programming:
* [Feature #6284] Add composition for procs
* 6-year-old proposal. Matz: "Positive about adding function composi...
zverok (Victor Shepelev)
06:59 AM Misc #14698 (Closed): DevelopersMeeting20180517Japan
Date: 2018/05/17 (Thu)
Time: 14:00-18:00 (JST)
Place: Cookpad Inc. (Tokyo, Japan)
Sign-up: https://ruby.connpass.com/event/85917/
Log: https://docs.google.com/document/d/e/2PACX-1vR2LdBE87iEcEsVuUUr0G2L6LxSPeGMg_0oeHeh0HYmX36iIa9zkWY...
ko1 (Koichi Sasada)
05:24 PM Bug #14699: Subtle behaviors with endless range
I believe `(0..).max(3)` and `(0..).max {|a, b| a <=> b }` can not return `nil`. They should either hang or (seems more useful) raise an error, same as `min`. I would have `(0..).last(3)` also raise an error.
`(0..).size` must return ...
marcandre (Marc-Andre Lafortune)
03:40 PM Bug #14699 (Closed): Subtle behaviors with endless range
Currently, some Range's methods behaves weirdly with endless range.
## Range#max
Range#max always returns nil. Is this okay, or is another result expected?
```
p (0..).max #=> nil
p (0..).max(3) #=> nil
p (0..).max {|a, b| ...
mame (Yusuke Endoh)
04:57 PM Revision 35f1b8f5 (git): _mjit_compile_send.erb: simplify control flow
to introduce additional optimization for another `cc->me->def->type`
later. I carved out the `cc->me->def->type == VM_METHOD_TYPE_ISEQ`
part because I wanted to check other types as well.
mjit_compile.c: drop get_iseq_if_available and d...
k0kubun (Takashi Kokubun)
04:19 PM Revision 46697c7e (git): internal.h: use the same declaration as definition
range.c: cast the function type to meet the declaration
This change is for fixing build error on AppVeyor:
https://ci.appveyor.com/project/ruby/ruby/build/1.0.8177
string.c
../string.c(4330) : error C4028: formal parameter 2 different ...
k0kubun (Takashi Kokubun)
04:17 PM Feature #14683: IRB with Ripper
I am developing Reirb which is new version of irb, now.
Reirb is a reborn irb, and new implementation for irb,
I would like to replacing irb with reirb(as irb).
Therefore, I want to pending big changes until RubyKaigi 2018 is over.
keiju (Keiju Ishitsuka)
03:54 PM Feature #8258: Dir#escape_glob
Eregon (Benoit Daloze) wrote:
> Looks to me like this can be closed since we have Dir.glob(pattern, base: dir) and Pathname#glob uses it.
Consider that we want to enumerate all files that are under a specified directory and whose nam...
mame (Yusuke Endoh)
11:28 AM Feature #8258: Dir#escape_glob
Looks to me like this can be closed since we have Dir.glob(pattern, base: dir) and Pathname#glob uses it. Eregon (Benoit Daloze)
08:13 AM Feature #8258 (Feedback): Dir#escape_glob
Issue #13056 introduced `base:` option to `Dir.glob` method. Is this issue still needed? shyouhei (Shyouhei Urabe)
03:29 PM Feature #12912 (Closed): An endless range `(1..)`
Thank you matz. I've committed this at r63192..r63197. The implementation uses Approach 2, i.e., now we can create `(1..nil)`, a range whose end is nil.
I made Range's methods reasonably support endless range, at least, as far as I ...
mame (Yusuke Endoh)
06:19 AM Feature #12912: An endless range `(1..)`
The syntax appears a bit weird but far better than `1..Float::Infinity`.
I accept it.
Matz.
matz (Yukihiro Matsumoto)
03:23 PM Revision e5de8868 (git): Adds "endless range" to NEWS
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e mame (Yusuke Endoh)
03:19 PM Revision d55452cb (git): Prefer CONST_ID to static global IDs
Just refactoring.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
mame (Yusuke Endoh)
03:18 PM Revision d658a8d5 (git): range.c: Make Range#bsearch support endless ranges
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e mame (Yusuke Endoh)
03:18 PM Revision db1bdecb (git): Make Range#min, max, include?, cover?, and === to support endless range
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e mame (Yusuke Endoh)
03:18 PM Revision 8a809850 (git): * 2018-04-20
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:18 PM Revision 7f95eed1 (git): Introduce endless range [Feature#12912]
Typical usages:
```
p ary[1..] # drop the first element; identical to ary[1..-1]
(1..).each {|n|...} # iterate forever from 1; identical to 1.step{...}
```
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63192 b2dd03c8-39d4-4...
mame (Yusuke Endoh)
02:40 PM Misc #14692: Question: Ruby stdlib's Option Parser
Currently, it is not able.
A possible workaround is to define an option which raise `OptionParser::InvalidOption`.
nobu (Nobuyoshi Nakada)
12:34 PM Feature #14688 (Assigned): Net::HTTPResponse#value raises "Net::HTTPServerException" in 4xx response
At DevelopersMeeting20180419Japan, adding the alias is accepted. usa (Usaku NAKAMURA)
11:42 AM Feature #4475: default variable name for parameter
This is a very interesting idea but at the same time, it's difficult to keep compatibility.
At least simple addition of `it` does not work well.
Matz.
matz (Yukihiro Matsumoto)
07:51 AM Feature #4475: default variable name for parameter
I would like the feature, but we have many things to think about.
We would not be able to make "it" a reserved keyword because that would destroy all existing RSpec code written in tens of thousands of projects.
If "it" were to be ...
knu (Akinori MUSHA)
08:22 AM Feature #6394 (Rejected): Support SO_ORIGINAL_DST socket option
As #14696, we reject the proposal. matz (Yukihiro Matsumoto)
08:21 AM Feature #14696 (Rejected): add optname SO_ORIGINAL_DST
I didn't know `SO_ORIGINAL_DST` is not defined in libc headers.
In this case, I'd suggest defining the constant in your application.
Matz.
matz (Yukihiro Matsumoto)
07:37 AM Feature #14696: add optname SO_ORIGINAL_DST
SO_ORIGINAL_DST is defined in linux kernel header, not glibc header.
The provided patch defines SO_ORIGINAL_DST as 80 in ext/socket/rubysocket.h.
There are several options:
- define the constant in Ruby as the patch.
This add...
akr (Akira Tanaka)
07:54 AM Feature #14352: Array#pack("M") Quoted-Printable with binary mode
議論したのですが、結論としてドキュメントイシューということになりました。
大本のPerlもそうですが、pack/unpackは前提として、Unix環境で入力をとり、LFのまま出力し、
その出力をsendmail等に流して、それらがLFをCRLFに変換することを想定したものであろうという見解に至りました。
よって、現状の挙動はその用途においては妥当なものなので、変更せず、ドキュメントの追記のみを行いました。
kirika (Toshio Maki) wro...
naruse (Yui NARUSE)
07:28 AM Feature #14352 (Closed): Array#pack("M") Quoted-Printable with binary mode
Applied in changeset trunk|r63191.
----------
pack/unpack M only handles LF line breaks [Feature #14352]
naruse (Yui NARUSE)
07:52 AM Feature #5352 (Rejected): How about using <> to represent Here Document?
Rejected. I don't want to change the basic syntax (without major benefit). Besides that, I want to keep `<>` for future syntax extension.
Matz.
matz (Yukihiro Matsumoto)
07:28 AM Revision 3a5d1e4b (git): pack/unpack M only handles LF line breaks [Feature #14352]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63191 b2dd03c8-39d4-4d8f-98ff-823fe69b080e naruse (Yui NARUSE)
07:25 AM Feature #14423: Enumerator from single object
Updated proposal after discussion in comments. zverok (Victor Shepelev)
07:06 AM Feature #14643 (Closed): Remove problematic separator '\0' of Dir.glob and Dir.[]
Applied in changeset trunk|r63190.
----------
dir.c: warning for NUL
* dir.c (rb_push_glob): warn NUL-separated glob patterns.
[Feature #14643]
nobu (Nobuyoshi Nakada)
06:55 AM Feature #14643: Remove problematic separator '\0' of Dir.glob and Dir.[]
LGTM. The change will reduce the potential security risk.
Matz.
matz (Yukihiro Matsumoto)
07:05 AM Revision c635662d (git): dir.c: warning for NUL
* dir.c (rb_push_glob): warn NUL-separated glob patterns.
[Feature #14643]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:00 AM Bug #14219 (Rejected): package size of Ruby 2.5 is larger than 2.4
I postpone merging bundler into Ruby core. I will close this by stating it again. hsbt (Hiroshi SHIBATA)
06:57 AM Feature #13199 (Closed): Gemify strscan
I released strscan gem on rubygems.org
https://rubygems.org/gems/strscan
hsbt (Hiroshi SHIBATA)
06:43 AM Feature #14594: Rethink yield_self's name
After a long consideration, I decided to pick `then` as an alias to `yield_self`.
As @zverok stated it describes intention, not behavior.
Because `then` is a reserved word, it has some restriction, but I think it is acceptable.
Ma...
matz (Yukihiro Matsumoto)
05:55 AM Feature #14559 (Closed): ENV.slice
Applied in changeset trunk|r63188.
----------
Add slice method to ENV like Hash#slice
[Feature #14559]
From: Benoit Tigeot <benoit@hopsandfork.com>
nobu (Nobuyoshi Nakada)
05:22 AM Feature #14559: ENV.slice
It seems OK to me.
Matz.
matz (Yukihiro Matsumoto)
05:55 AM Revision ae92a9e4 (git): * 2018-04-19
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
05:55 AM Revision 9760a7f9 (git): Add slice method to ENV like Hash#slice
[Feature #14559]
From: Benoit Tigeot <benoit@hopsandfork.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:54 AM Bug #14662: Stack consistency error in 2.5.1
The dumped instructions seem no problem.
Can't you make small code to reproduce?
nobu (Nobuyoshi Nakada)
 

Also available in: Atom