Activity
From 09/09/2019 to 09/15/2019
09/15/2019
-
09:02 PM Misc #16152: DevelopersMeeting20190919Japan
- * [Feature #16168] Add keyword argument separation to C functions using rb_scan_args
* I would like to commit the patch so that methods implemented in C handle keyword argument separation similar to methods implemented in Ruby. -
05:58 PM Misc #16152: DevelopersMeeting20190919Japan
- * [Feature #16155] Add an `Array#intersection` method
* Is this an acceptable method name?
* Should this be a simple alias for `Array#&`, or should it accept multiple arrays as arguments, like `difference` and `union` do? -
08:59 PM Feature #16168 (Closed): Add keyword argument separation to C functions using rb_scan_args
- Most Ruby methods implemented as C functions that accept a variable number of arguments use rb_scan_args for argument handling. rb_scan_args supports a `:` character for option hash/keyword arguments, which operates similarly to how key...
-
02:22 PM Revision 4a403e3f (git): oops [ci skip]
- Fixing typo. It seems I failed to press the shift key.
-
02:12 PM Revision 3a3f48fb (git): Comment lines can be placed between fluent dot now
-
12:55 PM Revision 751d4ab9 (git): Refine Timezone fixture
-
07:24 AM Bug #16167 (Closed): make-snapshot does not work from fresh checkout
- Applied in changeset commit:git|6cad0644248d5acbaf3a2e8de4ff6d88b3dd2cb4.
----------
Try to fetch commits notes to the source tree automatically
[Bug #16167] -
07:23 AM Bug #16167: make-snapshot does not work from fresh checkout
- vo.x (Vit Ondruch) wrote:
> So this is in line with the changes referred here, but I somehow fail to see why the refs/notes/commits are not fetched automatically? Why should I do this myself? Previously, the make-snapshot did not need a... -
07:23 AM Revision 6cad0644 (git): Try to fetch commits notes to the source tree automatically
- [Bug #16167]
-
04:29 AM Revision 44d59418 (git): rb_scan_args_count_lead: use arguments instead of magic numbers
-
02:22 AM Revision 585b15d7 (git): make-snapshot: no merge commits in ChangeLog
- Parents commit hashs in logs of merge commits are abbreviated to
necessary length depending on the repositories. Exclude merge
commits from ChangeLog to make it stable. -
02:22 AM Revision df4a4bd8 (git): make-snapshot: export ChangeLog from srcdir
09/14/2019
-
09:49 PM Feature #10344: [PATCH] Implement Fiber#raise
- NEWS is updated.
-
08:57 PM Revision 1edcfd61 (git): Issue a warning if invalid kw_splat is passed to *_kw function
- This should only happen if the API is misused. It's much better
to warn here and fix the problem, versus to try to debug TypeErrors
or segfaults later. -
07:46 PM Bug #16167 (Assigned): make-snapshot does not work from fresh checkout
- nobu (Nobuyoshi Nakada) wrote:
> I'm going to deprecate `-exported` option because it can't make stable-checksum tarballs.
I used `-exported` just because I was struggling to get the make-snapshot work, so deprecating the option is f... -
02:53 PM Bug #16167: make-snapshot does not work from fresh checkout
- I'm going to deprecate `-exported` option because it can't make stable-checksum tarballs.
-
02:51 PM Bug #16167 (Closed): make-snapshot does not work from fresh checkout
- Applied in changeset commit:git|e9c7fc7ca9bc15a9f84bdc356f7b6fac12988ccb.
----------
Continue to export even if no notes/commits
Just exporting may not imply exporting ChangeLog which needs
notes/commits. [Bug #16167] - 05:15 PM Revision 395e5f51 (git): * 2019-09-15 [ci skip]
-
05:07 PM Revision 1ad4be13 (git): make-snapshot: deprecated -exported option [Bug #16167]
-
02:50 PM Revision e9c7fc7c (git): Continue to export even if no notes/commits
- Just exporting may not imply exporting ChangeLog which needs
notes/commits. [Bug #16167] -
02:27 PM Revision 6d2dcf96 (git): [ruby/io-console] Added `intr:` option to IO#raw
- Enters raw-mode but enable interrupts.
https://github.com/ruby/io-console/commit/7cba76561a -
12:38 PM Revision 82634596 (git): Keep the reference of imemo while argv may be used
- To prevent the `v` reference from being eliminated before argv is used,
calling `rb_free_tmp_buffer` against `v` explicitly. -
12:09 PM Revision f41cd4ba (git): Fixed one-off error
- Needs another room to append an empty hash.
- 10:43 AM Revision 9699a5c5 (git): Update news regarding `Fiber#raise`.
-
09:21 AM Revision 39c37acf (git): Fix memory leak when adding empty keyword hashes
- nagachika pointed out that ALLOC_N is actually just malloc, so
this memory wasn't being freed. This shouldn't be a performance
sensitive code path, and will be going away after 2.7, so just
allocate a temp buffer that will be freed late... -
08:49 AM Revision b78a345b (git): Only set RB_PASS_CALLED_KEYWORDS in C functions called directly from Ruby
- It is not safe to set this in C functions that can be called from
other C functions, as in the non argument-delegation case, you
can end up calling a Ruby method with a flag indicating keywords
are set without passing keywords.
Introduc... -
07:23 AM Bug #16162: Resque::DirtyExit - Child process received unhandled signal (You may have encountered a bug in the Ruby interpreter or extension libraries)
- It happens inside “grpc” extension library.
Have you asked them? -
02:25 AM Bug #16136: String corruption in 2.6.4
- ruby_2_6 r67803 merged revision(s) ade1283ca276f7d589ffd3539fbc7b9817f682d5.
-
02:24 AM Revision a165a066 (git): merge revision(s) ade1283ca276f7d589ffd3539fbc7b9817f682d5: [Backport #16136]
- Fix a use-after-free bug by avoiding rb_str_new_frozen
`str2 = rb_str_new_frozen(str1)` seems to make str1 a shared string that
refers to str2, but str2 is not marked as STR_IS_SHARED_M nor
STR_NOFREE.
`r...
09/13/2019
- 11:54 PM Revision b2c29bba (git): * remove trailing spaces. [ci skip]
-
11:42 PM Revision 3cfbfa96 (git): Consolidate empty keyword handling
- Remove rb_add_empty_keyword, and instead of calling that every
place you need to add empty keyword hashes, run that code in
a single static function in vm_eval.c.
Add 4 defines to include/ruby/ruby.h, these are to be used as
int kw_spla... -
05:54 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- Dan0042 (Daniel DeLorme) wrote:
> In that case I'd like to make one last suggestion.
> ...
You can't make this an instance-specific flag and easily contain the scope to that method only. The user could pass `args` (not `*args`) as a a... -
05:00 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- In that case I'd like to make one last suggestion.
For a method with `*args`, if the method is called with keyword arguments, flag `args` in some way (instance variable?) so that, in that method only, a call with `*args` would result ... -
03:15 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- Dan0042 (Daniel DeLorme) wrote:
> With 2.7, people will be asked to migrate their generic delegations to use `pass_keywords`. Then at some point in the future when 2.6 is no longer supported, `pass_keywords` will be deprecated and they'... -
02:55 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- There's something I'd like to clarify.
With 2.7, people will be asked to migrate their generic delegations to use `pass_keywords`. Then at some point in the future when 2.6 is no longer supported, `pass_keywords` will be deprecated an... -
05:25 PM Bug #16167 (Closed): make-snapshot does not work from fresh checkout
- So far, I was using this sequence to get Ruby snapshot:
~~~
git clone https://github.com/ruby/ruby ~/ruby
cd ~/ruby && tool/make-snapshot -packages=xz -git=https://github.com/ruby/ruby tmp
~~~
But that does not work anymore. It ... -
04:53 PM Revision 24b1b339 (git): Correctly handle keywords for Method#call for cfuncs, send, and attr_*
- This sets the correct VM frame flags when using Method#call to
call funcs, and handles empty keyword hashes for cfuncs,
attr_reader, and attr_writer. It also fixes calls to send through
Method#call. It adds tests for all of those, as we... -
03:45 PM Feature #16166: Remove exceptional treatment of *foo when it is the sole block parameter
- Actually that reminds me - mame mentioned that the ruby core team needs a
motivation/impetus if a change is necessary based on real usage. So I think
this may be a good call for ruby users to comment in particular when it
may affect t... -
03:44 PM Feature #16166: Remove exceptional treatment of *foo when it is the sole block parameter
- > We need an evidence that the behavior actually confuses
> ...
It does not confuse me because ... I try to avoid it altogether. :D
I think sawa's issue can be a bit shortened (sorry!) to the last
comparison:
instance_exec(["... -
10:16 AM Feature #16166: Remove exceptional treatment of *foo when it is the sole block parameter
- I agree that Ruby's arguments are insanely complex. In the basic case, `"a"` and `["a"]` are distinguished.
```
p instance_exec("a") {|foo| foo } #=> "a"
p instance_exec(["a"]){|foo| foo } #=> ["a"]
p instance_exec("a") {|*foo... -
08:17 AM Feature #16166 (Closed): Remove exceptional treatment of *foo when it is the sole block parameter
- In the parameter signature of a code block for a method that is not involved in method definition or creation of lambda objects, two types of arguments `["a"]` and `"a"` are neutralized:
```ruby
instance_exec(["a"]){|foo, bar| foo} #... -
03:16 PM Revision 98f919ed (git): The stdlib readline should raise Interrupt when pressing C-c
- 03:12 PM Revision 70fe473c (git): * 2019-09-14 [ci skip]
-
03:11 PM Revision 83ef23bd (git): Revert "Use IO#getch to read one char in raw mode"
- This reverts commit 805b0a481132938638dbd32830cf5dca3910efb1.
-
03:10 PM Revision e8fff0ec (git): Revert "Use IO#getbyte"
- This reverts commit 685f12bbca50ff9b7a16b3016b3b8b3f2ac8b796.
-
03:10 PM Revision 06bbacc0 (git): Revert "Support multibyte input"
- This reverts commit 6d9e54816f828983bcf383ce6fce287bd3ca05b9.
-
11:21 AM Revision 55650f71 (git): merge revision(s) 547887138f19959f649b1c0dbcde5659ae3878ed:
- test/ruby/test_fiber.rb: reduce the count of object creation to cause
GC
The test consistently fails on OpenBSD.
https://rubyci.org/logs/rubyci.s3.amazonaws.com/openbsd-current/ruby-master/log/20190903T010009Z.... -
11:17 AM Revision 9899e669 (git): merge revision(s) b0b0ded5aa2cf7c4574b057d8326ed4e1c172c12:
- webrick/test_utils.rb: loosen timeout severity
to stabilize CI failure like:
https://rubyci.org/logs/rubyci.s3.amazonaws.com/osx1013/ruby-trunk/log/20181228T114501Z.fail.html.gz
git-svn-id: svn+ssh://ci.ruby-lan... -
10:48 AM Revision 7e0f56fb (git): Name dynamically defined methods with line numbers
-
08:20 AM Revision 5f5aca1b (git): Moved ruby_node_name declaration to node.h
-
07:24 AM Revision 2da6b328 (git): introduce IBF_(MAJOR|MINOR)_VERSION.
- RubyVM::InstructionSequence.to_binary generates a bytecode binary
representation. To check compatibility with binary and loading
MRI we prepared major/minor version and compare them at loading
time. However, development version of MRI ca... -
04:44 AM Revision 3c162df9 (git): Dump some information
09/12/2019
-
07:57 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- Ok, I misunderstood what `pass_keywords` was doing; I thought it would only apply to `baz(*args)` in this case.
-
03:40 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- Dan0042 (Daniel DeLorme) wrote:
> After some more thinking I believe the `pass_keywords` behavior would be appropriate for 100% of methods with an argument splat but no keywords.
We do not want this as the default behavior. Consider... -
12:53 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- After some more thinking I believe the `pass_keywords` behavior would be appropriate for 100% of methods with an argument splat but no keywords.
* If forwarding to a method with no keyword arguments
* The kwarg will be converted t... -
02:05 AM Misc #16157: What is the correct and *portable* way to do generic delegation?
- > Then if you call `foo` with keywords, keywords will be passed to `bar`. This should allow for more backwards compatible behavior with older versions of Ruby.
Ah, great! So we no longer need the RUBY_VERSION check!
I have a feeli... - 03:35 PM Revision 69acf40b (git): * 2019-09-13 [ci skip]
-
03:34 PM Revision bcd49a46 (git): Upgrade benchmark_driver to v0.15.5
- Fixed new Struct-related keyword argument warnings
-
11:19 AM Feature #14781 (Closed): Enumerator.generate - Applied in changeset commit:git|775037613bffe6f90e7af510b7f46a2ac10610be.
----------
Implement Enumerator.produce [Feature #14781] - 11:18 AM Revision ac3e8834 (git): Document and test Enumerator.produce
- Co-authored-by: Victor Shepelev <zverok.offline@gmail.com>
- 11:18 AM Revision 77503761 (git): Implement Enumerator.produce [Feature #14781]
-
09:43 AM Bug #16161: tailcall_optimization may be disabled after r67315
- How about adding `vm_call_iseq_setup_tailcall_opt_start` as same as `vm_call_iseq_setup_normal_opt_start`?
(Copy-and-paste code, sorry!)
```patch
diff --git a/vm_insnhelper.c b/vm_insnhelper.c
index a83e3a952a..4abee2fadd 100644
-... -
09:28 AM Revision 9f86e5ec (git): Moved coverage.yml to https://github.com/ruby/actions [ci skip]
-
09:25 AM Feature #16102: `Symbol#call`
- I propose this general solution.
diff --git a/array.c b/array.c
index 3717c3ff34..3809af01cf 100644
--- a/array.c
+++ b/array.c
@@ -6988,6 +6988,7 @@ Init_Array(void)
rb_define_method(rb_cArray, "dig"... -
06:47 AM Bug #16164: ENV.each with block returns ENV object itself, not Hash
- I remember the old pickaxe having mentioned ENV as a hash-like
object. I guess the documentation could be updated to include
e. g. specifically a .is_a? Hash check too, and explain that
ENV is not completely a "full" Hash. -
03:26 AM Bug #16164: ENV.each with block returns ENV object itself, not Hash
- That is a documentation bug.
-
01:04 AM Bug #16165: Endless ranges have inconsistency between #cover? and #include?
- For the sake of archives & potential future search engine hits - this got fixed a few days ago and will be in whatever public release of Rails comes after 6.0.0.
https://github.com/rails/rails/pull/36460
09/11/2019
-
11:41 PM Bug #16165 (Closed): Endless ranges have inconsistency between #cover? and #include?
- Closing as per your request. Thank you for your investigation anyway.
-
11:31 PM Bug #16165: Endless ranges have inconsistency between #cover? and #include?
- Doh, this needs closing; my apologies. I had not realised that I was testing in an execution environment that had pulled in ActiveSupport from Rails 6. This seems to break `#include?` in an endless Range. When I'm careful to use "vanilla...
-
09:59 PM Bug #16165 (Closed): Endless ranges have inconsistency between #cover? and #include?
- In an endless Range, I'd expect to be able to use `#include?` just as I do with a Range that has an end value. It would amount to just a check on whether the argument was greater than or equal to the start value of that Range (and likewi...
-
11:20 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- Dan0042 (Daniel DeLorme) wrote:
> Of course this is all *extremely* unconventional usage and doesn't really deserve a fix. But I thought it was weird/interesting.
Very interesting actually. However, while you think this method is wr... -
09:25 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- After discussion with some other committers, I have an alternative approach in https://github.com/ruby/ruby/pull/2449. This allows you to do the following:
```ruby
class Foo
def foo(*args, &block)
bar(*args, &block)
end
... -
03:36 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- > Prior to the keyword argument separation branch merge, it was not even possible for a C method to tell if it was called with keywords or called with a positional hash.
That's the same situation as ruby methods used to be in. So *th... -
09:58 PM Revision 515b1989 (git): Make NODE_ARYPTN layout consistent between Ripper and AST
- We are seeing SEGVs in CI:
http://ci.rvm.jp/results/trunk-gc-asserts@ruby-sky1/2253563
This is happening because Ripper constructs AST nodes differently than
parse.y normally does. Specifically in this case Ripper is assigning 3
`VA... -
09:30 PM Bug #16154: lib/delegate.rb issues keyword argument warnings
- I added an alternative approach for handling delegate keyword warnings in https://github.com/ruby/ruby/pull/2449. This approach also uses a VM frame flag and a Module method (`Module#pass_keywords`), and allows for passing keywords thro...
-
09:24 PM Bug #16164 (Closed): ENV.each with block returns ENV object itself, not Hash
- My code:
x = ENV.each { |name, value| }
puts "Return value class: #{x.class}"
puts "Return value is a Hash? #{x.kind_of?(Hash)}"
puts "Return value is actually ENV itself? #{x.object_id == ENV.object_id}"
Its output:
Return ... -
09:23 PM Revision 21994b7f (git): Avoid rehashing keys in transform_values
- Previously, calling transform_values would call rb_hash_aset for each
key, needing to rehash it and look up its location.
Instead, we can use rb_hash_stlike_foreach_with_replace to replace the
values as we iterate without rehashing the ... -
06:57 PM Revision 14e37310 (git): Make sure WB executes after object is reachable
- 06:21 PM Revision 1febb6f4 (git): * 2019-09-12 [ci skip]
-
06:20 PM Revision ed96c9f2 (git): Emit missing keyword argument separation warnings for define_method
- Previously, the warning functions skipped warning in these cases.
This removes the skipping, and uses a less descriptive warning
instead.
This affected both last argument to keyword warnings and keyword
split warnings. -
05:35 PM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
- Also, I ran it multiple times between 11pm - 1.30am
-
05:07 PM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
- GMT+8
```
$ date +%z
+0800
``` -
03:59 PM Bug #16158: "st" Character Sequence In Regex Look-Behind Causes Illegal Pattern Error When Combined With POSIX Bracket Expressions And Case Insensitivity Flag
- Thank you both.
I can confirm the encoding being a factor. It's an issue even if it is not the default.
```
2.5.6 :013 > str = "(?<!a st)\\p{Space}".force_encoding("ISO-8859-5")
=> "(?<!a st)\\p{Space}"
2.5.6 :014 > Regexp.ne... -
01:28 PM Bug #16158 (Open): "st" Character Sequence In Regex Look-Behind Causes Illegal Pattern Error When Combined With POSIX Bracket Expressions And Case Insensitivity Flag
- This appears to be an issue if the default encoding is UTF-8:
```
$ ruby -ve 'pat = /(?<!a st)\p{Space}/i'
ruby 2.6.4p104 (2019-08-28 revision 67798) [x86_64-openbsd]
$ LC_CTYPE=en_US.UTF-8 ruby -ve 'pat = /(?<!a st)\p{Space}/i' ... -
01:09 PM Bug #16158: "st" Character Sequence In Regex Look-Behind Causes Illegal Pattern Error When Combined With POSIX Bracket Expressions And Case Insensitivity Flag
- I can reproduce the bug in all versions of ruby.
```
$ 2.5 ruby -ve 'pat = /(?<!a st)\p{Space}/i'
ruby 2.5.6p167 (2019-05-30 revision 67709) [x86_64-linux]
-e:1: invalid pattern in look-behind: /(?<!a st)\p{Space}/i
$ 2.6 ruby -... -
03:03 PM Misc #16152: DevelopersMeeting20190919Japan
- - [Feature #16131] Remove $SAFE, taint and trust
- What do you think about the proposed schedule?
- I am asking because this might inform the fix for [Bug #16151]
- [Feature #16123] Allow calling a private method with `self.`
... -
02:48 PM Feature #14737: Split default gems into separate directory structure
- I opened PR [1] implementing this.
[1]: https://github.com/rubygems/rubygems/pull/2909 -
02:39 PM Revision fba5bbc6 (git): Moved doxygen.yml to https://github.com/ruby/actions [ci skip]
-
02:10 PM Feature #16146: Array .difference allow custom comparison
- What you're asking for is a O(n²) operation. I'm not sure it's a good idea to make that so easy and transparent as a core method.
This is quite easy to code and makes the (inefficiency of) two loops more apparent:
```ruby
all.reject... -
12:36 PM Revision fc3bfd52 (git): Fixed the function signature to rb_rescue2
-
09:03 AM Feature #16163 (Closed): Reduce the output of `RubyVM::InstructionSequence#to_binary`
- ## Abstract
The output of `RubyVM::InstructionSequence#to_binary` is extremely large.
We have reduced the output of `#to_binary` by more than 70%.
The execution speed of `RubyVM::InstructionSequence.load_from_binary` is about 7% s... -
07:27 AM Revision 343b0a28 (git): Made a short-circuit expression w/o result into an `if`-statement
-
07:01 AM Revision 655c65d6 (git): &$$->nd_lit is uninitialized at this point
- See also https://travis-ci.org/ruby/ruby/jobs/583031687#L1874
-
06:25 AM Feature #10238: todo: remove dependency on malloc_usable_size
- Bump. I would like to revisit this. Do we need this many call to malloc_usable_size()?
-
12:35 AM Revision 489676bd (git): Add `--no-progress` to `aws s3` [ci skip]
- https://docs.aws.amazon.com/cli/latest/reference/s3/sync.html
> --no-progress (boolean) File transfer progress is not displayed. This flag is only applied when the quiet and only-show-errors flags are not provided. -
12:03 AM Bug #9242: Rdoc detection of aliases
- This is still an issue in the master branch. I've added a pull request for rdoc that will treat `rb_define_method` to the same C function as an alias (similar to `rb_define_alias`): https://github.com/ruby/rdoc/pull/742
09/10/2019
-
09:00 PM Revision 91ee9584 (git): Macros can't be expressions, so make a function
- Macros can't be expressions, that is a GNU extension (I didn't know
that). This commit converts the macro to a function so that everything
will compile correctly on non-GNU compatible compilers. -
08:09 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- Dan0042 (Daniel DeLorme) wrote:
> > The only time you really need the `RUBY_VERSION` check is for complete argument delegation to arbitrary methods with arbitrary arguments.
> ...
Let's say the target method is `foo(*args, **kw)`, and ... -
07:14 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- > Note that the `RUBY_VERSION` check is only needed in a subset of the cases. In cases where the target method does not accept keyword arguments, no changes are needed
Yes, I know, that's exactly what I was saying.
But my point wa... -
04:37 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- Note that the `RUBY_VERSION` check is only needed in a subset of the cases. In cases where the target method does not accept keyword arguments, no changes are needed (no need to introduce keyword arguments at all). In cases where the l...
-
02:41 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- Hmm, ok, that's what I was afraid of. I mean, it's not exactly a pretty solution. And it's not limited to method_missing; any method that accepts `*args` and forwards it to another method may have to be changed. Even if it doesn't have t...
-
07:42 PM Revision 13951023 (git): WB needs to be executed after object is reachable
-
07:06 PM Feature #16150: Add a way to request a frozen string from to_s
- @eregon, for context Matz recently refused a very similar change https://bugs.ruby-lang.org/issues/15836
-
08:12 AM Feature #16150: Add a way to request a frozen string from to_s
- I tried running ActiveSupport tests from Rails master on Ruby 2.6.2 + my PR, and found that one change is needed:
```
Error:
ConfigurableActiveSupport#test_configuration_accessors_are_not_available_on_instance:
FrozenError: can't m... -
07:25 AM Feature #16150: Add a way to request a frozen string from to_s
- Dan0042 (Daniel DeLorme) wrote:
> But I can't agree to a backward-incompatible change without a proper deprecation period.
> ...
I'm unsure if such troubles are necessary, because the practical incompatibility might be extremely low, s... -
05:48 PM Feature #16144 (Closed): Honor Logger#level overrides in Logger#add
-
05:42 PM Feature #16144: Honor Logger#level overrides in Logger#add
- My GitHub PR was merged, so I think this can be closed.
- 05:45 PM Revision 721cab47 (git): * 2019-09-11 [ci skip]
-
05:44 PM Revision 414a80d2 (git): `NODE_MATCH` needs to be marked / allocated from marking bucket
- Fixes a test in RubySpec
-
05:34 PM Bug #16154: lib/delegate.rb issues keyword argument warnings
- As some background for the dev meeting, I tried a couple of different approaches before this that didn't work.
One approach was to flag methods and have all positional hashes be treated as positional hashes (Ruby 3 behavior). That di... -
04:40 PM Bug #16162 (Feedback): Resque::DirtyExit - Child process received unhandled signal (You may have encountered a bug in the Ruby interpreter or extension libraries)
- Ruby 2.3.8 is no longer supported, can you please try with Ruby 2.5.6, 2.6.4, or the master branch?
-
12:33 PM Bug #16162 (Closed): Resque::DirtyExit - Child process received unhandled signal (You may have encountered a bug in the Ruby interpreter or extension libraries)
- My background jobs are all failing with the following error Resque::DirtyExit Child process received unhandled signal. After I restart the server they work for some minutes and then start failing. If I run the single jobs from Resque-sch...
-
09:57 AM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
- What timezone are you using?
-
08:29 AM Revision 83ef58f2 (git): [ruby/io-console] Suppress yet another warning on Windows
- https://github.com/ruby/io-console/commit/4e17c90788
-
08:29 AM Revision b5ab918d (git): [ruby/io-console] Suppress warnings on Windows
- About unused variables and a function.
https://github.com/ruby/io-console/commit/32baf54e7a -
08:20 AM Revision ad6cbc1d (git): Unused LONG_MAX_as_double
- LONG_MAX_as_double is not needed when long is small enough to be
exactly representable as a double, e.g., IL32LLP64 platforms. -
07:04 AM Revision 487d2900 (git): oops
- Silly typo.
-
05:37 AM Revision df1721c6 (git): Fixed GCC version for diagnostic-pragmas
- "GCC diagnostic push/pop" seems appeared at gcc 4.6.
-
05:04 AM Bug #9603 (Rejected): unusual reference class-variable with cloned class.
- While not intuitive, I think this behavior is expected and not a bug. It is not relating to class cloning, it is due to class variable lookup. Normal class variable lookup (e.g. not using `Module#class_variable_{g,s}et`), uses crefs, m...
-
03:39 AM Revision f5024de0 (git): Remove check of ai.protocol
- Solaris 10 returns addrinfo.ai_protocol as 0, not 6.
-
03:25 AM Revision 20e428ec (git): fix CentOS 6 compile error
- See also https://rubyci.org/logs/rubyci.s3.amazonaws.com/centos6/ruby-master/log/20190910T003005Z.fail.html.gz
-
03:21 AM Bug #9589 (Closed): Stack level too deep during eval causes segmentation fault
- From my testing with `class Object; define_method(:bar) {send(:bar)}; bar end`:
1.9-2.1: SystemStackError
2.2-2.4: segfault
2.5-master: SystemStackError
As this issue appears to have been fixed, closing. If you can reproduce wit... -
01:11 AM Revision 8d3db4f2 (git): Default to cc/c++ instead of gcc/g++ on OpenBSD
-
01:10 AM Revision 0e9d56f5 (git): Support timeout for Addrinfo
- Addrinfo.getaddrinfo and .foreach now accepts :timeout in seconds as
a keyword argument. If getaddrinfo_a(3) is available, the timeout will be
applied for name resolution. Otherwise, it will be ignored.
Socket.tcp accepts :resolv_timeou... -
12:28 AM Bug #16161 (Closed): tailcall_optimization may be disabled after r67315
- Before r67315:
```
$ ./miniruby -v -e 'iseq = RubyVM::InstructionSequence.compile("def foo(n, s = 0);return s if n < 1;foo(n - 1, n + s); end", tailcall_optimization: true); iseq.eval; p foo(900_000)'
ruby 2.7.0dev (2019-03-20 trunk...
09/09/2019
-
11:55 PM Bug #16106 (Closed): UnboundMethod owner points to base class
- The documentation for `owner` states: `Returns the class or module that defines the method.`. The example given in the documentation shows `method` being called on a Range instance, but having an owner of Enumerable. So I don't think d...
-
11:49 PM Bug #16158 (Feedback): "st" Character Sequence In Regex Look-Behind Causes Illegal Pattern Error When Combined With POSIX Bracket Expressions And Case Insensitivity Flag
- I tried on Ruby 2.5.6 and was not able to reproduce:
```
$ irb25
irb(main):001:0> pat = /(?<!a st)\p{Space}/i
=> /(?<!a st)\p{Space}/i
irb(main):002:0> pat = /(?i)(?<!a st)\p{Space}/
=> /(?i)(?<!a st)\p{Space}/
irb(main):003:0> ... -
03:19 PM Bug #16158: "st" Character Sequence In Regex Look-Behind Causes Illegal Pattern Error When Combined With POSIX Bracket Expressions And Case Insensitivity Flag
- Sorry, bad paste on the OP with the success examples.
```
2.5.0 :007 > pat = /((?<!Costa)Mesa|Arlington(?=(\p{Space}|\p{Punct})+(AZ|Arizona)))/
=> /((?<!Costa)Mesa|Arlington(?=(\p{Space}|\p{Punct})+(AZ|Arizona)))/
2.5.0 :008 > p... -
03:14 PM Bug #16158 (Open): "st" Character Sequence In Regex Look-Behind Causes Illegal Pattern Error When Combined With POSIX Bracket Expressions And Case Insensitivity Flag
- *This is my first Ruby bug submission. Please let me know if there is anything else that I can provide that would be helpful. Thanks for your time!*
I've tried just about as many combinations as I can think of and I have been able to ... -
11:18 PM Revision 3678c371 (git): [ruby/io-console] Added IO#check_winsize_changed on Windows
- https://github.com/ruby/io-console/commit/ee648fa8bb
-
11:18 PM Revision 74790e2d (git): [ruby/io-console] Added scroll methods
- https://github.com/ruby/io-console/commit/83e70de8ab
-
11:18 PM Revision c1412bd6 (git): [ruby/io-console] Added line/screen erase methods
- https://github.com/ruby/io-console/commit/e6344108a1
-
11:18 PM Revision 9844a349 (git): [ruby/io-console] Added IO#goto_column
- https://github.com/ruby/io-console/commit/143a9d5764
-
11:18 PM Revision e8be056a (git): [ruby/io-console] Added relative cursor move methods
- https://github.com/ruby/io-console/commit/21d340e4a2
-
11:18 PM Revision 3d9c7c28 (git): [ruby/io-console] Added IO#goto and IO#cursor= for VT
- https://github.com/ruby/io-console/commit/7f2b1b473d
-
11:18 PM Revision 53ed4fb3 (git): [ruby/io-console] Added IO#cursor for VT
- https://github.com/ruby/io-console/commit/41a6a6cace
-
11:18 PM Revision 803dc9e1 (git): [ruby/io-console] Added console_vt_response
- A function to query console info.
https://github.com/ruby/io-console/commit/db75a07fa3 -
11:18 PM Revision f4aa06c0 (git): [ruby/io-console] Drop fat gem support
- https://github.com/ruby/io-console/commit/972ceb081d
-
10:30 PM Misc #16156 (Closed): Enhancements to doc for class Exception
- Applied in changeset commit:git|00744a03d576f308d7fa586c2d04b5c1cb8fe3f4.
----------
Update documentation for Exception [ci skip]
Mostly from burdettelamar@yahoo.com (Burdette Lamar).
Implements [Misc #16156] -
10:20 PM Misc #16156: Enhancements to doc for class Exception
- Thanks, I'll merge this shortly with some minor changes.
-
02:05 PM Misc #16156 (Closed): Enhancements to doc for class Exception
- Enhancements (in my view) to doc for class Exception.
The git diff for error.c is attached.
Affects doc only for class Exception, not its methods or subclasses.
Mostly:
- Adds headers.
- Forms some text into bullet lists.
-
10:23 PM Revision 00744a03 (git): Update documentation for Exception [ci skip]
- Mostly from burdettelamar@yahoo.com (Burdette Lamar).
Implements [Misc #16156] -
09:40 PM Misc #16152: DevelopersMeeting20190919Japan
- * [Misc #16160] Lazy init thread local storage (methodmissing)
* Storage for Fiber local storage of execution context for `Thread#[]` and `Thread#[]=` APIs are lazy initialized.
* I think the same pattern should be applied to real ... -
09:18 PM Misc #16152: DevelopersMeeting20190919Japan
- * [Misc #16124] Let the transient heap belong to objspace (methodmissing)
* As per PR and outline of pros and cons in the issue, I think it's stable and performance enough to be coupled a little tighter to objspace instead of just bei... -
04:13 AM Misc #16152: DevelopersMeeting20190919Japan
- * [Bug #16154] lib/delegate.rb issues keyword argument warnings
* `Module#pass_positional_hash` for disabling false positive warnings in delegation. This is just for 2.7 migration path. Can we commit this? -
09:36 PM Misc #16160 (Open): Lazy init thread local storage
- References PR https://github.com/ruby/ruby/pull/2295
### Why?
The `local_storage` member of execution context is lazy initialized and drives the `Thread#[]` and `Thread#[]=` APIs, which are Fiber local and not Thread local storage.... -
09:26 PM Revision d8a4af47 (git): Only use `add_mark_object` in Ripper
- This patch changes parse.y to only use `add_mark_object` in Ripper.
Previously we were seeing a bug in write barrier verification. I had
changed `add_mark_object` to execute the write barrier, but the problem
is that we had code like th... -
09:26 PM Revision 4524780d (git): Revert "Reverting node marking until I can fix GC problem."
- This reverts commit 092f31e7e23c0ee04df987f0c0f979d036971804.
-
09:16 PM Feature #16155: Add an Array#intersection method
- connorshea (Connor Shea) wrote:
>
> ...
The question should be: is it needed? -
07:10 PM Feature #16155: Add an Array#intersection method
- shevegen (Robert A. Heiler) wrote:
> You could consider adding this to the upcoming developer meeting:
> ...
Thanks, I will :)
After thinking about the proposal a bit more, one other thing I wanted to ask was about whether we should... -
09:40 AM Feature #16155: Add an Array#intersection method
- I sort of agree with your reasoning. A slight add-on, though,
on that part:
> This would essentially just be a more readable alias for Array#&
It is probably easier to search for it (e. g. a google-search for
.intersection) than ... -
04:52 AM Feature #16155 (Closed): Add an Array#intersection method
- `Array#union` and `Array#difference` were added in Ruby 2.6 ([see this bug](https://bugs.ruby-lang.org/issues/14097)), but an equivalent for `&` (intersection) was not.
I'd like to propose `Array#intersection`. This would essentially ... -
07:36 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- Dan0042 (Daniel DeLorme) wrote:
> I've compiled your delegate-keyword-argument-separation branch to test this. BTW in your example it should be `respond_to?(:pass_positional_hash, true)`
> ...
Thank you for working on this and providin... -
05:09 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- I've compiled your delegate-keyword-argument-separation branch to test this. BTW in your example it should be `respond_to?(:pass_positional_hash, true)`
The portability result is... Almost there, but not quite. In 2.6 and 2.7, `o.empt... -
02:22 PM Misc #16157: What is the correct and *portable* way to do generic delegation?
- I haven't tested this, but I think it should work the same between 2.0 - 3.0 (assuming #16154 is accepted):
```ruby
class ProxyWithKW < BasicObject
def initialize(target)
@target = target
end
def method_missing(*a, **o,... -
02:10 PM Misc #16157 (Open): What is the correct and *portable* way to do generic delegation?
- With the keyword argument changes in 2.7 we must now specify keyword arguments explicitly when doing generic delegation. But this change is not compatible with 2.6, where it adds an empty hash to the argument list of methods that do not ...
-
05:18 PM Bug #16159: rubyspec about time fails in Asia/Kuala_Lumpur timezone
- Ran it 3 times and oddly enough they all fail at `Expected 1932 to equal 1933`
-
05:09 PM Bug #16159 (Closed): rubyspec about time fails in Asia/Kuala_Lumpur timezone
- Steps to reproduce:
1. Check out current master from Github (89c5d5a64e12cea23b230913b79c3d499bf30b12)
2. Run `autoconf`
3. Run `./configure`
4. Run `make check -- --with-openssl-dir=/usr/local/opt/openssl/lib`
Result:
```
... -
05:16 PM Bug #12984: `rescue *[]` should be equivalent to `rescue` as `method_call(*[])` is equivalent to `method_call`
- > I think it's is less surprising than rescue *no_classes to "magically" rescue StandardError
It is the current behavior that's magical. If you try to deduce what `rescue *[]` means from the primitives, it goes like this:
- `*[]` ... -
05:12 PM Feature #16146: Array .difference allow custom comparison
- As recommended I'll place in example directly here:
The feature I am requesting is to allow custom comparison of the Array #difference.
Currently it is comparing with each item's #eql and #hash but in the case of Objects you would ne... - 03:57 PM Revision 9b53a69d (git): * 2019-09-10 [ci skip]
-
03:56 PM Revision 6d9e5481 (git): Support multibyte input
-
03:56 PM Revision 685f12bb (git): Use IO#getbyte
-
03:56 PM Revision 805b0a48 (git): Use IO#getch to read one char in raw mode
-
02:22 PM Bug #16154: lib/delegate.rb issues keyword argument warnings
- This is an issue for *all* delegation code. This `pass_positional_hash` workaround is ok for the stdlib, but what about gems? What if a gem wants to stay compatible with 2.6? This is a question I really don't know the answer to, so I'm a...
-
02:35 AM Bug #16154 (Closed): lib/delegate.rb issues keyword argument warnings
- In the current master branch, `lib/delegate.rb` (e.g. `Delegator`/`SimpleDelegator`/`DelegateClass`) does not delegate keyword arguments, leading to keyword argument warnings when using it. It is simple to fix this by changing it to del...
-
12:27 PM Revision 89c5d5a6 (git): add minimaist C++ check
- This is a test extension so we basically want test failures rather
than a configure breakage but if there is no C++ compiler, we need
no test at all because there will be no chance for the tested
header file to be used later.
This makes... -
12:27 PM Revision 150f514e (git): workaround for C++ 98 const union problem.
- Not the case of recent compilers, but compilers before C++11
rejected ruby.h, like https://ci.appveyor.com/project/ruby/ruby/builds/27225706/job/qjca7dpe204dytbd
This is supposedly because a struct with a member qualified with
a const e... -
12:27 PM Revision 042c436c (git): static member variables must explictly be initialized
- These variables then get their room for storage.
See also https://github.com/ruby/ruby/runs/214042030 -
12:27 PM Revision 1364217b (git): add missing dependency for .travis.yml
-
12:27 PM Revision 92a87269 (git): Revert "save committers' weekend from CI failures"
- This reverts commit 53d21087da078cf999cc4757b03b2ff0fab4c2cf.
-
11:34 AM Revision c4efbf66 (git): Revert "Support timeout for Addrinfo"
- This reverts commit 6382f5cc91ac9e36776bc854632d9a1237250da7.
test failed on Solaris. -
11:24 AM Revision cce6cfbe (git): Make test-all and test-spec runnable on Android
- Calling some syscall functions such as Dir.chroot causes SIGSYS instead
of EPERM on Android.
This change skips all tests that stops the test-suite run. -
11:06 AM Revision 0691a748 (git): Fix a typo [ci skip]
-
10:23 AM Bug #16007 (Assigned): Process.clock_getres matches the clock in practice for Process::CLOCK_{PROCESS,THREAD}_CPUTIME_ID FAILED fails on armv7hl
- Thx.
However, I wonder if there is some explanation for disabling the test. I see a lot of comments such as `# These clocks in practice on Linux do not seem to match their reported resolution.` or `# These clocks in practice on ARM on... -
10:16 AM Revision 551edf64 (git): Reline: Fix wrong variable name
- This raised a NameError before.
-
09:44 AM Revision 8c09de38 (git): Fix expected ip_port
-
09:35 AM Revision 0fb2457d (git): Fix service name for test
- change service name to fix failed test on Solaris
-
06:39 AM Feature #15553 (Closed): Addrinfo.getaddrinfo supports timeout
- committed in 6382f5cc91ac9e36776bc854632d9a1237250da7
-
06:05 AM Revision 461663f5 (git): Fix domain name for test
-
05:47 AM Revision 61d90da2 (git): Fix invalid keyword argument separation warning for delegating calls
- This removes an invalid keyword argument separation warning for
code such as:
```ruby
def foo(arg)
arg
end
kw = {}
foo(*[1], **kw)
```
This warning was caused because the remove_empty_keyword_hash
was set based on a comparison with t... -
05:34 AM Revision 6382f5cc (git): Support timeout for Addrinfo
- Addrinfo.getaddrinfo and .foreach now accepts :timeout in seconds as
a keyword argument. If getaddrinfo_a(3) is available, the timeout will be
applied for name resolution. Otherwise, it will be ignored.
Socket.tcp accepts :resolv_timeou... -
02:36 AM Feature #16150: Add a way to request a frozen string from to_s
- > So, let's make Symbol#to_s frozen?
> ...
That makes sense, and I agree that's the cleanest solution. There's really nothing in the contract that says `to_s` is supposed to return a non-frozen string.
But I can't agree to a backward-i... -
02:15 AM Feature #16153 (Closed): eventually_frozen flag to gradually phase-in frozen strings
- Freezing strings can give us a nice performance boost, but freezing previously non-frozen strings is a backward-incompatible change which is hard to handle because the place where the string is mutated can be far from where it was frozen...
-
01:12 AM Bug #16136: String corruption in 2.6.4
- Our blog system was fixed at commit:ade1283ca276f7d589ffd3539fbc7b9817f682d5
-
01:03 AM Bug #16148 (Third Party's Issue): bugs.ruby-lang.org is not sending email notifications for watched issues
- Can you file this to https://github.com/ruby/bugs.ruby-lang.org/issues?
Our tracker only handles the language issues.