Project

General

Profile

Activity

From 12/13/2019 to 12/19/2019

12/19/2019

11:28 PM Bug #8507 (Rejected): Keyword splat does not convert arg to Hash
As far as I understand, no one showed any actual use case that justifies adding `nil.to_h #=> {}`.
I agree with matz, it would be better to remove `nil.to_a #=> []` instead of adding `nil.to_h #=> {}` for this issue. I don't think it...
mame (Yusuke Endoh)
11:18 PM Revision 2898367b (git): Warn also numbered parameter like methods
nobu (Nobuyoshi Nakada)
10:24 PM Bug #16437 (Feedback): Codespell report for Ruby 2.6.5 (and 2.7.0-rc1)
Is there anyone who is interested in this? I'd be happy if anyone could look through the result and create a patch. Contribution is welcome.
@jschleus Thanks. If possible, could you apply the checker to master? In the tarballs, th...
mame (Yusuke Endoh)
05:46 PM Bug #16437 (Closed): Codespell report for Ruby 2.6.5 (and 2.7.0-rc1)
The FOSS server fossies.org offers a new feature "Source code misspelling reports":
https://fossies.org/features.html#codespell
Although such reports are normally only generated on request, as Fossies administrator I have just cre...
jschleus (Jens Schleusener)
07:46 PM Bug #16288: Segmentation fault with finalizers, threads

