Activity
From 02/21/2020 to 02/27/2020
02/27/2020
-
10:13 PM Bug #16660 (Rejected): Struct#deconstruct_keys inconsistent behavior
- Here is an example of a kind of surprising (at least to me) `Struct#deconstruct_keys` behaviour:
```ruby
klass = Struct.new(:a, :b)
s = klass.new(1, 2)
```
1) When some keys are not recognized and the total number of the keys is... -
09:56 PM Feature #16597: missing poll()
- Updated patch
-
07:08 PM Bug #9573 (Open): descendants of a module don't gain its future ancestors, but descendants of a class, do
-
07:03 PM Bug #9573 (Closed): descendants of a module don't gain its future ancestors, but descendants of a class, do
- Applied in changeset commit:git|3556a834a2847e52162d1d3302d4c64390df1694.
----------
Make Module#include affect the iclasses of the module
When calling Module#include, if the receiver is a module,
walk the subclasses list and include t... -
08:23 AM Bug #9573: descendants of a module don't gain its future ancestors, but descendants of a class, do
- The patch for `include` looks OK to me. To ensure there are no unseen compatibility issues, I'd like to experiment with it during the 2.8 development cycle. I am not yet sure how `prepend` should work here. I need to think about it more ...
-
07:03 PM Revision 3556a834 (git): Make Module#include affect the iclasses of the module
- When calling Module#include, if the receiver is a module,
walk the subclasses list and include the argument module in each
iclass.
This does not affect Module#prepend, as fixing that is significantly
more involved.
Fixes [Bug #9573] -
06:18 PM Bug #13675 (Closed): Should Zlib::GzipReader#ungetc accept nil?
- Applied in changeset commit:git|54499d78109037d7c37bc09a8c3ffa0050da5aca.
----------
Remove support for passing nil to IO#ungetc
Fixes [Bug #13675] -
05:13 AM Bug #13675: Should Zlib::GzipReader#ungetc accept nil?
- `IO#ungetc` should be fixed. The patch looks good to me.
Matz.
- 06:18 PM Revision 1ca3a221 (git): * 2020-02-28 [ci skip]
-
06:17 PM Revision 54499d78 (git): Remove support for passing nil to IO#ungetc
- Fixes [Bug #13675]
-
04:31 PM Feature #16644: qualified const init (self::CONST1 = 1) should be allowed in methods
- > I'd rather make all const re-assignment error
I don't disagree, actual const re-assignment, dynamically detected, probably should be an error. But then especially, there is no reason that a qualified const initialization (`mod::CONS... -
07:11 AM Feature #16644 (Rejected): qualified const init (self::CONST1 = 1) should be allowed in methods
-
07:11 AM Feature #16644: qualified const init (self::CONST1 = 1) should be allowed in methods
- Use `const_set`. I'd rather make all const re-assignment error if compatibility does not matter.
Matz.
-
04:16 PM Misc #16659 (Open): Documentation on Regexp missing for absence pattern (?~pat)
- The absence pattern `(?~pat)` available since Ruby 2.4.1 is [not yet documented on `Regexp`](https://git.ruby-lang.org/ruby.git/tree/doc/regexp.rdoc) as of today.
(Found it by coincidence reading [this article by Peter Cooper](https:... -
11:08 AM Feature #16652: Use RubyGems facilities to install Gems during Ruby installation
- Since the first PR was merged, I have updated the second PR [1] to apply cleanly.
[1]: https://github.com/ruby/ruby/pull/2545 -
10:49 AM Feature #15605: json library needs more frequent releases
- What's the status on this ?
I understand that a part of the gem is now edited from ruby/ruby, but that exclude the `pure` and `java` implementations. So this doesn't sounds like a good long term solution, and more like a temporary w... -
10:14 AM Bug #16656: Fix wrong RegExp in rbinstall to install the default gems from expanded sources again
- Also found the same error myself and fixed it at https://github.com/ruby/ruby/pull/2930.
-
06:42 AM Bug #16656 (Closed): Fix wrong RegExp in rbinstall to install the default gems from expanded sources again
- I have submitted [1] to fix the wrong RegExp from [2].
[1]: https://github.com/ruby/ruby/pull/2933
[2]: https://github.com/ruby/ruby/pull/2922 -
09:52 AM Misc #16630: Deprecate pub/ruby/*snapshot* and use pub/ruby/snapshot/* instead
- I created [pull request to change links to snapshot](https://github.com/ruby/www.ruby-lang.org/pull/2379).
-
09:48 AM Bug #16658 (Closed): `method__cache__clear` DTrace hook was dropped without replacement
- The PR #2888 [1] dropped DTrace `method__cache__clear` hook without replacement. Was this intentional? If yes, then the probes.d [3] should be updated appropriately. If this was not intentional, the hook should be reintroduced.
[1... -
08:08 AM Bug #15409: OpenStruct error when attribute is called 'method'
- @marcandre
I talked with matz about this ticket, and he said it would be good to revert 3bf9b2f0473550caa73468908ac3e18e0f431b85 because the change brought a compatibility issue (#12055, #12136, #15409). The final decision is left to y... -
08:00 AM Bug #12251: DelegateClass(OpenStruct) behavior in 2.3.0 different from 2.2
- Hmm, it was caused by OpenStruct performance pull-request. Maybe we should revert the PR?
Matz.
-
07:59 AM Feature #16605 (Rejected): Support argument delegation (...) with blocks/define_method
- You may think it's handy. But it's far more complicated than you think. For example, `define_method` may be called from a method with argument forwarding. At least for the moment, it does not worth the cost of implementation/complexity....
-
07:08 AM Feature #16378: Support leading arguments together with ...
- We have found out that `#method_missing` (and `#send`) needed leading arguments otherwise we cannot use argument forwarding for them. I changed my mind. Accepted.
Matz.
-
06:50 AM Feature #16657 (Assigned): Don't ship bundled gems as .gem files as well as in expanded form
- Working at #16651, I wonder why the release tarball ships with the bundled gem in form of .gem packages as well as the expanded sources. It would be nice, if one option is chosen. Ideally just the .gem packages, because these are vanilla...
-
06:07 AM Feature #16476 (Assigned): Socket.getaddrinfo cannot be interrupted by Timeout.timeout
- We discussed this issue at the dev-meeting, and it requires @Glass_saga's review.
Note:
* It is uninterruptable under a platform that getaddrinfo_a is unavailable, but this problem is not only this proposal but also `timeout:` opti... -
05:54 AM Feature #15722 (Feedback): `Kernel#case?`
- It is not obvious to me that `#case?` is useful. We need a real-world use-case.
* I don't like the name `case?`
* IMO, just use `case` statement
Matz.
-
04:51 AM Feature #15722: `Kernel#case?`
- What about using `#when?` instead of `#case?`?
```ruby
bar # => "bar"
flag1 = case bar; when "foo", "bar", "baz"; true; end # => true
flag2 = case bar; when Symbol, String; true; end # => true
# Proposal by sawa
flag1 = bar.cas... -
05:19 AM Bug #11304: [PATCH] Kernel.global_variables should observe $~.
- The current behavior should be as it is. If there can be a clearer description in the document, PR welcome.
Matz. -
05:16 AM Misc #16483 (Closed): How about stopping new *.tar.bz2 releases?
- From Ruby 2.8, I'll provide only .zip, .gz, and .xz (not provide .bz2).
For 2.7.x or prior we'll still provide also .bz2.
In general we provide
* .zip for Windows
* .gz for general Unix environments
* .xz (or most efficient compre... -
04:33 AM Revision 229ba121 (git): Merge racc from upstream repository.
- * Support Ruby 2.4's frozen string literals.
* Remove VCS revisions headers. -
02:08 AM Revision 9a422fc0 (git): Update docs for Time#at method [ci skip]
- Add docs about all possible options for the `in` argument.
-
01:50 AM Revision 18674aef (git): check imemo_type
- check imemo_type to debug
http://ci.rvm.jp/results/trunk-vm-asserts@silicon-docker/2744755 -
12:49 AM Revision 1d81baf3 (git): st.c: remove variables that are no longer used
- to suppress a warning "variable 'check' set but not used"
02/26/2020
-
11:23 PM Feature #16644: qualified const init (self::CONST1 = 1) should be allowed in methods
- a qualified const init is so similar to meta-programming `const_set` that there's no reason to block it
```ruby
module Mod1
end
def define_consts(mod)
# since this allowed
mod.const_set(:CONST1, :CONST1) unless mod.const... -
07:40 PM Bug #16654: Segfault in rb_str_hash
- The application I'm reproducing it on is here: https://github.com/codetriage/codetriage
I think you should be able to "bundle install" and then use my script above and it would reproduce.
-
07:11 AM Bug #16654: Segfault in rb_str_hash
- Nobu, This looks like Mac to me maybe llvm related?
-
05:29 AM Bug #16654 (Feedback): Segfault in rb_str_hash
- I couldn't reproduce it with a simple file.
Could you try with the master, and could your "config/environment.rb" be shared? -
07:06 PM Revision 6b30638b (git): MiniTest::Unit.options has default :seed
- MiniTest::Unit (superclass of Test::Unit::Runner) does not has
default seed parameter, but assigned after initializing.
However some tests use MiniTest::Unit without setup of seed option
and it cases unexpected test failures. To solve th... -
06:47 PM Revision 14f17908 (git): `srand($seed)` at the beginning of each test
- To avoid `srand(0)` effect in the other tests, call `srand($seed)`
at the beginning of each test (setup).
[Feature #16655] -
05:45 PM Revision f9d31424 (git): Revert "`srand($seed)` at the beginning of each test"
- This reverts commit 7c1553e91db07fed4fed3287b50304f1c69a685d.
It breaks some tests. -
05:33 PM Feature #16655 (Closed): Each test on test-all should run `srand(seed)` at setup
- Applied in changeset commit:git|116c6320956ce80efcb1db849a190ebd7f8c8ad3.
----------
don't ignore `--seed` option
`--seed N` option is just ignored so respect this option.
[Feature #16655]
Also making "Run options" display pretty. -
05:23 PM Feature #16655 (Closed): Each test on test-all should run `srand(seed)` at setup
- # Points
* call `srand($seed)` before each test. `$seed` is given seed number by `--seed N`
# Background
Some tests use `rand()` to produce random number to generate random test examples.
Example:
```
def test_local_va... - 05:32 PM Revision 8296da88 (git): * 2020-02-27 [ci skip]
-
05:29 PM Revision 7c1553e9 (git): `srand($seed)` at the beginning of each test
- To avoid `srand(0)` effect in the other tests, call `srand($seed)`
at the beginning of each test (setup).
[Feature #16655] -
05:26 PM Revision 116c6320 (git): don't ignore `--seed` option
- `--seed N` option is just ignored so respect this option.
[Feature #16655]
Also making "Run options" display pretty. -
02:38 PM Bug #16647: Redefining $/ causes irb to misbehave
- Eregon (Benoit Daloze) wrote in #note-1:
> Out of curiosity, why do you overwrite $/?
> ...
I was following along an example from the book "The Well Grounded Rubyist, 3rd edition", that was illustrating how IO objects iterate. -
08:37 AM Revision 83705c42 (git): Add missing free on cc_entries
- Looks like an oversight in b9007b6c548f91e88fd3f2ffa23de740431fa969 and
7ec23593746c8ccabd6c005cc34dde77d564c6c9. -
08:34 AM Revision 33b78b89 (git): Eliminate unnecessary mjit_iseq_cc_entries calls
- just in case.
-
08:27 AM Revision 69f377a3 (git): Internalize rb_mjit_unit definition again
- Fixed a TODO in b9007b6c548f91e88fd3f2ffa23de740431fa969
-
07:55 AM Revision daf7c48d (git): Explain the situation of inner cc_entries [ci skip]
- Add a little more details in 7ec23593746c8ccabd6c005cc34dde77d564c6c9
-
07:48 AM Revision 55923ba8 (git): Note a situation around xmalloc vs free in MJIT [ci skip]
- shared by ko1
-
07:45 AM Revision 8dab71b9 (git): Simplified single script case
- Simply use `File.basename` to remove the directory name (and
suffix), instead of `gsub` which can replace unintended parts. -
07:24 AM Revision eb75f0d1 (git): Remove an unused declaration
- It was unnecessary in b9007b6c548f91e88fd3f2ffa23de740431fa969
-
07:01 AM Bug #16521 (Closed): ST_DEBUG not working
- Applied in changeset commit:git|fbd7f08e922cdf1a4be7a71aa056659971c81dab.
----------
kill ST_DEBUG [Bug #16521]
This compile-time option has been broken for years (at least since
commit 4663c224fa6c925ce54af32fd1c1cbac9508f5ec, accordi... -
07:00 AM Revision fbd7f08e (git): kill ST_DEBUG [Bug #16521]
- This compile-time option has been broken for years (at least since
commit 4663c224fa6c925ce54af32fd1c1cbac9508f5ec, according to git
bisect). Let's delete codes that no longer work. -
07:00 AM Revision 62c2b8c7 (git): kill USE_RGENGC=0
- This compile-time option has been broken for years (at least since
commit 49369ef17316cd5d5819b038f286e1d951972b52, according to git
bisect). Let's delete codes that no longer works. -
07:00 AM Revision e7bcb416 (git): avoid #if inside of rb_str_new_cstr
- ISO/IEC 9899:1999 section 6.10.3 paragraph 11 explicitly states that
"If there are sequences of preprocessing tokens within the list of
arguments that would otherwise act as preprocessing directives, the
behavior is undefined."
rb_str_n... -
05:48 AM Feature #16652 (Assigned): Use RubyGems facilities to install Gems during Ruby installation
- 02:04 AM Revision 9d6d5315 (git): Cache destination dir.
- It is not necessary to strip the `destdir` prefix every iteration, when
it can be done just once. - 02:04 AM Revision b8a8fdba (git): Properly detect mode for binaries.
- .gemspec files specifies not just `bin`, but also other directories.
- 02:04 AM Revision e087b029 (git): Use class variable `@src_dir` instead of local `path`.
- The local `path` variable does not provide any additional value and was
kept around just for clarity for easier review of the `extrac_files`
method move. - 02:04 AM Revision c9fab1ac (git): Use local `{dir,prog,data}_mode` variables instead of globals.
- This just gets the `RbInstall::DirPackage` closer by functionality to
`Gem::Package`. - 02:04 AM Revision 6609940a (git): Use `$script_mode` instead of `$prog_mode` for gem inistallation.
- rbinstall is using `$script_mode` and `$prog_mode`. However, the
`$script_mode` fallbacks to `$prog_mode` if not provided.
However, RubyGems do not distinguish between `$script_mode` and
`$prog_mode`:
https://github.com/rubygems/rubyge... - 02:04 AM Revision e960ef6f (git): Use `Gem::Package` like object instead of monkey patching.
- 1. This is similar to what RubyGems does and it is less magic [[1]].
2. It avoids deprecated code paths in RubyGems [[2]].
[1]: https://github.com/rubygems/rubygems/blob/92892bbc3adba86a90756c385433835f6761b8da/lib/rubygems/installer.rb... -
01:23 AM Feature #16650: Ruby 2.6.* and 2.7* no longer compile on latest Mingw64
- Mingw has meant "mingw on cygwin", and msys has not been a supported platform.
-
01:16 AM Revision 0686e418 (git): Fixed for older versions
- Fix up 66d1900423e6fb9774c2fe72dba8c2968b54d7ab, `RubyVM::MJIT` is
available since ruby 2.6. -
01:11 AM Bug #16632: Remove verbose warning on treating keyword splat as positional argument in Ruby 2.6
- Looking through the repository history, the patch attached to this issue is mostly implemented by commit:6424d316b993ecceb6f583ae476096274e304788, so that commit could be backported instead, though I'm not sure it applies without conflicts.
02/25/2020
-
08:03 PM Bug #16654: Segfault in rb_str_hash
- Does not reproduce on 2.5.5, and reproduces on 2.6.0
Unfortunately, doesn't reproduce with a simple script, e.g.:
```ruby
require "memory_profiler"
report = MemoryProfiler.report do
1_000_000.times { "allocate a string" }
end
report... -
07:34 PM Bug #16654: Segfault in rb_str_hash
- This reproduces on 2.7.0 as well (though the thing calling `rb_str_hash` was different, this time `objspace_each_objects`)
```
-- C level backtrace information -------------------------------------------
/Users/nateberkopec/.rubies/ruby... -
07:32 PM Bug #16654 (Closed): Segfault in rb_str_hash
- Seen in ruby 2.6.5.
```
-- C level backtrace information -------------------------------------------
/Users/nateberkopec/.rubies/ruby-2.6.5/bin/ruby(rb_vm_bugreport+0x82) [0x10632d9c2]
/Users/nateberkopec/.rubies/ruby-2.6.5/bin/rub... -
06:54 PM Feature #16511: Staged warnings and better compatibility for keyword arguments in 2.7.1
- @Eregon thanks for your reply.
I won't bother making a point-by-point counterargument because it would be redundant and boring at this point. Suffice it to say that I find almost every single line you wrote to be either flawed or factua... - 06:43 PM Revision 672213ef (git): Document that Array#index and find_index are aliases [ci skip]
- 05:27 PM Revision 6c66761c (git): * 2020-02-26 [ci skip]
-
05:27 PM Revision 66d19004 (git): Increase timeout for CSV test with --jit-wait
- To prevent CI failures like
http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2739995 -
04:13 PM Feature #16597: missing poll()
- Attaching test and fix.
This fixes the problem with not raising exception but now my patched interpreter tends to crash. Need to investigate. -
02:58 PM Bug #16653: Weird behaviour of Resolv module
- Looks like the issue is using multiple domain names instead of IP addresses for the :nameserver option. Single domain name works, multiple IP addresses works, IP address and domain name works, multiple domain names does not work:
```... -
09:08 AM Bug #16653 (Rejected): Weird behaviour of Resolv module
- I have to deal with DNS request. Here is some examples.
When I ask A records for example.com at some public DNS servers I get the results:
`> Resolv::DNS.new(nameserver: ['8.8.8.8', '1.1.1.1']).getresources('example.com', Resolv::DNS... -
11:40 AM Revision 55bf0ef1 (git): Share extracted bundled gems with gems for bundler
- Extract bundled gems under ".bundle/gems" and get rid of
duplication which cause constant redefinition warnings at
`test-all` after `extract-gems` and `test-bundler`. -
10:34 AM Feature #15921: R-assign (rightward-assignment) operator
- I think `=>` is okay, but in case we want to use a keyword (ordinary word) for this feature, I think `as` would be good. `as` in SQL is similar to rightward assignment.
```ruby
(1..).lazy.map {|x| x*2} as x
p x.first(10)
``` -
08:47 AM Revision a504535d (git): Prefer dedicated assertion method
-
04:39 AM Revision 0febd07c (git): ext/-test-/cxxanyargs: use try_link instead
- We would like to skip this extension library when libstdc++ is missing.
To avoid such situation let's use try_link instead of try_compile. -
04:37 AM Revision 84d1a99a (git): should be initialize jit_unit->cc_entries.
- GC can invoke just after allocation of jit_unit->cc_entries so
it should be zero-cleared. -
04:30 AM Bug #12159 (Closed): Thread::Backtrace::Location#path returns absolute path for files loaded by require_relative
- I talked about this issue with nobu and ko1.
> Is it intentional? or a bug?
As @usa said, it is intentional according to nobu and ko1. Please use `#absolute_path`.
> ...
It may return relative path, too. IMO, "file name" inclu... -
04:12 AM Revision 670b7be6 (git): should count only string.
- This code can generate CC objects so we only need to count
existing String objects. -
03:57 AM Revision 7ec23593 (git): prevent GC from mjit worker.
- ALLOC_N() can causes GC. Sometimes `mjit_copy_job_handler()`
can be called by mjit_worker thread which is not a Ruby thread,
so we need to prevent GC in this function. This patch has some
issues, but I introduce it to pass the tests. - 03:53 AM Revision 82d27604 (git): * 2020-02-25 [ci skip]
-
03:53 AM Revision fa1ec604 (git): Fix wrong documentation for return value of Pathname#fnmatch
-
03:41 AM Misc #16630 (Assigned): Deprecate pub/ruby/*snapshot* and use pub/ruby/snapshot/* instead
- I agree with your proposal. It's difficult to handle for us continuously.
@matz
Can we remove it? -
02:24 AM Feature #16652: Use RubyGems facilities to install Gems during Ruby installation
- I glanced at rbinstall.rb briefly; for those interested, the link should be here:
https://github.com/ruby/ruby/blob/master/tool/rbinstall.rb
That seems quite old code, lots of global variables in it as well. Props to
everyone able...
02/24/2020
-
11:38 PM Feature #16648: improve GC performance by 5% with builtin_prefetch
- I ran the patch on some included GC benchmarks in the repo and it doesn't seem to be a pure win (built-ruby is the patched version):
```
$ make benchmark ITEM=gc_ COMPARE_RUBY=/opt/rubies/2.8.0-clean/bin/ruby OPTS=-v
/opt/rubies/2.6.... -
09:41 PM Feature #16597: missing poll()
- There is a bug with handling POLLNVAL in the new code.
-
09:26 PM Bug #16642 (Closed): Splatted empty hash literal produces frozen hash object
- This was already fixed in master at commit:f8a8f055123bc81fc13fa295b936504196df0da4, which changed it so ruby2_keywords does not pass empty keyword splats as hashes. Passing empty keyword splats as hashes is not needed in Ruby 3, it is ...
-
05:10 PM Feature #16652 (Closed): Use RubyGems facilities to install Gems during Ruby installation
- Currently, `tools/rbinstall` uses quite some custom code to install gems instead of using functionality available in RubyGems. I don't think this is good, because the code is non transparent ATM and it is duplicating functionality, which...
-
02:58 PM Bug #16647 (Closed): Redefining $/ causes irb to misbehave
- It was a problem with Reline. I fixed it by https://github.com/ruby/reline/pull/129.
> My personal opinion is we should deprecate all these variables affecting default separators,
> ...
I think so, but...maybe, so many beginners use ... -
09:03 AM Bug #16647: Redefining $/ causes irb to misbehave
- Related to https://bugs.ruby-lang.org/issues/14240
changing these variables is deprecated now, and it shows a warning -
06:55 AM Bug #16651 (Closed): Extensions Do Not Compile on Mingw64 with mingw32-make
- When mkmf.rb creates a Makefile for an extension, it will generate something that looks like this:
```makefile
srcdir = .
topdir = C/MSYS64/USR/LOCAL/ruby-2.7.0/include/ruby-2.7.0
hdrdir = $(topdir)
arch_hdrdir = C:/MSYS64/USR/LOC... -
06:44 AM Feature #16650 (Closed): Ruby 2.6.* and 2.7* no longer compile on latest Mingw64
- Using the latest version of mingw64 and msys2, neither ruby 2.6.5 nor 2.7.0 compile.
The issue is with miniruby.exe - it gets built but does not work. For example:
$ ./miniruby.exe -v
Returns nothing (I assume it is crashing but... -
06:41 AM Bug #16649 (Closed): Object with [] method doesn't work as String#encode's fallback
- Applied in changeset commit:git|8b6e2685a4b7c7de905f7ed60c02ef85e0724754.
----------
Fixed symbol misused as ID
`rb_funcallv_public` and `rb_respond_to` require an `ID`, not a
`Symbol`. [Bug #16649] -
06:24 AM Bug #16649 (Closed): Object with [] method doesn't work as String#encode's fallback
- `String#encode` document says fallback can be a Hash, a Proc, a Method or an object which has `[]` method.
> Sets the replacement string by the given object for undefined character. The object should be a Hash, a Proc, a Method, or a... -
06:37 AM Revision 8b6e2685 (git): Fixed symbol misused as ID
- `rb_funcallv_public` and `rb_respond_to` require an `ID`, not a
`Symbol`. [Bug #16649] -
03:40 AM Revision f8401732 (git): Try with and without "v" prefix for numeric tag
-
03:33 AM Revision 116b9e6a (git): Retry checking out the version
- rss 0.2.9 is tagged without the "v" prefix.
-
03:27 AM Revision 6f92c620 (git): Update bundled gems
02/23/2020
-
11:53 PM Feature #16456: Ruby 2.7 argument delegation (...) should be its own kind of parameter in Method#parameters
- I'd definitely like to see this as well. It'd be useful for Sorbet since it uses the parameters method to reconstruct methods when generating scaffolds for gem methods and other Ruby code.
https://github.com/sorbet/sorbet/blob/29a967a... - 03:28 PM Revision f88d209b (git): * 2020-02-24 [ci skip]
-
03:28 PM Revision 281b3500 (git): Add pattern matching documentation
- Add separate doc/syntax/pattern_matching.rdoc, add
link to control_expressions.rdoc.
The documentation is "reverse-engineered" from Ruby 2.7
behavior and early preview presentations, and corrected
by pattern-matching feature author @k-tsj. -
02:24 PM Feature #16511: Staged warnings and better compatibility for keyword arguments in 2.7.1
- Thanks for writing that out.
I think in general tracking whether a Hash is keywords or positional dynamically makes everything complicated.
Long-term, I think it's clear we want to know syntactically whether a Hash is keyword argumen... -
11:33 AM Bug #16647: Redefining $/ causes irb to misbehave
- Out of curiosity, why do you overwrite $/?
My personal opinion is we should deprecate all these variables affecting default separators,
they tend to break any non-trivial program, not just IRB, and explicit seems always clearer. -
07:49 AM Feature #14240 (Closed): warn four special variables: $; $, $/ $\
- Applied in changeset commit:git|6298ec2875a6f1a1e75698c96ceac94362f20bcf.
----------
Warn non-nil `$\` [Feature #14240] -
04:37 AM Revision 8a7e0aaa (git): Warn non-nil `$/` [Feature #14240]
-
04:37 AM Revision 6298ec28 (git): Warn non-nil `$\` [Feature #14240]
-
04:37 AM Revision 588a86e3 (git): Warn non-nil `$,` in `IO#print` too
-
04:31 AM Revision 0ed3384f (git): Revert "Prefer `exe/ruby` to execute from it"
- This reverts commit c7b71af9e21b3f0b8fe413a3c20cf4bd633c40d0, as
an example in bundler expects untouch PATH.
02/22/2020
-
07:07 PM Feature #16644: qualified const init (self::CONST1 = 1) should be allowed in methods
- These are two different things. Ruby always warns for assigning to an existing constant, regardless of using `const_set` or `CONST = ...`. It does not support using `CONST = ...` inside a method, though `const_set` is allowed. Similar...
-
06:55 PM Bug #16620 (Feedback): [BUG] Segmentation fault at 0x0000000103bae000
- Can you please run the failing code from the command line and include the output? The awd files provided are binary files and I have no idea how to read them, and the diag file doesn't include the necessary information.
It appears th... -
06:03 PM Feature #16648 (Open): improve GC performance by 5% with builtin_prefetch
- The mark phase of non-incremental major GC is (I believe) dominated by pointer chasing. One way we can improve that is by prefetching cachelines from memory before they are accessed, to reduce stalls. I did some experimenting, and the ...
- 03:38 PM Revision f85ca4c8 (git): * 2020-02-23 [ci skip]
-
03:32 PM Revision 77dcc2c8 (git): hash.c: [DOC] fix examples for ENV.merge!
-
02:47 PM Bug #16646 (Closed): OpenSSL::VERSION is not defined (moved to ruby/openssl)
-
02:05 AM Bug #16646: OpenSSL::VERSION is not defined (moved to ruby/openssl)
- See https://github.com/ruby/openssl/issues/347
Please close. OpenSSL should have a new release soon... -
01:43 PM Revision 4aebb491 (git): Expand Symbol#to_proc specs to be clearer
-
01:37 PM Bug #16640: Symbol#to_proc reports -1 for arity
- Thanks for the fix nobu! (https://github.com/ruby/ruby/commit/5b29ea0845c14092abd866ce0183c52635bade4c)
-
01:53 AM Bug #16640 (Closed): Symbol#to_proc reports -1 for arity
- Applied in changeset commit:git|5b29ea0845c14092abd866ce0183c52635bade4c.
----------
Proc from Symbol needs a receiver
So its arity should be -2 instead of -1.
[Bug #16640]
https://bugs.ruby-lang.org/issues/16640#change-84337 -
01:43 AM Bug #16640 (Open): Symbol#to_proc reports -1 for arity
-
07:01 AM Revision c7b71af9 (git): Prefer `exe/ruby` to execute from it
-
02:54 AM Revision f744d801 (git): check USE_MJIT
- iseq->body->jit_unit is not available if USE_MJIT==0 .
-
02:26 AM Misc #16645: Non-warned change of behavior in 2.7 for non-symbol keys
- > treating non-Symbol keys as keywords if the method accepts arbitrary keywords is expected behavior
Yes, I was aware of that, it's just that I always thought of this as simply an _additional_ behavior; previously `**hash` would raise a... -
12:06 AM Misc #16645 (Rejected): Non-warned change of behavior in 2.7 for non-symbol keys
- Yes, treating non-Symbol keys as keywords if the method accepts arbitrary keywords is expected behavior, as mentioned in the Ruby 2.7.0 release notes (https://www.ruby-lang.org/en/news/2019/12/25/ruby-2-7-0-released/). This is a deliber...
-
01:49 AM Revision 5b29ea08 (git): Proc from Symbol needs a receiver
- So its arity should be -2 instead of -1.
[Bug #16640]
https://bugs.ruby-lang.org/issues/16640#change-84337 -
01:27 AM Revision 31748e69 (git): CI can be NULL.
- Unused CI (introduced from peephole optimization, etc) can be NULL
so introduce NULL check. -
01:25 AM Revision af12e386 (git): More ENV rdoc [ci skip]
-
01:01 AM Revision da310356 (git): test/readline - allow ENV control of test class creation
- In ruby/ruby, the tests run on both readline & reline by creating four test classes:
```
TestReadline
TestReadlineHistory
TestRelineAsReadline
TestRelineAsReadlineHistory
```
Reline inports the test files and uses them in its CI. Addi... -
12:59 AM Feature #16614 (Closed): New method cache mechanism for Guild
- Applied in changeset commit:git|b9007b6c548f91e88fd3f2ffa23de740431fa969.
----------
Introduce disposable call-cache.
This patch contains several ideas:
(1) Disposable inline method cache (IMC) for race-free inline method cache
* ... - 12:59 AM Revision d7984d0f (git): * remove trailing spaces. [ci skip]
-
12:58 AM Revision b9007b6c (git): Introduce disposable call-cache.
- This patch contains several ideas:
(1) Disposable inline method cache (IMC) for race-free inline method cache
* Making call-cache (CC) as a RVALUE (GC target object) and allocate new
CC on cache miss.
* This technique allo... -
12:58 AM Revision f2286925 (git): VALUE size packed callinfo (ci).
- Now, rb_call_info contains how to call the method with tuple of
(mid, orig_argc, flags, kwarg). Most of cases, kwarg == NULL and
mid+argc+flags only requires 64bits. So this patch packed
rb_call_info to VALUE (1 word) on such cases. If w...
02/21/2020
-
05:59 PM Revision a1eb1fab (git): use RUBY_FUNCTION_NAME_STRING instead of __func__ for rp()
-
04:54 PM Misc #16645: Non-warned change of behavior in 2.7 for non-symbol keys
- I can not answer your question but I believe matz mentioned the change several times in different
talks before. So a deprecation phase makes no real sense, unless matz and the core team wants
to postpone the change past ruby 3.0 - but ... -
03:29 PM Misc #16645 (Rejected): Non-warned change of behavior in 2.7 for non-symbol keys
- In ruby 2.7 non-symbol keys are now accepted as keywords, resulting in the following change in behavior:
```ruby
def foo(*a,**h) p [a,h] end
foo("a"=>42)
# [[{"a"=>42}], {}] in 2.6
# [[], {"a"=>42}] in 2.7
```
Given that the... -
04:51 PM Bug #16647 (Closed): Redefining $/ causes irb to misbehave
- If I start irb and then do:
``` ruby
$/ = "asdf"
```
then every character I type shows a newline on the irb console. Previous versions of ruby do not have this behavior, and it is annoying. -
04:30 PM Bug #16646 (Closed): OpenSSL::VERSION is not defined (moved to ruby/openssl)
- There are several ways to fix this, maybe add to openssl.rb?
Noticed in several platforms... - 03:45 PM Revision 5a89c057 (git): * 2020-02-22 [ci skip]
-
03:45 PM Revision 8c5ca318 (git): `Proc` made by `Symbol#to_proc` should be a lambda [Bug #16260]
- With refinements, too.
-
03:30 PM Revision 5cab86f3 (git): `Proc` made by `Symbol#to_proc` should be a lambda [Bug #16260]
-
03:17 PM Revision 0b4500d9 (git): Adjusted indent [ci skip]
-
02:16 PM Revision 5e7322b8 (git): [ruby/irb] `yield` outside method definition is a syntax error
- https://github.com/ruby/irb/commit/dbc7b059c7
-
12:30 PM Revision 8d3b7f0f (git): Fixed net-pop, smtp, protocol and imap task for sync tool
-
12:25 PM Revision e7f8724f (git): Fixed net-ftp sync task and resync from standalone repo
-
12:23 PM Revision fa1cf777 (git): Move an entry of net-ftp to the default gems section
-
12:21 PM Revision 9cb1ffaa (git): Promote net-http to the default gems.
- test/net/http/test_https.rb: rename fixture methods to read_fixture
because it conflicts with test-unit gem. -
11:41 AM Bug #16337: kernel_gem.rb:68 - ThreadError
- I guess this is because you're not using the latest rubygems. Could you run `gem env version` and check that you have a rubygems version older than 3.1?
You need to request upgrading rubygems to google-fluentd, maybe here: https://git... -
10:57 AM Bug #16643: Array#dig converts keywords to positional hash
- jeremyevans0 (Jeremy Evans) wrote in #note-3:
> Dan0042 (Daniel DeLorme) wrote in #note-2:
> ...
I personally think that it should not be equivalent. `obj.dig(a, b, c)` was introduced as a safe-navigation like `obj[a][b][c]`, so I thi... -
07:06 AM Bug #16643: Array#dig converts keywords to positional hash
- Dan0042 (Daniel DeLorme) wrote in #note-2:
> Are you seriously telling me that you consider it normal and correct that `obj.dig(**kw)` is _not_ equivalent to `[obj].dig(0, **kw)` ???
It should be equivalent, if `dig` is defined corre... -
02:59 AM Bug #16643: Array#dig converts keywords to positional hash
- Are you seriously telling me that you consider it normal and correct that `obj.dig(**kw)` is _not_ equivalent to `[obj].dig(0, **kw)` ???
I will note that your first example produces `2` whether keywords are passed with RB_PASS_CALLED... -
10:56 AM Revision a294ec16 (git): Move an entry of net-ftp to the default gems section
-
10:09 AM Revision f08d8e5e (git): Promote net-ftp to default gems
-
09:39 AM Bug #16632: Remove verbose warning on treating keyword splat as positional argument in Ruby 2.6
- As mentioned in https://bugs.ruby-lang.org/issues/16511#note-17
it seems very unlikely this triggers in practice, because indeed who would bother with an extra `**` when the method doesn't take keyword arguments?
Maybe for the case the... -
09:34 AM Bug #16640: Symbol#to_proc reports -1 for arity
- The arity should actually be `-2` which means 1 required arguments + any number of optional arguments.
- 04:31 AM Revision 4643bf5d (git): * 2020-02-21 [ci skip]
-
04:31 AM Revision 59c2a115 (git): Fix typo in NEWS-2.7.0