```
--- a/thread.c
+++ b/thread.c
@@ -682,7 +682,7 @@ thread_do_start(rb_thread_t *th)
else {
args_ptr = RARRAY_CONST_PTR(args);
}
-
+ rb_funcallv(NULL, idInspect, 0, 0);
th->valu...
davidw (David Welton)
04:40 PM Revision 3816cd94 (git): Add `URI#open` to warning message
znz (Kazuhiro NISHIYAMA)
04:37 PM Feature #16433 (Closed): Proposal: Output warning if `_1` is used in parameter name
Applied in changeset commit:git|27ddb6e99848c397a415b785315896ab50308076.
----------
Warn also numbered parameter like parameters
[Feature #16433]
nobu (Nobuyoshi Nakada)
01:27 PM Feature #16433 (Closed): Proposal: Output warning if `_1` is used in parameter name
Currently, output warning if local variable name is `_1`.
```ruby
# warning: `_1' is used as numbered parameter
_1 = 42
```
However, if parameter name is `_1`, no output warning is issued.
```ruby
# Actual behavior
# no war...
osyo (manga osyo)
04:37 PM Revision 844f1fad (git): * 2019-12-20 [ci skip]
git[bot]
04:37 PM Misc #16436: hash missing #last method, make it not so consistent (it has #first)
What is this issue? Is it just a note to everyone, or are you claiming this to be a bug, or is it a feature request? sawa (Tsuyoshi Sawada)
04:27 PM Misc #16436: hash missing #last method, make it not so consistent (it has #first)
`Hash` doesn't have `#first` either :)
```ruby
Hash.instance_method(:first)
# => #<UnboundMethod: Hash(Enumerable)#first(*)>
# ^^^^^^^^^^
```
The `first` method existence is just because of hash being a...
zverok (Victor Shepelev)
04:21 PM Misc #16436 (Open): hash missing #last method, make it not so consistent (it has #first)
``` ruby
(pry):main(0)> h = {x:1, y:2, z:3}
{
:x => 1,
:y => 2,
:z => 3
}
(pry):main(0)> h.first
[
:x,
1
]
(pry):main(0)> h.first.first
:x
(pry):main(0)> h.first.last
1
```
last method not exist.
...
zw963 (Wei Zheng)
04:25 PM Revision 27ddb6e9 (git): Warn also numbered parameter like parameters
[Feature #16433] nobu (Nobuyoshi Nakada)
04:01 PM Feature #16435 (Rejected): Array#to_proc
The idea is obvious, but I couldn't find it discussed anywhere on tracker before. Please point me at the previous discussions if any.
```ruby
class Array
def to_proc
proc { |v| v.dig(*self) }
end
end
# Or, alternatively,...
zverok (Victor Shepelev)
02:35 PM Bug #16434 (Third Party's Issue): rails c crashed
Thank you for the report.
Maybe https://github.com/brianmario/mysql2/issues/1075 seems related. Anyway, the issue seems to occur in mysql2 library. Cloud you ask them first?
mame (Yusuke Endoh)
02:31 PM Bug #16434: rails c crashed
Although it is unclear without the backtrace by ruby itself, it seems caused by a wrong argument to `Mysql2::Client#connect`.
https://github.com/brianmario/mysql2/blob/785969fbceadd96d495ec9fecc67efee03d0056c/ext/mysql2/client.c#L438
T...
nobu (Nobuyoshi Nakada)
02:19 PM Bug #16434 (Third Party's Issue): rails c crashed

[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: https://www.ruby-lang.org/bugreport.html
[IMPORTANT]
Don't forget to include the Crash Report log file u...
dmitry.malyk (Dmitry Malyk)
02:15 PM Feature #16432: Using `_1` inside `binding.irb` will cause unintended behavior
It is same as the following code without irb.
```ruby
proc {
p eval("(1..10).map{_1+_1}") #=> [84, 84, 84, 84, 84, 84, 84, 84, 84, 84]
_1
}.call(42)
```
This is because the `eval` code is executed at the current context ex...
nobu (Nobuyoshi Nakada)
01:26 PM Feature #16432 (Closed): Using `_1` inside `binding.irb` will cause unintended behavior
## Summary
Calling `binding.irb` in a block that uses `_1` and using `_1` in `irb` will cause unintended behavior.
## Steps to reproduce
1. Use `_1` in block
2. Use `binding.irb` in block
3. Use block with `_1` in `binding.i...
osyo (manga osyo)
12:13 PM Feature #15306 (Closed): Generate prelude.c using miniruby
vo.x (Vit Ondruch)
12:13 PM Feature #15306: Generate prelude.c using miniruby
prelude.c is not anymore [1], so I'm closing this specific ticket.
However, I'll be happy if the discussion is remembered for future.
[1]: https://github.com/ruby/ruby/commit/9c2807b2df14984e3c81d72a381d9a4d288b3fbe
vo.x (Vit Ondruch)
09:44 AM Bug #16427: Revert did_you_mean promotion to default gem.
vo.x (Vit Ondruch) wrote:
> Nevertheless it does not address the "disk consumption" concern. I also previously forgot to mention possible increased network bandwidth required to build and distribute the cloud image.
By how much does ...
Eregon (Benoit Daloze)
09:31 AM Feature #16260 (Open): Symbol#to_proc behaves like lambda, but doesn't aknowledge it
I agree with @zverok here, a method behaves as a lambda, and doesn't unpack arguments (except a few special methods that specifically do that).
@nobu I think we should merge your PR. Could you show an example of a Symbol#to_proc Proc ...
Eregon (Benoit Daloze)
09:23 AM Feature #16260: Symbol#to_proc behaves like lambda, but doesn't aknowledge it
> As a symbol proc cannot know the method to be invoked, so now I think it cannot be lambda.
> ...
@nobu, I am not sure I get it right. Can you please show when it is not true?..
For as far as I can understand, there are two distinctio...
zverok (Victor Shepelev)
03:26 AM Feature #16260: Symbol#to_proc behaves like lambda, but doesn't aknowledge it
Just curious: How do you want to use the result of `lambda?`? Even if it returns true, we may pass an arbitrary number of arguments: `lambda {|*a| ... }`. I think that `lambda?` is useless except debugging. mame (Yusuke Endoh)
03:15 AM Feature #16260 (Rejected): Symbol#to_proc behaves like lambda, but doesn't aknowledge it
As a symbol proc cannot know the method to be invoked, so now I think it cannot be lambda.
In the case `:+`, it looks like a lambda, but it is not always true.
nobu (Nobuyoshi Nakada)
08:30 AM Feature #15982: Remove y2racc and racc2y
I will try to remove it at racc-1.5 in the next year. hsbt (Hiroshi SHIBATA)
06:47 AM Feature #16039: Array#contains? to check if one array contains another array
JustJosh (Joshua Stowers) wrote:
> @sawa - I 100% agree with what you are saying. I did a poor job expressing my concerns.
> ...
I understand your point. If that is a concern, then we can simply not allow the abbreviated form for `Arra...
sawa (Tsuyoshi Sawada)
04:52 AM Feature #16039: Array#contains? to check if one array contains another array
@sawa - I 100% agree with what you are saying. I did a poor job expressing my concerns.
I am nervous that singling out array arguments in the abbreviated form could result in confusion and misuse. This is not a problem for `Range#cove...
JustJosh (Joshua Stowers)
12:28 AM Feature #16039: Array#contains? to check if one array contains another array
JustJosh (Joshua Stowers) wrote:
> I do not think we should use the name `cover?` because the types of arguments accepted by `Range#cover?` would be incompatible with this use case.
> ...
When the argument is an array, it should be und...
sawa (Tsuyoshi Sawada)
02:04 AM Misc #16393: DevelopersMeeting20191220Japan
@alanwu
Please add `(alanwu)` in the next time. My agenda generator overlooks your post.
mame (Yusuke Endoh)
12:52 AM Revision c6c67254 (git): Added rb_warn_deprecated
nobu (Nobuyoshi Nakada)
12:52 AM Revision 7aa8a786 (git): Manage deprecation warnings about keyword argument
nobu (Nobuyoshi Nakada)
12:52 AM Revision 9bf9de3d (git): Made the warning for deprecated constants follow the category flag
nobu (Nobuyoshi Nakada)
12:52 AM Revision 76035e5b (git): Adjusted the format
nobu (Nobuyoshi Nakada)

12/18/2019

07:29 PM Bug #16427: Revert did_you_mean promotion to default gem.
I think the issue is that the filing is about reverting the promotion to
default gems, which is different to the use case of making it (or what a
ruby user wants to use) more flexible.
The ideal scenario would be to have a fully cus...
shevegen (Robert A. Heiler)
12:49 PM Bug #16427: Revert did_you_mean promotion to default gem.
rbjl (Jan Lelis) wrote:
> Then, a good configuration for the cloud could be this?
> ...
It should probably be `$ RUBYOPT=--disable-did_you_mean ruby -e "p defined? DidYouMean" # => nil` because env variables are typically easier to con...
vo.x (Vit Ondruch)
12:36 PM Bug #16427: Revert did_you_mean promotion to default gem.
> But all these applications have to pay for longer startup time, higher memory and disk consumption. All these are not negligible in the age of cloud. I am pretty sure there is also performance hit during exception handling.
Then, a ...
rbjl (Jan Lelis)
11:09 AM Bug #16427: Revert did_you_mean promotion to default gem.
mame (Yusuke Endoh) wrote:
> But it's just like saying that "ruby cannot start when I remove lib/rubygems.rb".
Speaking of which is problematic by itself. But the difference is that 99% of Ruby applications needs RubyGems for their r...
vo.x (Vit Ondruch)
04:27 AM Bug #16427 (Rejected): Revert did_you_mean promotion to default gem.
It does not make sense at all.
In Ruby 2.6, did_you_mean was a bundled gem, which may be uninstalled by a user. As it is not always able to require, gem_prelude.rb did `require "did_you_mean" rescue LoadError`.
In Ruby 2.7, did_you_...
mame (Yusuke Endoh)
07:19 PM Feature #16431: Optionally load did_you_mean (and RubyGems)
While I agree on the situation at hand (being able to use did you mean
or disable it at the discretion of the user), I think there was a wrong
filing in the linked issue in that the suggestion of the linked in
thread was "Revert did_y...
shevegen (Robert A. Heiler)
02:20 PM Feature #16431 (Closed): Optionally load did_you_mean (and RubyGems)
I just have opened PR [1], which allows Ruby to run when did_you_mean is not available. As I previously discussed in #16427, there are cases when speed, memory, disk or network bandwidth is a concern and did_you_mean is not useful for ru... vo.x (Vit Ondruch)
07:11 PM Feature #16039: Array#contains? to check if one array contains another array
# *#cover?*
I do not think we should use the name `cover?` because the types of arguments accepted by `Range#cover?` would be incompatible with this use case.
For example:
```ruby
(1..3).cover?(2) # true
```
But if Array's implem...
JustJosh (Joshua Stowers)
05:08 PM Revision e732e007 (git): * 2019-12-19 [ci skip]
git[bot]
05:08 PM Revision 1e88f6eb (git): Refactor free page insertion
I am trying to fix this error:
http://ci.rvm.jp/results/trunk-gc_compact@silicon-docker/2491596
Somehow we have a page in the `free_pages` list that is full. This
commit refactors the code so that any time we add a page to the
`free...
tenderlovemaking (Aaron Patterson)
03:48 PM Bug #14755 (Feedback): Aborted (core dumped)
Sorry, I don't think we can do anything for this report.
Did you manually build ruby and install it to /usr/local? If so, I'm unsure why chromebrew invokes it.
I presume you are using a ruby package from Linux distribution or chrome...
mame (Yusuke Endoh)
03:38 PM Bug #15551 (Rejected): The behavior of FIX2INT and FIX2UINT differs by platform
It is by design. doc/extension.rdoc says:
```
T_FIXNUM can be converted to a C integer by using the
FIX2INT() macro or FIX2LONG(). Though you have to check that the
data is really FIXNUM before using them, they are faster.
```
...
mame (Yusuke Endoh)
02:53 PM Bug #12015 (Closed): Improving code coverage visibility
Closing as it is not a bug.
Now you can see unified coverage reports for Ruby's C and Ruby code in https://rubyci.org/coverage. It is measured under GitHub Actions: https://github.com/ruby/actions/blob/master/.github/workflows/covera...
mame (Yusuke Endoh)
02:51 PM Bug #16410: Spec failure - "File.utime allows Time instances in the far future to set mtime and atime"
Could you check the path of `@file1` in that file, and the filesystem of that volume? nobu (Nobuyoshi Nakada)
02:44 PM Bug #16410: Spec failure - "File.utime allows Time instances in the far future to set mtime and atime"
BTW preciously, I was testing against 053f78e139 where the bug had not been present yet. vo.x (Vit Ondruch)
02:42 PM Bug #16410: Spec failure - "File.utime allows Time instances in the far future to set mtime and atime"
~~~
$ cat /etc/os-release
NAME=Fedora
VERSION="32 (Rawhide)"
ID=fedora
VERSION_ID=32
VERSION_CODENAME=""
PLATFORM_ID="platform:f32"
PRETTY_NAME="Fedora 32 (Rawhide)"
ANSI_COLOR="0;34"
LOGO=fedora-logo-icon
CPE_NAME="cpe:/o:fe...
vo.x (Vit Ondruch)
02:30 PM Bug #9312: Build the ruby executable in bin/
Note that `make runnable` makes links in `bin/`, which might be able to run if configured with `--enable-load-relative` option. nobu (Nobuyoshi Nakada)
12:28 PM Bug #9312 (Rejected): Build the ruby executable in bin/
Closing as it is not a bug.
A ruby binary that is built but not installed is half-baked. It is very hacky to run it without installation; it requires setting library paths, GEM_HOME, etc and etc. In the build process, the half-baked...
mame (Yusuke Endoh)
02:06 PM Bug #9693 (Rejected): \x{} in regexp
`"\x{00000020}"` も書けないわけなので、とりあえず現行の挙動は意図的であると考えます。逆に、`/\x{00000020}/` を許すなら `"\x{00000020}"` も許さねば、ってことになるのではないでしょうか。そういう仕様変更に意見はないですが、Bug ではなかろうということで閉じます。
`ONIG_SYN_OP_ESC_X_BRACE_HEX8` は実装詳細なんで、直したかったら成瀬さんの言うとおりにするか、もしくはupstreamを直...
mame (Yusuke Endoh)
02:03 PM Bug #15177: 起動した後にTZを変更するとTime#utcがずれることがある
minirubyだと一致するのは、rubygemsをロードしていないからのようです。
```
$ TZ=Asia/Tokyo ./bin/ruby --disable=gems -ve "ENV['TZ']='right/Asia/Tokyo';t=Time.at(2<<30);p t;p t.utc"
ruby 2.7.0dev (2019-12-18T05:53:19Z master efbc0d499c) [x86_64-linux]
2038-01-...
nobu (Nobuyoshi Nakada)
08:34 AM Bug #15177: 起動した後にTZを変更するとTime#utcがずれることがある
@naruse これ何がどうFeedbackなんですか?ここまでのやりとりだと @znz は要求されている情報を既にもれなく答えているとしか読めませんが。 shyouhei (Shyouhei Urabe)
01:41 PM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
ruby_2_6 r67836 merged revision(s) d6a2bce64a7fa1099e507e1d36b5f1533f42f60f,c687be4bc01c9ce52ea990945d9304d6fe59fe9b. nagachika (Tomoyuki Chikanaga)
01:41 PM Revision 650c45dc (git): merge revision(s) d6a2bce64a7fa1099e507e1d36b5f1533f42f60f,c687be4bc01c9ce52ea990945d9304d6fe59fe9b: [Backport #16159]
time.c (find_time_t): fix round-to-zero bug
`find_time_t` did not work correctly for year older than the Epoch
because it used C's integer division (which rounds negative to zero).
For example, `TIme.new(1933)` ...
nagachika (Tomoyuki Chikanaga)
10:26 AM Bug #9291 (Rejected): array splatting a nil works, but hash splatting a nil does not
Closing as it is by design. If you want the change, please open a feature request ticket with a use case. mame (Yusuke Endoh)
08:10 AM Bug #16426 (Third Party's Issue): error generating scaffold
Following log indicates that the SEGV happens inside of ffi.
> -- Control frame information -----------------------------------------------
> ...
and
> 759d3cd000-759d3fa000 r-xp 00000000 00:26 266588 /home...
shyouhei (Shyouhei Urabe)
06:50 AM Feature #16428: Add Array#uniq?, Enumerable#uniq?
Following a suggestion of `Enumerable#uniq?`, I also added `Enumerable#uniq?` to my patch.
`Array#uniq?` is left because it is faster than `Enumerable#uniq?`.
kyanagi (Kouhei Yanagita)
05:02 AM Feature #16428: Add Array#uniq?, Enumerable#uniq?
I seem to member that many years ago, I made the same proposal, and Nobu created a patch, but unfortunately, I didn't find any traces anymore on this tracker or in my mail.
Anyway, I support this proposal. It's definitely an useful fu...
duerst (Martin Dürst)
05:53 AM Revision efbc0d49 (git): Merge bundler-2.1.1 from bundler/bundler
hsbt (Hiroshi SHIBATA)
05:38 AM Bug #16384: Cannot cross-compile 2.7: undefined method `each_builtin' for RubyVM:Class (NoMethodError)
I confirmed that the problem was fixed in cf948a3d3f and 2.7.0-rc1. Thank you for the fix! qnighy (Masaki Hara)
04:49 AM Bug #16384 (Closed): Cannot cross-compile 2.7: undefined method `each_builtin' for RubyVM:Class (NoMethodError)
could you try on current master? It was fixed.
40026a408d
ko1 (Koichi Sasada)
05:14 AM Revision fa7fa5c8 (git): delete rb_vm_call()
Nobody uses it any longer. shyouhei (Shyouhei Urabe)
05:14 AM Revision dcb603bb (git): describe mc_miss_reuse_call [ci skip]
shyouhei (Shyouhei Urabe)
04:35 AM Revision fcd8bafd (git): Use a temporary file for chown test
Errno::EROFS may occur when the source tree is placed in a
read-only filesystem.
nobu (Nobuyoshi Nakada)
04:30 AM Revision c147eeff (git): [ruby/io-console] Skip Interrupt test on Linux
Hangs up only in ruby/ruby on Travis-CI.
https://github.com/ruby/io-console/commit/de39aa6dd6
nobu (Nobuyoshi Nakada)
03:52 AM Revision f054f11a (git): per-method serial number
Methods and their definitions can be allocated/deallocated on-the-fly.
One pathological situation is when a method is deallocated then another
one is allocated immediately after that. Address of those old/new method
entries/definitions ...
shyouhei (Shyouhei Urabe)
03:07 AM Feature #14912: Introduce pattern matching syntax
How long is the current pattern matching expected to stay experimental before becoming stabilized? (And thanks for the work so far on it!) tjpalmer (Tom Palmer)
01:33 AM Revision 77e3078e (git): [ruby/io-console] Set raw mode strictly same as cfmakeraw
* Default VMIN and VTIME to minimum input.
* Disable parity check bits explicitly.
* Disable all bits for flow control on input.
Co-Authored-By: NARUSE, Yui <naruse@airemix.jp>
https://github.com/ruby/io-console/commit/5ce201a686
nobu (Nobuyoshi Nakada)
01:20 AM Feature #16430 (Rejected): Resultion of constants in enclosing class/module affected by how nested classes/modules are declared
It is by design. See "Scope" section of https://github.com/ruby/ruby/blob/master/doc/syntax/modules_and_classes.rdoc mame (Yusuke Endoh)
12:08 AM Feature #16430: Resultion of constants in enclosing class/module affected by how nested classes/modules are declared
What is the purpose of writing the code in three different files? It only looks to me that it is making things more complicated.
A::B.foo and A::C.foo are undefined, and return a NoMethodError, as expected. If you meant A::B#foo and A...
sawa (Tsuyoshi Sawada)
12:11 AM Feature #16419: FrozenError.new ignores receiver:
I added this to https://bugs.ruby-lang.org/issues/16393 znz (Kazuhiro NISHIYAMA)
12:07 AM Misc #16393: DevelopersMeeting20191220Japan
* [Feature #16419] FrozenError.new ignores receiver: (znz)
* It seems that no one have strong opinion. So I want matz to decide.
* [Feature #16420] Warning[:experimental]=false (znz)
* I heard many warnings may make users trying p...
znz (Kazuhiro NISHIYAMA)

12/17/2019

08:13 PM Feature #16430 (Rejected): Resultion of constants in enclosing class/module affected by how nested classes/modules are declared
I'm not sure if this is intentional (in which case it really isn't documented anywhere, and probably should be) or a bug, but imagine the following code:
``` ruby
# lib/a.rb
module A
FOO = :BAR
end
# lib/a/b.rb
require_relat...
MikeVastola (Mike Vastola)
05:19 PM Revision 25447724 (git): Skip optimized method check for most method IDs
Previously every time a method was defined on a module, we would
recursively walk all subclasses to see if the module was included in a
class which the VM optimizes for (such as Integer#+).
For most method definitions we can tell immedi...
jhawthorn (John Hawthorn)
05:19 PM Revision 92454624 (git): Replace debug test with assertion
It's a Ruby bug if this ever happens check it as an assertion instead of
paying the cost of the check every time.
jhawthorn (John Hawthorn)
05:19 PM Revision a01d22b8 (git): Check type with BUILTIN_TYPE in method cache clear
We know that this is a heap-allocated object (a CLASS, MODULE, or
ICLASS) so we don't need to check if it is an immediate value. This
should be very slightly faster.
jhawthorn (John Hawthorn)
05:19 PM Revision 8e56d3a6 (git): Define PREV_CLASS_SERIAL
Avoids genereating a "throwaway" sentinel class serial. There wasn't any
read harm in doing so (we're at no risk of exhaustion and there'd be no
measurable performance impact), but if feels cleaner that all class
serials actually end up ...
jhawthorn (John Hawthorn)
05:19 PM Revision d7a50a5c (git): Avoid revisiting seen nodes clearing method cache
rb_clear_method_cache_by_class calls rb_class_clear_method_cache
recursively on subclasses, where it will bump the class serial and clear
some other data (callable_m_tbl, and some mjit data).
Previously this could end up taking a long t...
jhawthorn (John Hawthorn)
03:08 PM Revision 8a40dce0 (git): * 2019-12-18 [ci skip]
git[bot]
03:08 PM Revision bcec03af (git): Revert "Skip interruptible raw mode test on Travis-CI"
This reverts commit 65731a1330ed02691e3c343d2feeb8d0a72af3fd. nobu (Nobuyoshi Nakada)
03:08 PM Revision 07ed8f2f (git): [ruby/io-console] Skip interrupt
https://github.com/ruby/io-console/commit/8ed5a2bcc3 nobu (Nobuyoshi Nakada)
02:55 PM Revision 905a926e (git): [ruby/io-console] Timeout in the child process
https://github.com/ruby/io-console/commit/b8411689a5 nobu (Nobuyoshi Nakada)
02:55 PM Revision 4b7d27ca (git): [ruby/io-console] Use IO.console instead of STDIN
https://github.com/ruby/io-console/commit/9e3ec5b936 nobu (Nobuyoshi Nakada)
02:38 PM Revision 1b86309b (git): Squelch filter-branch warning and sleeping
nobu (Nobuyoshi Nakada)
02:31 PM Feature #16428: Add Array#uniq?, Enumerable#uniq?
> I often need to check if an array have duplicate elements.
Makes sense to me; I have had situations where I needed this
too in the past (including situations for non-unique entries
in an Array), so I agree on the general use case ...
shevegen (Robert A. Heiler)
01:24 PM Feature #16428 (Feedback): Add Array#uniq?, Enumerable#uniq?
I propose Array#uniq?.
I often need to check if an array have duplicate elements.
This method returns true if no duplicates are found in self, otherwise returns false.
If a block is given, it will use the return value of the block...
kyanagi (Kouhei Yanagita)
01:33 PM Revision ffa7cece (git): [rubygems/rubygems] Move `require uri` to source_list
https://github.com/rubygems/rubygems/commit/c6b4df5bfc mihaibuzgau
12:56 PM Revision 299db379 (git): Use while instead of loop
znz (Kazuhiro NISHIYAMA)
12:36 PM Bug #16427: Revert did_you_mean promotion to default gem.
I want to make point for the default gem promotion.
One of Ruby's goal is to be very appealing to developers. did_you_mean is very helpful in this regard. As are well written error messages. Or source_locations of Ruby methods. Or a w...
rbjl (Jan Lelis)
12:05 PM Bug #16427 (Rejected): Revert did_you_mean promotion to default gem.
One of the points made in #16363 was:
> so we can always reliably require it whenever we want to.
That is not true anymore, because did_you_mean is always required when RubyGems are enabled since [1]:
~~~
$ ruby -e 'puts $LOADE...
vo.x (Vit Ondruch)
11:23 AM Revision 9d3ffcfb (git): disable assertion.
This assertion is not needed because we found the bug.
ba11a74745.
ko1 (Koichi Sasada)
09:16 AM Bug #12407 (Rejected): 2 failures of TestMkmf::TestConvertible
古い環境で古い clang を使っている人はいなさそうなので閉じて良さそうです。 znz (Kazuhiro NISHIYAMA)
08:29 AM Bug #16426 (Third Party's Issue): error generating scaffold
Hello, I am following the Oding project tutorital to create my first ruby on rails app and I am trying to generate a scaffold and I am given the following error. At the end it aborts it. Any idea of what is going wrong?
michaelswrig...
doinitwright98 (Michael Wright)
08:18 AM Revision 65731a13 (git): Skip interruptible raw mode test on Travis-CI
nobu (Nobuyoshi Nakada)
07:56 AM Revision b226a681 (git): [rubygems/rubygems] require `uri` in source.rb
https://github.com/rubygems/rubygems/commit/8de4d0272e mihaibuzgau
07:12 AM Revision ea717d1c (git): convert macros into inline functions
For better readability. shyouhei (Shyouhei Urabe)
05:21 AM Revision d616926a (git): Remove an unnecessary variable
aycabta (aycabta .)
05:14 AM Revision 8f52604b (git): Remove unnecessary double bangs from Pathname#root?
pocke (Masataka Kuwabara)
05:01 AM Revision 9421c780 (git): [ruby/logger] Fixed leaked tempfile
https://github.com/ruby/logger/commit/fb3eff153f nobu (Nobuyoshi Nakada)
04:59 AM Revision 4f9a4c1a (git): Remove unnecessary branches
aycabta (aycabta .)
04:57 AM Revision e3631924 (git): [ruby/io-console] bump up to 0.5.2
nobu (Nobuyoshi Nakada)
04:55 AM Revision b39d5da9 (git): [ruby/io-console] Use TCSANOW to prevent from discarding the input buffer
TCSAFLUSH discards the buffer read before the mode change, which makes
IRB ignore the buffer input immediately after invoked. TCSANOW
preserves the buffer.
https://github.com/ruby/io-console/commit/b362920182
mame (Yusuke Endoh)
04:55 AM Revision 81eb2d16 (git): [ruby/io-console] Disable implementation-defined special control characters
In raw mode with interrupt enabled.
https://github.com/ruby/io-console/commit/e9e8e3ff17
nobu (Nobuyoshi Nakada)
04:55 AM Revision ec89a0f8 (git): [ruby/io-console] Added the test for intr option
https://github.com/ruby/io-console/commit/4f01db102d nobu (Nobuyoshi Nakada)
04:55 AM Revision a9d17af2 (git): [ruby/io-console] Removed dead code
https://github.com/ruby/io-console/commit/a49462ed97 nobu (Nobuyoshi Nakada)
04:30 AM Revision 64ce658e (git): Fix return condition according to the condition to skip
aycabta (aycabta .)
04:19 AM Revision a1713bed (git): [ruby/reline] Implement completion_append_character
There is already the possibility to set Reline.completion_append_character.
However, it is not used by the line editor.
https://github.com/ruby/reline/commit/ab798931b9
gettalong (Thomas Leitner)
04:19 AM Revision 11db4d3a (git): [ruby/reline] Disable any implementation-defined special control characters
Including dsusp, lnext, and so on.
https://github.com/ruby/reline/commit/a44abe586b
nobu (Nobuyoshi Nakada)
04:15 AM Revision fbe22990 (git): add debug counter to count `call` reusing cases.
ko1 (Koichi Sasada)
04:10 AM Revision 618d0911 (git): Support change search direction
aycabta (aycabta .)
04:07 AM Revision a14a0244 (git): Support forward-search-history by C-s
aycabta (aycabta .)
02:53 AM Revision c687be4b (git): Added a test for [Bug #16159]
nobu (Nobuyoshi Nakada)
01:48 AM Revision ebe5b66c (git): Reduce tzset calls
Set up-to-date flag always when calling tzset(). nobu (Nobuyoshi Nakada)
01:36 AM Bug #16159 (Closed): rubyspec about time fails in Asia/Kuala_Lumpur timezone
Applied in changeset commit:git|d6a2bce64a7fa1099e507e1d36b5f1533f42f60f.
----------
time.c (find_time_t): fix round-to-zero bug
`find_time_t` did not work correctly for year older than the Epoch
because it used C's integer division (w...
mame (Yusuke Endoh)
01:27 AM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
Thanks, I will commit this soon.
```diff
diff --git a/time.c b/time.c
index 25b843e405..ef8a995da4 100644
--- a/time.c
+++ b/time.c
@@ -3365,12 +3365,12 @@ find_time_t(struct tm *tptr, int utc_p, time_t *tp)

*tp = guess_...
mame (Yusuke Endoh)
01:13 AM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
mame (Yusuke Endoh) wrote:
> By further investigation, now I think that it is a bug of Time.new.
> ...
Use DIV already defined in time.c.
The patch seems fine except that.
akr (Akira Tanaka)
12:43 AM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
Seems a bug indeed. Using java.time (by using TruffleRuby) gives the same result as the patch. Eregon (Benoit Daloze)
12:27 AM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
With the patch applied, `Time.new(1933)` works as expected in Asia/Kuala_Lumpur
```
$ TZ=Asia/Kuala_Lumpur ./miniruby -e 'p Time.new(1933)'
1933-01-01 00:20:00 +0720
```
mame (Yusuke Endoh)
12:25 AM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
By further investigation, now I think that it is a bug of Time.new.
`find_time_t` in time.c uses integer division like `((tptr->tm_year-69)/4)`. Because 1933 is older than 1970, `tptr->tm_year` is negative. The result of division is...
mame (Yusuke Endoh)
01:36 AM Revision d6a2bce6 (git): time.c (find_time_t): fix round-to-zero bug
`find_time_t` did not work correctly for year older than the Epoch
because it used C's integer division (which rounds negative to zero).
For example, `TIme.new(1933)` returned a wrong time whose year is 1922
in Asia/Kuala_Lumpur because...
mame (Yusuke Endoh)
12:15 AM Feature #16425: Add Thread#dig
I think the use case has been described and ruby users may agree
that this could be an improvement (e. g. such as the example given
by nobu for more succinct code).
#dig on Array, Hash and Struct makes sense; for Thread perhaps the
...
shevegen (Robert A. Heiler)

12/16/2019

11:25 PM Bug #16413 (Closed): Net::FTP#put で書き込みエラーが発生した時のコネクション切断
Applied in changeset commit:git|5be34d6a3310065850c0c530db6936415124b5d9.
----------
ensure to close the data connection [Bug #16413]
naruse (Yui NARUSE)
11:24 PM Revision 5da4a310 (git): close datasocket on stor of server side
naruse (Yui NARUSE)
11:24 PM Revision 5be34d6a (git): ensure to close the data connection [Bug #16413]
naruse (Yui NARUSE)
11:21 PM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
Using `Time.new(year,1,2)` + a comment indicating might be a workaround, but it's not exactly nice. Eregon (Benoit Daloze)
11:19 PM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
Isn't it weird that
```
$ TZ=Asia/Kuala_Lumpur ruby -e 'p Time.new(1933)'
1932-12-31 00:00:00 +0700
```
i.e., Time.new(1933) returns a time in 1932?
If that's actually what native calls return and not a bug then let's use `with_t...
Eregon (Benoit Daloze)
09:52 AM Bug #16159 (Assigned): rubyspec about time fails in Asia/Kuala_Lumpur timezone
There is no 00:00:00 1 Jan. 1933 in the timezone Asia/Kuala_Lumpur
```
$ TZ=Asia/Kuala_Lumpur irb
irb(main):001:0> t = Time.new(1932, 12, 31, 23, 59, 59)
=> 1932-12-31 23:59:59 +0700
irb(main):002:0> t + 1
=> 1933-01-01 00:20:00 ...
mame (Yusuke Endoh)
10:18 PM Misc #14632: [ANN] git.ruby-lang.org
Hi @normal , I've added your email address to the list. mame (Yusuke Endoh)
06:59 PM Misc #14632: [ANN] git.ruby-lang.org
@hsbt: please add normal@ruby-lang.org
(I don't have a GH account, will not use JS or agree to their Terms of Service)
Btw, ruby-core -> redmine mail is still broken:
[ruby-core:96254] [Feature #16131] (posted recently)
original r...
normalperson (Eric Wong)
02:32 AM Misc #14632: [ANN] git.ruby-lang.org
@duerst Yes, thanks! mame (Yusuke Endoh)
08:08 PM Revision 95213f6d (git): Check wether Readline.completion_append_character= exists
aycabta (aycabta .)
06:31 PM Revision b12bc3b0 (git): thread.c: avoid needless read after select|ppoll
We do not need to issue pipe|eventfd read(2) syscall
unless select, ppoll|poll declares the FD needs reading.
Eric Wong
04:43 PM Misc #16393: DevelopersMeeting20191220Japan
* [Bug #16260] Symbol#to_proc behaves like lambda, but doesn't acknowledge it (alanwu)
* This should make `Proc#lambda?` more accurate.
* [Bug #16406] `(lambda_proc << normal_proc).lambda?` should return false (alanwu)
* I think t...
alanwu (Alan Wu)
03:56 PM Bug #10650 (Closed): [PERF] bm_hash_keys and bm_hash_values
The benchmark has been greatly improved (about 3 times) since this ticket was open. So I close this ticket.
Still, it might be worth investigating the commits in question, but unfortunately, there is no one who is willing to do. If ...
mame (Yusuke Endoh)
03:44 PM Revision bba6386d (git): test/ruby/test_process.rb: suppress "unused variable" warning
mame (Yusuke Endoh)
03:39 PM Bug #12407 (Feedback): 2 failures of TestMkmf::TestConvertible
@znz これってまだ開いておく必要あります? mame (Yusuke Endoh)
03:30 PM Bug #11268: Zlib::DataError: incorrect header check
RFC 7230, which obsoletes RFC 2616, says "Note: Some non-conformant implementations send the "deflate" compressed data without the zlib wrapper". But it doesn't say the actual fallback algorithm.
https://httpwg.org/specs/rfc7230.html#de...
naruse (Yui NARUSE)
02:58 PM Bug #11268: Zlib::DataError: incorrect header check
https://zlib.net/zlib_faq.html#faq39
> 39 . What's the difference between the "gzip" and "deflate" HTTP 1.1 encodings?
> ...
> Bottom line: use the gzip format for HTTP 1.1 encoding.
mame (Yusuke Endoh)
02:50 PM Bug #11268 (Rejected): Zlib::DataError: incorrect header check
No! RFC2616 says:
```
deflate
The "zlib" format defined in RFC 1950 [31] in combination with
the "deflate" compression mechanism described in RFC 1951 [29].
```
https://tools.ietf.org/html/rfc2616#section-3....
mame (Yusuke Endoh)
02:31 PM Bug #11268: Zlib::DataError: incorrect header check
I've changed Net::HTTP to support (raw) deflate correctly. Now it works correctly.
```
$ ./local/bin/ruby -ropen-uri -e 'URI.open("https://www.hoveround.com")'
```
@nkmrya Thank you for the great investigation.
mame (Yusuke Endoh)
02:29 PM Bug #11268 (Closed): Zlib::DataError: incorrect header check
Applied in changeset commit:git|5105240b1e851410020b3b3f1a2bead7ffdd4291.
----------
lib/net/http/response.rb: support raw deflate correctly
Net::HTTP had used `Zlib::Inflate.new(32 + Zlib::MAX_WBITS)` for all
content encoding (deflate...
mame (Yusuke Endoh)
03:30 PM Bug #12388 (Third Party's Issue): Iterating second dbm enum causes first dbm enum to stop
I can reproduce the issue with "GDBM version 1.8.3. 10/15/2002", but not with "GDBM version 1.18.1. 27/10/2018" nor "Berkeley DB 5.3.28: (September 9, 2013)". It might be fixed on the side of GDBM. Please try a newer version. mame (Yusuke Endoh)
03:15 PM Bug #10929 (Feedback): NilClass#to_proc and & don't mix?
The suggested change is harmful. It will break delegation: `def foo(&blk); bar(&blk); end; foo()`.
Ruby allows redefinition of `Integer#/` which is incredibly harmful, so it is possible to allow `NilClass#to_proc`. But do you really...
mame (Yusuke Endoh)
03:02 PM Bug #13144 (Closed): prettyprint doesn't detect cycles when wrapped inside Delegators
Applied in changeset commit:git|6a75a460536a32fb62184dc5d8d66ddd737a9bad.
----------
Make prettyprint’s cycle detection aware of Delegator instances
Fixes [Bug #13144]
Co-Authored-By: Nobuyoshi Nakada <nobu@ruby-lang.org>
richardviney (Richard Viney)
03:01 PM Revision c6b1342d (git): * 2019-12-17 [ci skip]
git[bot]
02:43 PM Revision 6a75a460 (git): Make prettyprint’s cycle detection aware of Delegator instances
Fixes [Bug #13144]
Co-Authored-By: Nobuyoshi Nakada <nobu@ruby-lang.org>
richardviney (Richard Viney)
02:39 PM Revision 251f5d82 (git): Revert "lib/net/http/response.rb: support raw deflate correctly"
This reverts commit 5105240b1e851410020b3b3f1a2bead7ffdd4291.
In RFC 2616:
```
deflate
The "zlib" format defined in RFC 1950 [31] in combination with
the "deflate" compression mechanism described in RFC 1951 [29].
``...
mame (Yusuke Endoh)
02:20 PM Revision 5105240b (git): lib/net/http/response.rb: support raw deflate correctly
Net::HTTP had used `Zlib::Inflate.new(32 + Zlib::MAX_WBITS)` for all
content encoding (deflate, zlib, and gzip).
But the argument `32 + Zlib::MAX_WBITS` means zlib and gzip decoding
with automatic header detection, so (raw) deflate compr...
mame (Yusuke Endoh)
02:01 PM Revision d6fd3903 (git): Enhancements for ENV doc
burdettelamar (Burdette Lamar)
01:50 PM Feature #15425: Store MJIT header into Ruby versioned directory.
Why is this needed?
It seems having no effects.
```diff
--- a/configure.ac
+++ b/configure.ac
@@ -3096,9 +3096,6 @@ AC_ARG_ENABLE(multiarch,
[multiarch=], [unset multiarch])
AS_IF([test ${multiarch+set}], [
AC_DEFI...
nobu (Nobuyoshi Nakada)
12:38 PM Feature #16425 (Open): Add Thread#dig
`Thread` has `#[]` method like as `Array`, `Hash`, `Struct` and so on, but no `#dig`.
For instance, `PP::PPMethods#check_inspect_key` in pp.rb can be simplified with the combination of this method and safe navigation operator.
From...
nobu (Nobuyoshi Nakada)
12:26 PM Bug #15828: DOTfiles and DOTfolders aren't allowed in $HOME folder on Haiku
I'm working this at https://github.com/ruby/ruby/pull/2174
But it's still WIP status. I'm going to try in the next year.
hsbt (Hiroshi SHIBATA)
11:47 AM Bug #15828 (Closed): DOTfiles and DOTfolders aren't allowed in $HOME folder on Haiku
Frankly speaking, it looks very expensive for Ruby to support Haiku as it is very different from the Unix-like system's convention.
If you really want to fix the issue, please submit the issue to each upstream, as nobu said. I recomm...
mame (Yusuke Endoh)
11:47 AM Revision d8db343a (git): Merge RubyGems 3.1.1 and update the NEWS entry for RubyGems
hsbt (Hiroshi SHIBATA)
11:34 AM Bug #15827 (Rejected): Haiku: SSL tests failing
As I said in #15795, there is no platform maintainer for Haiku. Let's discuss the issue on that ticket. mame (Yusuke Endoh)
11:32 AM Bug #15795 (Feedback): Some test fails on Haiku
Unfortunately, there is no platform maintainer for Haiku. Could you investigate the issue yourself, and try to create a patch? If it is reasonably small, we may import it to the core. Thank you. mame (Yusuke Endoh)
10:54 AM Bug #15944 (Closed): Simultaneous line feeding and scrolling doesn't work well with irb on tmux
Thank you for the reporting. It does not reproduce now. IRB is now actively developed, so I guess it is already fixed. If not, feel free to reopen. mame (Yusuke Endoh)
10:29 AM Bug #16342: macOS + Ruby 2.6.0 以降で拡張ライブラリ内での waitpid() コールに失敗する
解決策を持っているわけでも何でもないのですが、気になった事項です。
Process#forkに対応するRuby本体のprocess.cを読むとC言語のレベルでfork(2)を行う前にいくつかの前準備を行っています。一方、GitHubのsamble.cを拝見すると単純にfork(2)を呼び出していますので、そういった前準備を行わないわけなので、何が起きても不思議がない気がします。
fork(2)自体はProcess#forkを使用する様に変更できれば、回避できる問題の...
taca (Takahiro Kambe)
08:03 AM Bug #16342 (Rejected): macOS + Ruby 2.6.0 以降で拡張ライブラリ内での waitpid() コールに失敗する
頻度の問題で、2.6.0 以前でもこの問題は起きえます。多少人為的ですが、irbで↓のようにやれば Interrupted system call になりました。
```
irb(main):001:0> RUBY_VERSION
=> "2.5.7"
irb(main):002:0> trap(:WINCH) { }
=> "SYSTEM_DEFAULT"
irb(main):003:0> load "sample.rb" # ロード開始直後にターミナ...
mame (Yusuke Endoh)
08:52 AM Revision ba11a747 (git): ensure cc->def == cc->me->def
The equation shall hold for every call cache. However prior to this
changeset cc->me could be updated without also updating cc->def. Let's
make it sure by introducing new macro named CC_SET_ME which sets cc->me
and cc->def at once.
shyouhei (Shyouhei Urabe)
07:59 AM Revision 6545d5bb (git): Use CDN instead of raw.githubusercontent.com
znz (Kazuhiro NISHIYAMA)
07:58 AM Revision 8b921813 (git): Fix open without close [ci skip]
znz (Kazuhiro NISHIYAMA)
07:31 AM Bug #16284 (Closed): Net/HTTP consuming multiple times more memory compared to other libraries
Thanks. I think this is not a bug. Closing this issue.
I guess there may be room for improvement in Net::HTTP (and Excon?), though. Investigation and a patch are welcome.
mame (Yusuke Endoh)
07:17 AM Bug #16392 (Closed): test-all failure Windows - TestEncoding#test_nonascii_library_path
Applied in changeset commit:git|04e95f8985066b4ae1e97b045efda98bdefa07bd.
----------
Get rid of infinite recursion at loading transcoder
Disable encoding US-ASCII path to filesystem on Windows too.
[Bug #16392]
nobu (Nobuyoshi Nakada)
07:16 AM Revision 04e95f89 (git): Get rid of infinite recursion at loading transcoder
Disable encoding US-ASCII path to filesystem on Windows too.
[Bug #16392]
nobu (Nobuyoshi Nakada)
05:56 AM Bug #16424 (Closed): abort without arguments does not print error info
Applied in changeset commit:git|d2f04d332f2ff04f25202ed38e23de526a9aea46.
----------
Kernel#abort without arguments should print error info
[Bug #16424]
nobu (Nobuyoshi Nakada)
05:55 AM Revision d2f04d33 (git): Kernel#abort without arguments should print error info
[Bug #16424] nobu (Nobuyoshi Nakada)
05:35 AM Bug #16410: Spec failure - "File.utime allows Time instances in the far future to set mtime and atime"
I cannot reproduce the issue on Ubuntu with ext4 filesystem.
```
$ make test-all TESTS="spec/ruby/core/file/utime_spec.rb" MSPECOPT="-fs"
ruby 2.7.0dev (2019-12-09T11:48:35Z master c2dc27d643) [x86_64-linux]
[| | ==================...
mame (Yusuke Endoh)
05:23 AM Bug #16418 (Closed): when configuring --with-os-version-string=none fails to strip entire version string on MacOS
The patch has been already merged. Closing, thanks. mame (Yusuke Endoh)
05:20 AM Bug #16423 (Feedback): Ruby Crash
Thank for submitting the log. Unfortunately, the crash log has almost no information to make debugging possible. Could you paste the console output too? If possible, the source code might be helpful. Also, Ruby 2.3.6 is already EOL. ... mame (Yusuke Endoh)
01:09 AM Revision 1e80a208 (git): Update the NEWS entry for Bundler 2.1.0
hsbt (Hiroshi SHIBATA)
01:05 AM Revision 2344d8ac (git): * 2019-12-16 [ci skip]
git[bot]
01:05 AM Revision f47c3824 (git): gc.h: Add SET_MACHINE_STACK_END specific for Powerpc64 (#1767)
Currently we are not able to grab the correct end/top of the stack on
powerpc64 due to the fact that it uses the fallback function.
The fallback function does not return the correct top of the stack
because it adds a new frame and the r...
Breno Leitao

12/15/2019

11:58 PM Misc #14632: [ANN] git.ruby-lang.org
A very small but important correction:
mame (Yusuke Endoh) wrote:
> All the Ruby committers,
> ...
This is an important reminder: You will not be able to push any change to git.ruby-lang.org after 1st Jan.
2020 unless your committe...
duerst (Martin Dürst)
01:41 PM Misc #14632: [ANN] git.ruby-lang.org
All the Ruby committers,
This is an important reminder: You will not be able to push any change to git.ruby-lang.org after 1st Jan. 2020 unless your committer email address is not listed in https://github.com/ruby/ruby-commit-hook/blo...
mame (Yusuke Endoh)
02:51 PM Bug #16392: test-all failure Windows - TestEncoding#test_nonascii_library_path
@nobu,
In a ps window:
```
ruby 2.7.0dev (2019-12-12T23:58:42Z master 1140625cd3) [x64-mswin64_140]
Encoding filesystem Windows-1252
Encoding locale IBM437
```
In both cmd & ps windows:
```
ruby 2.7.0dev (2019-12-15T07:4...
MSP-Greg (Greg L)
01:47 PM Bug #16392: test-all failure Windows - TestEncoding#test_nonascii_library_path
What encodings are used as the "filesystem" and "locale"? nobu (Nobuyoshi Nakada)
02:20 PM Feature #15966: Introducing experimental features behind a flag, disabled by default
I have feelings non unlike @Eregon's. Citing from my comment in [remove method-reference operator](https://bugs.ruby-lang.org/issues/16275) (which removal may, or may not be a good thing, but that's not the point currently):
> ....
>...
zverok (Victor Shepelev)
01:49 PM Feature #15966: Introducing experimental features behind a flag, disabled by default
Some more thoughts on a similar subject by the author of RuboCop in a blog post:
https://metaredux.com/posts/2019/12/06/ruby-where-do-we-go-now.html
There are interesting discussions in the Reddit of that blog post:
https://www.redd...
Eregon (Benoit Daloze)
02:17 PM Bug #16422 (Closed): IO#set_encoding_by_bom when encoding is already set
Applied in changeset commit:git|e8c62836a6292bf2f691de458b24ea50c51b452a.
----------
IO#set_encoding_by_bom should err when encoding is already set
Except for ASCII-8BIT. [Bug #16422]
nobu (Nobuyoshi Nakada)
02:13 PM Revision e8c62836 (git): IO#set_encoding_by_bom should err when encoding is already set
Except for ASCII-8BIT. [Bug #16422] nobu (Nobuyoshi Nakada)
01:19 PM Revision eeb99fb5 (git): tool/gen-mailmap.rb: odaira is removed as he is added in upstream
https://github.com/ruby/ruby-commit-hook/commit/ddc83bea6fe6f4696e140b605db10ef0c922bba6 mame (Yusuke Endoh)
01:06 PM Revision 48bab6fe (git): tool/gen-mailmap.rb: Added for generating git `.mailmap` file
`.mailmap` can be used To show canonical names and email addresses.
It is helpful for statistics of committers.
mame (Yusuke Endoh)
11:09 AM Revision a83c46e3 (git): Add more debug info
closed server doesn't have useful info.
So call inspect before close.
And add local debug code in comment.
https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11x/ruby-master/log/20191215T092405Z.fail.html.gz
```
1) Failure:
IMAPT...
znz (Kazuhiro NISHIYAMA)
08:28 AM Bug #16354: Memory corruption in Enumerable#reverse_each
ruby_2_6 r67835 merged revision(s) ff41663403d3eb76d95f465cb94e14d2faaa04d1. nagachika (Tomoyuki Chikanaga)
08:28 AM Revision fd3c731a (git): merge revision(s) ff41663403d3eb76d95f465cb94e14d2faaa04d1: [Backport #16354]
Fix memory corruption in Enumerable#reverse_each [ruby-dev:50867]
[Bug #16354]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_6@67835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nagachika (Tomoyuki Chikanaga)
08:22 AM Feature #15829: Object#then_if(condition){}
How about `call`ing a condition object if it's callable instead of simply using value as a condition?
```
class Object
def then_if(condition, &block)
if condition
if (condition.respond_to?(:call) && condition.call(self...
okuramasafumi (Masafumi OKURA)
08:12 AM Bug #16196: `RUBY_DEBUG=gc_stress ruby -ropenssl` dumps core
ruby_2_6 r67834 merged revision(s) 203b7fa1ae8cc40d41c38d684f70b3fea7fae813,0131fab749fb76800de09e49a6abf910201c5b58,9c0cd5c569ba22bc68d1a77ad6580a275cd99639,c144d7215b3444fa36d28d540b60170a5b30743d. nagachika (Tomoyuki Chikanaga)
08:12 AM Revision d1a33d8e (git): merge revision(s) 203b7fa1ae8cc40d41c38d684f70b3fea7fae813,0131fab749fb76800de09e49a6abf910201c5b58,9c0cd5c569ba22bc68d1a77ad6580a275cd99639,c144d7215b3444fa36d28d540b60170a5b30743d: [Backport #16196]
Guard static variable first
* ext/openssl/ossl_asn1.c (Init_ossl_asn1): register the static
variable to grab an internal object, before creating the object.
otherwise the just-created object could get collect...
nagachika (Tomoyuki Chikanaga)
07:48 AM Revision 980ddca4 (git): Prepare to release rubygems-3.1.0
hsbt (Hiroshi SHIBATA)
07:41 AM Revision 9f431600 (git): Delegate should be supported now
Since `did_you_mean` dropped its dependency on it. deivid (David Rodríguez)
07:41 AM Revision 286cb339 (git): Fixed test failures with gem command path on ruby core repo.
hsbt (Hiroshi SHIBATA)
07:41 AM Revision 0fab9005 (git): Vendor thor 1.0.0
deivid (David Rodríguez)
07:41 AM Revision 38002a8a (git): Prepare to release bundler-2.1.0
hsbt (Hiroshi SHIBATA)
07:21 AM Bug #16279: Backport 463092b8
ruby_2_6 r67833 merged revision(s) 463092b84da7933f307cc8747f948f68ef19f5fd. nagachika (Tomoyuki Chikanaga)
07:20 AM Revision 70d88561 (git): merge revision(s) 463092b84da7933f307cc8747f948f68ef19f5fd: [Backport #16279]
Update rake-12.3.3.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_6@67833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nagachika (Tomoyuki Chikanaga)
07:14 AM Bug #15968: Custom marshal_load methods allow object instance variables to "leak" into other objects
ruby_2_6 r67832 merged revision(s) c9423b016cfeab852bc5a829e55e0a11f80b3ab7,0b1e26398e018116180bf41cb63887f77d5d1b82,78ee2c245331e353e218b8fac9ca722a2bcd8fea. nagachika (Tomoyuki Chikanaga)
07:14 AM Revision ec2934d5 (git): merge revision(s) c9423b016cfeab852bc5a829e55e0a11f80b3ab7,0b1e26398e018116180bf41cb63887f77d5d1b82,78ee2c245331e353e218b8fac9ca722a2bcd8fea: [Backport #15968]
marshal.c: check instance variable count
* marshal.c (w_obj_each): ensure that no instance variable was
added while dumping other instance variables. [Bug #15968]
Hoisted out w_ivar_each
marshal.c: ...
nagachika (Tomoyuki Chikanaga)
07:12 AM Misc #16407: Add .github/workflows/cygwin.yml
> Could you investigate and fix it?
Sorry, I have no idea now...
If develop is hindered, you can revert it.
fd0 (Daisuke Fujimura)
06:17 AM Bug #16424 (Closed): abort without arguments does not print error info
https://docs.ruby-lang.org/ja/2.0.0/method/Kernel/m/abort.html
には「引数を省略した呼び出し時に $! が nil でなければその例外の メッセージを標準エラー出力 $stderr に出力」されるとありますが、 1.9 から出力されなくなっているようです。
```
% docker run -it --rm rubylang/all-ruby env ALL_RUBY_SINCE=ruby-1.6 ...
znz (Kazuhiro NISHIYAMA)
05:47 AM Revision e2b192f7 (git): rand(beginless_range) raise Errno::EDOM instead of TypeError
same as `rand(endless_range)`
Before:
```
$ ruby -e 'rand(..1)'
Traceback (most recent call last):
2: from -e:1:in `<main>'
1: from -e:1:in `rand'
-e:1:in `-': nil can't be coerced into Integer (TypeError)
```
After:
``...
znz (Kazuhiro NISHIYAMA)
03:21 AM Bug #14387: Ruby 2.5 を Alpine Linux で実行すると比較的浅めで SystemStackError 例外になる
I tried to reproduce this issue, but it was not reproduced today.
Is this issue fixed?
ruby:2.5-alpine
```
$ docker-compose build; docker-compose up
Building web
Step 1/2 : FROM ruby:2.5-alpine
---> 5ccd5d2d442a
Step 2/2 : COP...
hshimoyama (Hiroyasu Shimoyama)
12:59 AM Feature #16244: Add a Time#before? and Time#after? method
anastasiastowers (Anastasia Stowers) wrote:
> Using the > and < symbols makes sense to compare Time only with the knowledge of the underlying unix time system being used.
I don’t think that knowledge necessary.
Rather, the time is c...
nobu (Nobuyoshi Nakada)
12:20 AM Bug #16423 (Closed): Ruby Crash
I was working with RubyMine, and tried to run the project, when it crashed and generated a report. The console output told me to submit the bug report josephmo (Joseph Mouhanna)

12/14/2019

07:13 PM Bug #16422 (Closed): IO#set_encoding_by_bom when encoding is already set
`IO#set_encoding_by_bom` docs [say](https://ruby-doc.org/core-2.7.0.preview3/IO.html#method-i-set_encoding_by_bom):
> If ios is not binmode or **its encoding has been set already**, an exception will be raised.
In reality this does...
zverok (Victor Shepelev)
04:44 PM Bug #16421: public_send with empty keyword arguments (Ruby version < 2.7)
@jeremyevans0 yeah, thanks, I see now. zverok (Victor Shepelev)
04:36 PM Bug #16421 (Closed): public_send with empty keyword arguments (Ruby version < 2.7)
You should use `ruby2_keywords`:
```ruby
def delegate(name, *args, &block)
public_send(name, *args, &block)
end
ruby2_keywords :delegate if respond_to?(:ruby2_keywords, true)
```
Then things will work correctly. Thi...
jeremyevans0 (Jeremy Evans)
03:08 PM Bug #16421 (Closed): public_send with empty keyword arguments (Ruby version < 2.7)
Probably it is something that I've just missed, so it is more a question than bug report.
In Ruby < 2.7, I'd implement "delegate everything" method as such:
```ruby
def delegate(name, *args, &block)
@something.public_send(name, *...
zverok (Victor Shepelev)
04:06 PM Feature #16420: Warning[:experimental]=false
Although I can not say whether the specific API proposed here is useful or not (matz may just
have to decide on the API for general use), I agree with the statement of controlling/toggling
the "noise" level, based on different needs by...
shevegen (Robert A. Heiler)
02:42 PM Feature #16420 (Closed): Warning[:experimental]=false
Current master always warn pattern matching syntax.
It discourage users try them.
Another noisy warnings can stop by `Warning[:deprecated]=false`.
So I think the future may be more useful if `Warning[:experimental]=false` or `Warn...
znz (Kazuhiro NISHIYAMA)
03:51 PM Bug #16392: test-all failure Windows - TestEncoding#test_nonascii_library_path
I ran Actions CI and saved the vc140 build as an artifact:
ruby 2.7.0dev (2019-12-12T23:58:42Z master 1140625cd3) [x64-mswin64_140]
Using it locally, had the same error as MinGW.
```
1) Failure:
TestEncoding#test_nonascii_li...
MSP-Greg (Greg L)
03:21 PM Revision db2ea9b0 (git): [DOC] Fixed the class name in FrozenError#receiver
nobu (Nobuyoshi Nakada)
03:19 PM Revision 38b9d213 (git): Revert "[DOC] Fixed the class name in FrozenError#receiver"
This reverts commit 5f56a5fc9be9ea7b088795c2d3871c2352a020c2.
`FrozenError.new(mesg, nil).receiver` should not raise an
ArgumentError.
nobu (Nobuyoshi Nakada)
03:15 PM Revision 52b1ba0b (git): * 2019-12-15 [ci skip]
git[bot]
03:14 PM Revision 5f56a5fc (git): [DOC] Fixed the class name in FrozenError#receiver
nobu (Nobuyoshi Nakada)
03:14 PM Revision 33f0ef44 (git): [DOC] Fixed the FrozenError.new result [ci skip]
nobu (Nobuyoshi Nakada)
11:50 AM Feature #14844: Future of RubyVM::AST?
BTW, I think it would be good to include other Ruby implementations (cc @headius @enebo) in this discussion,
since I think we all want to support a stable API for ASTs longer term.
As a concrete case, `actionview_precompiler` is usin...
Eregon (Benoit Daloze)
11:31 AM Feature #14844 (Open): Future of RubyVM::AST?
The ticket was closed unintentionally, I reopen it.
What's the way to mention an issue in a commit but not close it?
I clarified in the documentation that RubyVM::AbstractSyntaxTree is not stable API:
https://github.com/ruby/ruby/co...
Eregon (Benoit Daloze)
11:24 AM Feature #14844 (Closed): Future of RubyVM::AST?
Applied in changeset commit:git|b4b22b9278007b106fe40c0191f8dcf5e7e8c0f2.
----------
Clarify in the documentation that RubyVM::AbstractSyntaxTree is not stable API
* See [Feature #14844].
Eregon (Benoit Daloze)
11:26 AM Revision 9e025683 (git): Improve highlighting in RubyVM::AbstractSyntaxTree docs when using `ri`
Eregon (Benoit Daloze)
11:21 AM Revision b4b22b92 (git): Clarify in the documentation that RubyVM::AbstractSyntaxTree is not stable API
* See [Feature #14844]. Eregon (Benoit Daloze)
11:06 AM Feature #15752: A dedicated module for experimental features
FWIW, Java has such a concept too that they call "incubator modules" and basically just have the new experimental API under `jdk.incubator` (https://www.azul.com/openjdk-more-speed-less-haste/ for details).
I think we should introduce...
Eregon (Benoit Daloze)
11:01 AM Feature #15966: Introducing experimental features behind a flag, disabled by default
FWIW, Java has such a flag to enable experimental ("preview") features (I didn't know when writing this issue).
It's a single command-line flag called `--enable-preview`.
https://www.azul.com/openjdk-more-speed-less-haste/
They alre...
Eregon (Benoit Daloze)
08:53 AM Feature #16419: FrozenError.new ignores receiver:
Whether to use a positional argument or a keyword argument was discussed in #15751. I don't have a strong feelings either way (one of the patches I added in #15751 supported keyword arguments), and I don't think @eregon or @nobu had str... jeremyevans0 (Jeremy Evans)
07:29 AM Feature #16419 (Closed): FrozenError.new ignores receiver:
Other exception classes with receiver accept recevier as keyword argument of new.
But FrozenError.new accept as positional argument.
I think keyword argument is better consistency.
```
% git grep 'receiver[:=]' ../error.c
../error...
znz (Kazuhiro NISHIYAMA)
07:05 AM Revision 4cc83f9a (git): [Feature #13083] is already reverted
znz (Kazuhiro NISHIYAMA)
07:05 AM Revision 90cdcefa (git): Update warnings in NEWS
znz (Kazuhiro NISHIYAMA)
02:40 AM Revision e2708068 (git): Drop delegate dependency
Original comment:
https://github.com/ruby/did_you_mean/commit/2f26c9ee770f28da0942c42cbc9e5800535b75e1
yuki24 (Yuki Nishijima)
01:33 AM Feature #16039: Array#contains? to check if one array contains another array
There's some similarity with #15198, to the point that I can re-use my suggestion from there:
It might make sense to use ary1.to_set.superset?(ary2). That way it makes explicit the fact that ary1 must be converted to a set. But Set#su...
Dan0042 (Daniel DeLorme)

12/13/2019

11:27 PM Bug #15882: OpenSSL::X509::Name.parse usage
Thanks for the patch.
Since there wasn't any recent movement, I submitted a pull request with it as requested by jeremyevans0.
I made sure to credit you in the commit description since you did all the work.
https://github.com/ruby...
JustJosh (Joshua Stowers)
11:13 PM Bug #15882 (Closed): OpenSSL::X509::Name.parse usage
Fixed in gem. ioquatix (Samuel Williams)
09:07 PM Revision f3240eb6 (git): NEWS: fix pattern matching example
stomar (Marcus Stollsteimer)
07:58 PM Feature #14183: "Real" keyword argument
> That was already legal if foo did not accept keyword arguments. :)
my full example was this
```rb
def foo(a: nil, **args)
args
end
foo(a: 1, 'a' => 2, 1 => 3, nil => 4, true => 5, Object.new => 6)
```
This is not le...
bughit (bug hit)
05:45 PM Feature #14183: "Real" keyword argument
bughit (bug hit) wrote:
> So after this improvement, nonsense like this:
> ...
That was already legal if `foo` did not accept keyword arguments. :)
As keyword argument splats have always been just plain hashes, and not a separate ty...
jeremyevans0 (Jeremy Evans)
05:08 PM Feature #14183: "Real" keyword argument
So after this improvement, nonsense like this:
```rb
foo(a: 1, 'a' => 2, 1 => 3, nil => 4, true => 5, Object.new => 6)
```
becomes legal
and useful functionality like this destructuring example
```rb
words
.select { |pa...
bughit (bug hit)
06:30 PM Feature #16244: Add a Time#before? and Time#after? method
Using the > and < symbols makes sense to compare Time only with the knowledge of the underlying unix time system being used.
Although this is the way that we choose to store values of it in our systems, Time is special because it has ...
anastasiastowers (Anastasia Stowers)
03:40 PM Revision 835703c6 (git): * 2019-12-14 [ci skip]
git[bot]
03:39 PM Revision 84b873e3 (git): [ruby/irb] Restore environment variables
https://github.com/ruby/irb/commit/236590882c nobu (Nobuyoshi Nakada)
01:10 PM Revision ab1f3d63 (git): Fixed a typo
hsbt (Hiroshi SHIBATA)
01:00 PM Revision 2ef5f012 (git): Added explicitly loading `Gem::Command` class
hsbt (Hiroshi SHIBATA)
12:38 PM Revision eb512c5a (git): warn should be a global function
nobu (Nobuyoshi Nakada)
11:51 AM Revision a2e87123 (git): Fix visibility as module_function
nobu (Nobuyoshi Nakada)
11:47 AM Revision 6183addf (git): Add `Warning.[]` and `Warning.[]=`
nobu (Nobuyoshi Nakada)
11:47 AM Revision f3b1b645 (git): Create backtrace location array directly
nobu (Nobuyoshi Nakada)
11:47 AM Revision 0b5268af (git): Moved Kernel#warn to warning.rb
nobu (Nobuyoshi Nakada)
11:27 AM Feature #15425: Store MJIT header into Ruby versioned directory.
The two attached patches might improve the issue. The `0001-Store-MJIT-header-into-Ruby-versioned-directory-1.patch` includes the `ruby_version` in the header name, while the `0001-Store-MJIT-header-into-Ruby-versioned-directory-2.patch`... vo.x (Vit Ondruch)
11:19 AM Revision 82cc2843 (git): Prepare to release RubyGems 3.1.0 final version.
hsbt (Hiroshi SHIBATA)
10:27 AM Bug #16416: Suspicious include directories.
This is very likely created here:
https://github.com/ruby/ruby/blob/40026a408df5e3576380f6c1d8bf6c119fa2e32b/common.mk#L241
But it is not clear to me under what conditions this directory is used.
vo.x (Vit Ondruch)
09:06 AM Revision 26774351 (git): Ignore error of `apt-get update` in MJIT workflow too
znz (Kazuhiro NISHIYAMA)
09:04 AM Revision d5c73681 (git): Ignore error of `apt-get update` on GitHub Actions
znz (Kazuhiro NISHIYAMA)
08:55 AM Revision 97a17a51 (git): readable function names for inline functions.
Now, C functions written by __builtin_cexpr!(code) and others are
named as "__builtin_inline#{n}". However, it is difficult to know
what the function is. This patch rename them into
"__builtin_foo_#{lineno}" when cexpr! is in 'foo' method.
ko1 (Koichi Sasada)
02:43 AM Feature #16377: Regexp literals should be frozen
> Please don't put ideological thoughts on me, that's not a good basis for debate.
Oh no, I'm not. Sorry for the misunderstanding. I was mostly replying to comments in #8948, but I ended up posting here because this is the ticket that...
Dan0042 (Daniel DeLorme)
 

Also available in: Atom