Project

General

Profile

Activity

From 12/26/2019 to 01/01/2020

01/01/2020

10:08 PM Feature #16470: Issue with nanoseconds in Time#inspect
I'd guess it's partly due to the Float itself losing precision.
But indeed it's quite unpretty. Maybe we should use #rationalize since that's closer to the Float#inspect output?
There is a usability problem here, it's basically impos...
Eregon (Benoit Daloze)
03:04 PM Feature #16470 (Closed): Issue with nanoseconds in Time#inspect
Ruby 2.7 added nanosecond representation to the return value of `Time#inspect` method.
Nanosecond is displayed as `Rational` as in the following example:
```ruby
t = Time.utc(2007, 11, 1, 15, 25, 0, 123456.789)
t.inspect # => "20...
andrykonchin (Andrew Konchin)
07:16 PM Feature #16471 (Open): Two feature requests for WeakRef: get original object, callback feature
I'd like to request two features for `WeakRef`. I'll explain what I want, then provide a real world use case.
First, add the ability to pull the original object out of the `WeakRef` object, something like this:
```ruby
myhash = {}...
Snappingturtle (Mike O'Sullivan)
04:56 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
Dan0042 (Daniel DeLorme) wrote:
> Maybe just one more push and we can reach the point where the hidden keyword hash flag can be made explicit via a subclass of `Hash`, and then we'd have a nice clean object-oriented design [like I attem...
Eregon (Benoit Daloze)
04:40 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
I think one of the main advantages of doing this is a much better migration path.
Imagine I have this code, which works fine in Ruby 2.6:
```ruby
def foo(*args)
bar(*args)
end
def bar(*args)
cdr(*args)
end
def cdr(*a...
Eregon (Benoit Daloze)
01:55 PM Revision 076f24c2 (git): bignum.c: extract bdigits_to_mpz and bdigits_from_mpz (#2805)
Kenta Murata
12:08 PM Bug #16469 (Closed): Wrong warning message at `URI.encode` and `URI.decode`
# Sample code
``` ruby
enc_uri = URI.encode("http://example.com/?a=\11\15")
URI.decode(enc_uri)
```
# Actual
```ruby
irb(main):005:0> enc_uri = URI.encode("http://example.com/?a=\11\15")
(irb):3: warning: URI.escape is obsolete...
sue445 (Go Sueyoshi)
11:05 AM Feature #16029: Expose fstring related APIs to C-extensions
@sam.saffron I agree that both would be nice.
> then new fstrings can be created using todays awkward API
You mean `rb_funcall(str, rb_intern("-@"))` ?
byroot (Jean Boussier)
06:06 AM Revision afd3f64f (git): Redmine /projects/ruby-trunk is now redirected
to /projects/ruby-master k0kubun (Takashi Kokubun)
06:03 AM Revision 8c9450e7 (git): Remove code to prevent double build on trunk
trunk branch was deleted. k0kubun (Takashi Kokubun)
05:47 AM Misc #15843: Make "trunk" a symbolic-ref of "master" on git.ruby-lang.org
Done
```
k0kubun@svn:/var/git/ruby.git/refs/heads$ cat /var/git/ruby.git/refs/heads/trunk
ref: refs/heads/master
k0kubun@svn:/var/git/ruby.git/refs/heads$ sudo rm /var/git/ruby.git/refs/heads/trunk
```
```
$ git push github :t...
k0kubun (Takashi Kokubun)
01:59 AM Misc #15843: Make "trunk" a symbolic-ref of "master" on git.ruby-lang.org
FYI: rvm ruby-head was fixed to use master branch in https://github.com/rvm/rvm/pull/4840 (thanks havenwood!) and therefore Travis ruby-head is also using master branch. I think we have no significant blocker for removing trunk branch an... k0kubun (Takashi Kokubun)
05:26 AM Revision eca964c2 (git): More consistent failure notifications
The format is the same as Travis / AppVeyor now. k0kubun (Takashi Kokubun)

12/31/2019

11:59 PM Revision ab9f56b6 (git): Do not notify AppVeyor on_build_status_changed
Similar to 4fb6643f31cdee33184043ce17c42001274c4392.
This is motivated by the lack of the same feature in GitHub Actions.
k0kubun (Takashi Kokubun)
11:29 PM Revision 47c84c74 (git): Make test run condition consistent with other jobs
When `make all` fails, we should not run tests and output of such run is
confusing.
k0kubun (Takashi Kokubun)
10:53 PM Revision 69731b24 (git): Fixup a6864f6d2f39bcd1ff04516591cc18d4027ab186
hsbt (Hiroshi SHIBATA)
10:47 PM Feature #15982 (Closed): Remove y2racc and racc2y
Applied in changeset commit:git|a6864f6d2f39bcd1ff04516591cc18d4027ab186.
----------
Removed the old executables of racc
[ruby-core:93516][Feature #15982]
https://github.com/ruby/racc/pull/123
hsbt (Hiroshi SHIBATA)
10:42 PM Revision a6864f6d (git): Removed the old executables of racc
[ruby-core:93516][Feature #15982]
https://github.com/ruby/racc/pull/123
hsbt (Hiroshi SHIBATA)
10:41 PM Revision e1c363f8 (git): [bundler/bundler] Add ruby2_keywords
https://github.com/bundler/bundler/commit/29d932d72d Sutou Kouhei
06:24 PM Revision 74cb4148 (git): Run tests in the consistent order
`make check` runs test -> test-all -> test-spec, and other CIs follow that too. k0kubun (Takashi Kokubun)
05:37 PM Revision 52c22860 (git): Fix an outdated comment
We're actually using it for PR :p k0kubun (Takashi Kokubun)
05:35 PM Revision 860753ea (git): Actions MinGW - fix test-all (#2803)
MSP-Greg (Greg L)
05:34 PM Revision 139f0d90 (git): Use actions/checkout for PR (#2804)
k0kubun (Takashi Kokubun)
05:30 PM Feature #16456: Ruby 2.7 argument delegation (...) should be its own kind of parameter in Method#parameters
I think that the `[[:rest, :"..."], [:keyrest, :"..."], [:block, :"..."]]` solution looks like a good option, as it keeps roughly the same behaviour while adding the differentiation between `*args, &blk` and `...`. aaronc81 (Aaron Christiansen)
05:04 PM Revision 049292e3 (git): Add load path and require for ruby/ruby
aycabta (aycabta .)
04:38 PM Revision 66e6055c (git): [ruby/irb] Fix lib name of OpenStruct
https://github.com/ruby/irb/commit/1f3a84ab6b aycabta (aycabta .)
03:02 PM Revision 287bfb69 (git): * 2020-01-01 [ci skip]
git[bot]
03:02 PM Revision 1a186223 (git): Update GitHub Actions Badges
- Generated by [npx github-actions-badge](https://github.com/azu/github-actions-badge)
- Add MJIT
znz (Kazuhiro NISHIYAMA)
02:32 PM Revision 9deb9427 (git): Add "require 'openstruct'" what is forgotten
aycabta (aycabta .)
02:32 PM Revision a118bb80 (git): [ruby/irb] Add tests for RubyLex
The set_auto_indent method calculates the correct number of spaces for
indenting a line. We think there might be a few bugs in this method so
we are testing the current functionality to make sure nothing breaks
when we address those bugs...
Ben
02:32 PM Revision 337ba56a (git): [ruby/reline] Degenerate the terminal size to [$LINES, $COLUMNS] if it is unknown
This is a workaround for https://github.com/ruby/irb/issues/50
https://github.com/ruby/reline/commit/5725677d1a
mame (Yusuke Endoh)
01:48 PM Revision e082f416 (git): Introduce BIGNUM_EMBED_P to check BIGNUM_EMBED_FLAG (#2802)
* bignum.h: Add BIGNUM_EMBED_P
* bignum.c: Use macros for handling BIGNUM_EMBED_FLAG
Kenta Murata
11:52 AM Revision 4ce28b58 (git): speed up set intersect
RGBD (Oleg Zubchenko)
10:43 AM Revision 0cf75e38 (git): Split test_nomethod_error.rb
nobu (Nobuyoshi Nakada)
10:43 AM Revision a580a375 (git): Split test_name_error.rb
nobu (Nobuyoshi Nakada)
10:43 AM Revision ee4ead80 (git): Split test_frozen_error.rb
nobu (Nobuyoshi Nakada)
10:43 AM Revision 8caeef7c (git): Fix the exception to be raised
`NoMethodError` has been raised instead of `FrozenError`. nobu (Nobuyoshi Nakada)
09:49 AM Revision 2e1fd4e2 (git): Official actions/checkout is useless
It died again https://github.com/ruby/ruby/runs/368837347 k0kubun (Takashi Kokubun)
09:31 AM Revision 918fe2ed (git): Fix Object#inspect documentation
Starting from ruby 2.7.0, there's no longer a connection between the hexadecimal
number that #inspect shows and the object's ID.
Joao Fernandes
09:18 AM Revision db58b4a4 (git): Update NEWS for Ruby 2.8.0 (tentative; to be 3.0.0)
znz (Kazuhiro NISHIYAMA)
09:16 AM Revision 3096baec (git): Copy NEWS to doc/NEWS-2.7.0
znz (Kazuhiro NISHIYAMA)
08:49 AM Revision 26ee0af4 (git): Test the bundled version minitest instead of master
Minitest has the released tags now. nobu (Nobuyoshi Nakada)
08:29 AM Revision d912393e (git): text/readline/test_readline.rb - fix skip on Reline (#2743)
TestRelineAsReadline#test_input_metachar passes on MinGW MSP-Greg (Greg L)
08:27 AM Revision 56a74659 (git): Copy-editing NEWS file on "is now warned" messages (#2783)
The phrase "[doing X] is now warned" is not grammatically correct in
English as it is lacking an object. We can make these sentences read
better by switching to "[doing X] will now display a warning" instead.
Prem Sichanugrist
07:46 AM Revision 38c35dd2 (git): Make Slack notifications consistent
k0kubun (Takashi Kokubun)
07:42 AM Revision 8136fec6 (git): There's no such target
k0kubun (Takashi Kokubun)
07:30 AM Revision f98650e9 (git): Make all Actions job names consistent
like "{platform} / make ({make target}, ...)" k0kubun (Takashi Kokubun)
07:23 AM Revision fe158e4c (git): Do not doubly build on trunk
k0kubun (Takashi Kokubun)
07:20 AM Revision b0041873 (git): Drop MinGW build from AppVeyor
in favor of #2791 k0kubun (Takashi Kokubun)
07:19 AM Revision eb2b4258 (git): MinGW on Actions (#2791)
* MinGW - skip spec in spec/ruby/optional/capi/thread_spec.rb
C-API Thread function rb_thread_call_without_gvl
-- runs a C function with the global lock unlocked and unlocks IO with the generic RUBY_UBF_IO
stops/freezes spec test...
MSP-Greg (Greg L)
07:09 AM Revision 79c42026 (git): Revert "Remove TEST_BUNDLED_GEMS_ALLOW_FAILURES"
This reverts commit 75e8dd58f69c190c9698d0133942032903fb2f07.
We seem to randomly hit another issue these days:
https://github.com/ruby/ruby/runs/368756135
https://github.com/ruby/ruby/runs/368756191
k0kubun (Takashi Kokubun)
06:46 AM Feature #16029: Expose fstring related APIs to C-extensions
@byroot
I think it heavily depends on usage... MySQL gem / PG would benefit from "lookup" followed by "create fstring if missing" cause vast majority of string it is creating when querying tables.
My proposal is for the minimal bu...
sam.saffron (Sam Saffron)
06:43 AM Feature #16291: Introduce support for resize in rb_ary_freeze and prefer internal use of rb_ary_freeze and rb_str_freeze for String and Array types
related, see this for for the string api
https://bugs.ruby-lang.org/issues/16029#change-82018
sam.saffron (Sam Saffron)
03:06 AM Bug #16455: coroutine ucontext uses deprecated POSIX getcontext/swapcontext/makecontext, absent in musl and uclibc
There is also a missing include for copy to work with musl:
```
+--- a/coroutine/copy/Context.h
++++ b/coroutine/copy/Context.h
+@@ -13,6 +13,7 @@
+ #include <string.h>
+ #include <stdlib.h>
+ #include <alloca.h>
++#include <sy...
luizluca (Luiz Angelo Daros de Luca)
01:09 AM Bug #16455: coroutine ucontext uses deprecated POSIX getcontext/swapcontext/makecontext, absent in musl and uclibc
nobu (Nobuyoshi Nakada) wrote:
> luizluca (Luiz Angelo Daros de Luca) wrote:
> ...
I created a patch to fix the build with musl/uclibc:
```
--- a/configure.ac
+++ b/configure.ac
@@ -2344,7 +2344,10 @@ AS_CASE([$rb_cv_coroutine], ...
luizluca (Luiz Angelo Daros de Luca)
02:14 AM Revision 179e402d (git): Updated dependencies on internal/warnings.h
Needed for `UNALIGNED_MEMBER_ACCESS` using `COMPILER_WARNING_`*
macros.
nobu (Nobuyoshi Nakada)
02:09 AM Feature #16461: Proc#using
Eregon (Benoit Daloze) wrote:
> This still has the problem that it mutates the Proc, what should happen if another Thread concurrently does `block.using(OtherRefinement)` ?
It doesn't mutate the Proc, but the block, and if OtherRefin...
shugo (Shugo Maeda)

12/30/2019

11:26 PM Bug #16406 (Closed): `(lambda_proc << normal_proc).lambda?` should return false
Applied in changeset commit:git|3264a00958f56e1ba75a95c93e59fc9cccf323e8.
----------
Fix Proc#<< spec
[Bug #16406]
alanwu (Alan Wu)
10:55 PM Bug #16406: `(lambda_proc << normal_proc).lambda?` should return false
Should be addressed by https://git.ruby-lang.org/ruby.git/commit/?id=99c7b0b7ea789643bef60085ab59e4b62011ef8b alanwu (Alan Wu)
11:13 PM Revision 3264a009 (git): Fix Proc#<< spec
[Bug #16406] alanwu (Alan Wu)
10:48 PM Revision f1ea5d22 (git): * 2019-12-31 [ci skip]
git[bot]
10:47 PM Revision 99c7b0b7 (git): Decide lambdaness of (f << g) using g (#2729)
* Deciding lambdaness of (f << g) using g
* Use version guards for spec changes
alanwu (Alan Wu)
10:22 PM Bug #16455: coroutine ucontext uses deprecated POSIX getcontext/swapcontext/makecontext, absent in musl and uclibc
nobu (Nobuyoshi Nakada) wrote:
> luizluca (Luiz Angelo Daros de Luca) wrote:
> ...
Yes. And it also affects uclibc.
autoconf should test for getcontext/swapcontext/makecontext at link time as musl do have them declared (but not impl...
luizluca (Luiz Angelo Daros de Luca)
07:27 PM Feature #16468 (Closed): Switch to Miller-Rabin for Prime.prime?
The miller-rabin algorithm is a non-deterministic primality test, however it is known that below 2**64, you can always get a deterministic answer by only checking a=[2,3,5,7,11,13,17,19,23, 29, 31, 37]
Given that Prime.prime? would ne...
steveb3210 (Stephen Blackstone)
06:23 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
My apologies, it seems I overestimated the meaning of "I think Eregon is correct". And perhaps you missed the part where I emphasized "might", as I never meant to imply you were 100% behind the idea. So hard to convey nuances in writing ... Dan0042 (Daniel DeLorme)
04:34 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
Dan0042 (Daniel DeLorme) wrote:
> Wow, we've finally reached the point where even Jeremy thinks `ruby2_keywords` by default *might* be the better choice.
That is not what I wrote. You either did not read or understand what I wrote ...
jeremyevans0 (Jeremy Evans)
04:20 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
Wow, we've finally reached the point where even Jeremy thinks `ruby2_keywords` by default *might* be the better choice. I didn't think I'd see that. Maybe just one more push and we can reach the point where the hidden keyword hash flag c... Dan0042 (Daniel DeLorme)
03:57 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
jeremyevans0 (Jeremy Evans) wrote:
> Without this, we would probably also have to warn on all cases where a keyword flagged hash is treated as keywords.
Yes, I think that warning should be just as precise as an explicit `ruby2_keywor...
Eregon (Benoit Daloze)
05:33 PM Feature #16435: Array#to_proc
zverok (Victor Shepelev) wrote:
> What I believe about the first one that it has the most _interesting consequences_: it allows to write shorter and more DRY code by introducing _new concept_ (which leads to thinking "where it can lead ...
Dan0042 (Daniel DeLorme)
02:41 PM Feature #16435: Array#to_proc
@Dan0042
> If I understand correctly, you are saying that of these: ... you consider that the first one provides some kind of clarity of understanding that you don't find in the other three and that leads to better design?
That's a...
zverok (Victor Shepelev)
02:40 AM Feature #16435: Array#to_proc
If I understand correctly, you are saying that of these:
```ruby
list.select(&:condition?)
list.select{.condition?}
list.select{_1.condition?}
list.select{|x|x.condition?}
```
you consider that the first one provides some kind...
Dan0042 (Daniel DeLorme)
04:44 PM Feature #16460: External names for keyword parameters in method definitions
It's a nice idea, and I rather like the original syntax proposed for its high readability, even though it would require adjusting our expectations. It's very different from usual ruby but since it's in the very limited context of a param... Dan0042 (Daniel DeLorme)
12:07 PM Feature #16460: External names for keyword parameters in method definitions
@harrisonb I don't feel like I can add anything substantial to what I've already said. Just two clarifications:
1. If something in my comments has sounded angrily/mockingly/disrespectful, I am genuinely sorry. It was not my intention ...
zverok (Victor Shepelev)
09:05 AM Bug #16467 (Rejected): Fetching a class variable with instance_eval fails with NameError
Class variables need to be in the proper class context.
The following code raises a `NameError` too.
```ruby
class FooClass::BarClass
@@bar # NameError (uninitialized class variable @@bar in FooClass::BarClass)
end
```
You hav...
nobu (Nobuyoshi Nakada)
12:44 AM Bug #16467 (Rejected): Fetching a class variable with instance_eval fails with NameError
Trying to fetch a class variable using `instance_eval` fails with `uninitialized class variable @variable_name in Object (NameError)`.
Reproduction program:
``` ruby
class FooClass
def initialize
@foo = "foo"
@@bar = "b...
barrettkingram (Barrett Ingram)
08:38 AM Revision 3e2418e2 (git): [ruby/io-console] bump up to 0.5.4
nobu (Nobuyoshi Nakada)
07:54 AM Misc #16464: Which core objects should support deconstruct/deconstruct_keys?
These probably should be filed as separate feature requests. I'm already using PM in production and the idea about deconstructing `Time` instances also came into my mind. `Object#deconstruct` is a lot more subtle, I wouldn't say it's _th... decuplet (Nikita Shilnikov)
01:31 AM Misc #16464: Which core objects should support deconstruct/deconstruct_keys?
> 1 in Integer(..0)
> ...
Same here. It looks like trying to convert a beginless range to an Integer. I understand how `Object#deconstruct` would work with the array pattern to allow this, but it feels a bit hacky. An object with `d...
Dan0042 (Daniel DeLorme)
03:04 AM Feature #14912: Introduce pattern matching syntax
mame (Yusuke Endoh) wrote:
> `Point[x: 1, y: 2, z: 3]` corresponds elegantly to `Point[x: a, y: b, z: c]`. We cannot write `Point{x: 1, y: 2, z: 3}`.
I understand the idea but for me this backfired. Because it looks **exactly** like...
Dan0042 (Daniel DeLorme)
12:59 AM Revision aed5afda (git): * 2019-12-30 [ci skip]
git[bot]
12:59 AM Revision e8821876 (git): syntax.rdoc: remove "experimental" from refinements (#2796)
palkan (Vladimir Dementyev)

12/29/2019

10:54 PM Feature #16456: Ruby 2.7 argument delegation (...) should be its own kind of parameter in Method#parameters
In the future it will be possible to combine `...` with other parameters. So if we think about what `parameters` would return in cases like these...
```ruby
method(def foo(a, *args, ...); end).parameters
#possibility 1 => [[:req, :a], [...
Dan0042 (Daniel DeLorme)
07:59 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
One thing to consider before deciding whether this behavior should be the default is how to deprecate it if we decide to remove it later. With `ruby2_keywords`, we would just warn when `ruby2_keywords` is called. Without this, we would... jeremyevans0 (Jeremy Evans)
07:32 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
jeremyevans0 (Jeremy Evans) wrote:
> If we want to do this, we should at least add a method to remove the `ruby2_keywords` flag in the cases where it causes problems.
Thank you for the example.
I'm not sure we need that, it's very...
Eregon (Benoit Daloze)
06:39 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
Eregon (Benoit Daloze) wrote:
> Which I think means, there is exactly 0 case where ruby2_keywords semantics are not wanted.
> ...
```ruby
def foo(x, y: $stderr)
y.puts x.inspect
end
def bar(*args)
args.each do |arg|
foo...
jeremyevans0 (Jeremy Evans)
05:00 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
FWIW, I tried to rebase Jeremy's branch on top of 2.7.0:
https://github.com/ruby/ruby/compare/v2_7_0...eregon:ruby2_keywords-by-default
There were a few conflicts though, I'm not sure it's correct.
All specs but one pass. `test-all`...
Eregon (Benoit Daloze)
03:46 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
Eregon (Benoit Daloze) wrote:
> > If a method is intended to accept only positional arguments, and if a keyword is passed to the method, it must be warned.
> ...
Oops, sorry. I was confused again.
Currently, we have only one unsett...
mame (Yusuke Endoh)
11:34 AM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
mame (Yusuke Endoh) wrote:
> I'm against this change unless many real-world, difficult-to-avoid problems are reported.
Here is an example: https://github.com/rails/rails/pull/38105#discussion_r361842686
I think nobody is able to exp...
Eregon (Benoit Daloze)
03:01 AM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
mame (Yusuke Endoh) wrote:
> I'm against this change unless many real-world, difficult-to-avoid problems are reported.
Agreed. Further, so far, not that many problems have been reported, and the problems reported are not difficult t...
jeremyevans0 (Jeremy Evans)
12:05 AM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
I'm against this change unless many real-world, difficult-to-avoid problems are reported.
If I understand Rafael correctly, Rails issue seems to be avoidable by automatical `ruby2_keywords` in `method_added`. It is not clean, but may...
mame (Yusuke Endoh)
07:46 PM Feature #12086: using: option for instance_eval etc.
Should we close this?
I agree with @headius here.
`using` with a lexical block (i.e., `using(refinement) do ... end`, not `using(&proc)`) might be a good alternative (#12281).
Although `refinement` there would need to be constant fo...
Eregon (Benoit Daloze)
07:10 PM Bug #16440 (Rejected): Date range inclusion behaviors are inconsistent
As explained in some previous comments, if you want to check if a value is on or after the beginning of the range and on or before the end of the range, use `cover?`. `include?` should only be used if you want to check the argument is o... jeremyevans0 (Jeremy Evans)
06:53 PM Bug #16466: `*args -> *args` delegation should be warned when the last hash has a `ruby2_keywords` flag
Previously, the args rest array was modified, but that was changed in commit:299a13612e54accd9d3661bafde8f67142a78d54 due to the issues it caused. Duping the array before modifying it should fix those issues, at the cost of an extra arr... jeremyevans0 (Jeremy Evans)
03:32 PM Bug #16466 (Closed): `*args -> *args` delegation should be warned when the last hash has a `ruby2_keywords` flag
(This ticket is derived from https://github.com/rails/rails/pull/38105#discussion_r361798251)
Currently, the following code displays no warnings.
```ruby
def baz(**kw)
end
def bar(*args)
baz(*args)
end
ruby2_keywords de...
mame (Yusuke Endoh)
06:30 PM Feature #16461: Proc#using
This still has the problem that it mutates the Proc, what should happen if another Thread concurrently does `block.using(OtherRefinement)` ?
Also it still seems inefficient, at least if there are `block.using(refinement)` with differe...
Eregon (Benoit Daloze)
06:15 PM Feature #16460: External names for keyword parameters in method definitions
zverok (Victor Shepelev) wrote:
> You propose to introduce the "same" construct, which means something
> ...
I think at the core, I am suggesting introducing something _new_. While there
is certainly merit to discussion of what is the...
hibachrach (Hazel Bachrach)
01:18 PM Feature #13703 (Closed): [PATCH] Documentation improvement for Encoding.default_internal
This issue closed at https://github.com/ruby/ruby/commit/93116569145bbff34355e08722c6689487d8b858 hsbt (Hiroshi SHIBATA)
01:17 PM Misc #13938 (Closed): [ANN] Rolling MinGW trunk build
There is no action for the next in this ticket. hsbt (Hiroshi SHIBATA)
01:15 PM Misc #16407: Add .github/workflows/cygwin.yml
hsbt (Hiroshi SHIBATA) wrote:
> I ignore to run btest on cygwin environment of GitHub Actions recently. I will completely remove it if no one maintains it.
Agreed for the removal. Adding a CI without its active maintainer is harmful.
mame (Yusuke Endoh)
12:17 PM Misc #16407 (Closed): Add .github/workflows/cygwin.yml
I ignore to run btest on cygwin environment of GitHub Actions recently. I will completely remove it if no one maintains it. hsbt (Hiroshi SHIBATA)
01:13 PM Feature #14855 (Closed): Binding#irb の中では、呼び出し元の __FILE__ と __dir__ をとりたい
https://github.com/ruby/ruby/pull/1896 has been merged. hsbt (Hiroshi SHIBATA)
01:12 PM Feature #14855 (Assigned): Binding#irb の中では、呼び出し元の __FILE__ と __dir__ をとりたい
hsbt (Hiroshi SHIBATA)
01:10 PM Misc #11712 (Closed): [PATCH] ext/openssl/ossl_ssl.c: nodoc for private methods
Applied in changeset commit:git|2ef8d5beeebf759c5dd0754bb99cbcfbad3f368e.
----------
ext/openssl/ossl_ssl.c: nodoc for private methods
[Misc #11712][ruby-core:71565]
hsbt (Hiroshi SHIBATA)
01:09 PM Revision 2ef8d5be (git): ext/openssl/ossl_ssl.c: nodoc for private methods
[Misc #11712][ruby-core:71565] hsbt (Hiroshi SHIBATA)
01:04 PM Feature #15239 (Assigned): [patch] test-spec win32ole
hsbt (Hiroshi SHIBATA)
12:57 PM Bug #15717 (Closed): Backport #15270 to Ruby 2.5.x
hsbt (Hiroshi SHIBATA)
12:55 PM Bug #16034 (Closed): Backport 5d33f787169bcc3594d2264726695d58c4a06899 to Ruby 2.6
hsbt (Hiroshi SHIBATA)
12:53 PM Bug #14160 (Assigned): JSON#generate documentation wrong/misleading
hsbt (Hiroshi SHIBATA)
12:50 PM Bug #11531 (Assigned): IPAddr#== implements wrong logic
hsbt (Hiroshi SHIBATA)
12:22 PM Feature #15982: Remove y2racc and racc2y
https://github.com/ruby/racc/pull/123 hsbt (Hiroshi SHIBATA)
12:19 PM Feature #16170 (Closed): Remove the unmaintained libraries from Ruby 2.7
I removed them at Ruby 2.7. hsbt (Hiroshi SHIBATA)
08:30 AM Bug #16465: False keyword warning against Struct#initialize
Your patch seems eventually same as:
```diff
diff --git a/struct.c b/struct.c
index 79131db2bd..07bfe59b97 100644
--- a/struct.c
+++ b/struct.c
@@ -326,9 +326,7 @@ static VALUE
setup_struct(VALUE nstr, VALUE members, int keywor...
nobu (Nobuyoshi Nakada)
08:04 AM Bug #16465: False keyword warning against Struct#initialize
https://github.com/ruby/ruby/pull/2795 mame (Yusuke Endoh)
07:53 AM Bug #16465: False keyword warning against Struct#initialize
It was reported in http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/50860 mame (Yusuke Endoh)
07:49 AM Bug #16465 (Closed): False keyword warning against Struct#initialize
The following code is warned:
```ruby
Sample2 = Struct.new(:s1, :s2, :s3) do
def initialize(a1:, a2:)
super(a1, a2, a1 + a2)
end
end
p Sample2.new(a1:1, a2:2)
#=> test.rb:6: warning: Using the last argument as k...
mame (Yusuke Endoh)
07:26 AM Revision 31e2f035 (git): [ruby/io-console] Enable only interrupt bits on `intr: true`
https://github.com/ruby/io-console/commit/baaf929041 nobu (Nobuyoshi Nakada)
04:12 AM Revision e5c441a4 (git): Optimize Array#rotate!(n) for n = 1 and n = -1
For the most common cases of `rotate!` one place to the right or to the
left, instead of doing some reversals of the array we just keep a single
value in a temporary value, use memmove and then put the temporary
value where it should be.
asterite (Ary Borenszweig)
04:08 AM Bug #16459: <internal:trace_point>:346: [BUG] Segmentation fault at 0x0000000000000008
Is it an issue of `TracePoint#instruction_sequence`? nobu (Nobuyoshi Nakada)
03:59 AM Revision a0d1fd16 (git): Fix documentation of Dir#each_child
hanachin (Seiei Miyagi)
03:34 AM Revision d7bef803 (git): Separate builtin initialization calls
nobu (Nobuyoshi Nakada)

12/28/2019

11:19 PM Revision 8ce5d46e (git): Fixed an unavailable sanitizer feature
nobu (Nobuyoshi Nakada)
10:13 PM Revision 290711e1 (git): * 2019-12-29 [ci skip]
git[bot]
10:13 PM Revision a04c5359 (git): Use __func__ as rb_cv_function_name_string on OpenBSD
The use of RUBY_WERROR_FLAG causes this test to fail on OpenBSD
platforms that use the binutils linker (ld.bfd) instead of the
llvm linker (ld.lld), due to warnings added to the binutils linker
in OpenBSD.
Removing the RUBY_WERROR_FLAG ...
jeremyevans (Jeremy Evans)
10:03 PM Misc #15843: Make "trunk" a symbolic-ref of "master" on git.ruby-lang.org
Related to this branch rename from "trunk" to "master", we previously renamed the Redmine project name from "Ruby trunk" to "Ruby master". Today, for consistency I also renamed its internal identifier `ruby-trunk` to `ruby-master` which ... k0kubun (Takashi Kokubun)
05:59 PM Feature #16446: Enumerable#take_*, Enumerable#drop_* counterparts with positive conditions
I understand some people are thinking that adding all these methods is doing too much.
I came up with an idea of using just one method: `cut`. It works like `String#partition` when it does not take an argument (but unfortunately, the ...
sawa (Tsuyoshi Sawada)
04:40 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
rafaelfranca (Rafael França) wrote:
> This solution would be my first choice if for some reason Rails needs to ask users to change their code to use `ruby2_keywords`.
Nice to hear.
I wonder if Rails and other gems really need to go ...
Eregon (Benoit Daloze)
04:15 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
I should be more precise about "*args-delegation broke in Ruby 2.7 for keyword arguments.".
For example, let's take this simple example from https://eregon.me/blog/2019/11/10/the-delegation-challenge-of-ruby27.html:
```ruby
def ta...
Eregon (Benoit Daloze)
03:59 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
This solution would be my first choice if for some reason Rails needs to ask users to change their code to use `ruby2_keywords`.
In our current problem, users define Mailers and those mailers have actions, that are public methods in t...
rafaelfranca (Rafael França)
01:26 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
Sorry for the semi off-topic comment. Personally I switched back to ruby 2.6.5p114 for the time
being, mostly due to my own laziness. I do not use keyword arguments in my own code base, but
I had several warnings; a few in FileUtils, b...
shevegen (Robert A. Heiler)
12:42 PM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
Another way to look at this, do we really want the Ruby language between versions 2.7 and 3.warn to have no natural (syntactic) way to do delegation?
(and instead have to use the ugly ruby2_keywords workaround)
That seems so lame to me...
Eregon (Benoit Daloze)
12:34 PM Feature #16463 (Closed): Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
Ruby 2.7.0 is out.
It aims to warn for every keyword argument change that will happen in Ruby 3.0.
Most warnings are useful: adding `**`, etc is needed to not break code when migrating to 3.0.
Ruby 2.7 also aims at remaining compati...
Eregon (Benoit Daloze)
04:31 PM Feature #5400: Remove flip-flops in 2.0
nagachika (Tomoyuki Chikanaga) wrote:
> I backported 4e038a7e into ruby_2_6 at r67792.
Really happy this feature is reintroduced into ruby after discuss.
zw963 (Wei Zheng)
02:37 PM Bug #16462: Ruby 2.7 autoload not working with $RUBYLIB (maybe circular dependency error)
mame (Yusuke Endoh) wrote:
> Unfortunately, I cannot reproduce the issue. To isolate the problem, could you uninstall "looksee" gem and check if the issue is still reproducible with other gems that use autoload?
> ...
Sorry, i am desc...
zw963 (Wei Zheng)
10:48 AM Bug #16462: Ruby 2.7 autoload not working with $RUBYLIB (maybe circular dependency error)
Unfortunately, I cannot reproduce the issue. To isolate the problem, could you uninstall "looksee" gem and check if the issue is still reproducible with other gems that use autoload?
```
$ gem install looksee
Building native extens...
mame (Yusuke Endoh)
10:14 AM Bug #16462 (Closed): Ruby 2.7 autoload not working with $RUBYLIB (maybe circular dependency error)
I don't know how to exactly describe this issue, following is try to reproduce.
We can use a gem named "looksee", it was supported ruby 2.7 ready.
same issue happen on several gem, looksee is just for a sample for describe this issu...
zw963 (Wei Zheng)
02:02 PM Feature #16435: Array#to_proc
@Dan0042 well, it could be a "Stockholm syndrome" on my side, but I tend to believe thinking "I want something `to_proc`-able here" leads me to structure code more clearly, and understand "what should be where". (I already expressed this... zverok (Victor Shepelev)
01:36 PM Feature #16460: External names for keyword parameters in method definitions
>> It is unlike anything that exists in Ruby (I can't remember a thing where two names separated by space would be a standalone syntax and not just a shortcut, say `puts x` === `puts(x)`)
> ...
Exactly my point. The Rubyists eye is tr...
zverok (Victor Shepelev)
09:11 AM Feature #16460: External names for keyword parameters in method definitions
zverok (Victor Shepelev) wrote:
> It also means _exactly_ "...and put in this variable" in this cases:
> ...
I stand corrected! That is a compelling refutation of my point.
> * It is unlike _anything_ that exists in Ruby (I can't ...
hibachrach (Hazel Bachrach)
08:59 AM Feature #16460: External names for keyword parameters in method definitions
> it reverses the common meaning of `=>` in Ruby of `key => value`.
But what is "common" meaning? `key => value` just means "key corresponds to value" (which you also can read "parameter name corresponds to (=>) local variable").
I...
zverok (Victor Shepelev)
08:49 AM Feature #16460: External names for keyword parameters in method definitions
zverok (Victor Shepelev) wrote:
> I'd say, considering new pattern-matching examples, something with `=>` _might_ work (while still looking ugly) [...]
See, to me, this seems *more* confusing as it reverses the common meaning of `=>`...
hibachrach (Hazel Bachrach)
08:44 AM Feature #16460: External names for keyword parameters in method definitions
Jut two points to add:
* the feature like this _might_ be useful for arguments named as Ruby keywords/core methods (e.g. things like `run :some_task, if: :condition?`, `convert(value, raise: false)`, `schedule(:worker, in: 5.minutes)`...
zverok (Victor Shepelev)
08:35 AM Feature #16460: External names for keyword parameters in method definitions
> What is `foo`?
In this case, `foo` would be a (JavaScript) `Object`. In using this syntax, you are presuming that `foo` would have the properties `nameOfOneProperty` or `nameOfAnotherProperty`, though if it did not have either of th...
hibachrach (Hazel Bachrach)
07:59 AM Feature #16460: External names for keyword parameters in method definitions
Though I don’t remember exactly, once I proposed a similar syntax.
And it was rejected then `local_variable_get` was introduced instead.
nobu (Nobuyoshi Nakada)
07:31 AM Feature #16460: External names for keyword parameters in method definitions
> A suggested syntax might be
def name(external_name internal_name:)
Isn't this syntax already reserved/used for keyword arguments?
> ...
matz knows crystal; he even donated a seizable sum to crystal way before that
donati...
shevegen (Robert A. Heiler)
03:34 AM Feature #16460: External names for keyword parameters in method definitions
What is `foo`? sawa (Tsuyoshi Sawada)
02:28 AM Feature #16460 (Open): External names for keyword parameters in method definitions
Hello! This is my first time filing an issue and I was unable to find anything similar. I apologize if one already exists.
In other languages (such as JavaScript, Swift, and Crystal), it is possible to have two names for a given keywo...
hibachrach (Hazel Bachrach)
01:15 PM Misc #16464: Which core objects should support deconstruct/deconstruct_keys?
I think when possible every object should support deconstructing IF
it makes sense. If it walks like a duck, talks like a duck, then it
can be dequacked (deconstructed like a duck).
I guess one question may be how useful something i...
shevegen (Robert A. Heiler)
01:04 PM Misc #16464 (Closed): Which core objects should support deconstruct/deconstruct_keys?
Now, when pattern matching is out, I believe it is worth discussing which core and standard library objects should be matchable "out of the box".
My proposals, as of now, are:
**1. `Object#deconstruct`, returning `[self]`.**
Jus...
zverok (Victor Shepelev)
12:10 PM Revision bb5b8ace (git): Fix typo
znz (Kazuhiro NISHIYAMA)
09:12 AM Revision 4fb6643f (git): Do not notify Travis on_success
We don't find it useful anymore, because notifications from many other
CIs are mixed.
k0kubun (Takashi Kokubun)
08:44 AM Revision a994b0ae (git): Add VM insns counter like debug_counter (#2789)
k0kubun (Takashi Kokubun)
04:21 AM Feature #6810: `module A::B; end` is not equivalent to `module A; module B; end; end` with respect to constant lookup (scope)
My oldest Ruby 1.8.2 (2004-12-25) also says `A::B.f # => 1` for that example. That Ruby is 15 years old. The example showing `A::B.f # => 0` is 7 years old. I suspect that `A::B.f # => 0` was a copy mistake, and Ruby always had `A::B.... kernigh (George Koehler)
03:32 AM Feature #16461 (Assigned): Proc#using
## Overview
I propose Proc#using to support block-level refinements.
```ruby
module IntegerDivExt
refine Integer do
def /(other)
quo(other)
end
end
end
def instance_eval_with_integer_div_ext(obj, &block)
...
shugo (Shugo Maeda)
01:51 AM Bug #16459: <internal:trace_point>:346: [BUG] Segmentation fault at 0x0000000000000008
@ko1 can you review https://github.com/ruby/ruby/pull/2788
Maybe it's band aid, but doesn't fix real issue (why it's null in the first place).
ioquatix (Samuel Williams)
12:54 AM Bug #16459: <internal:trace_point>:346: [BUG] Segmentation fault at 0x0000000000000008
```
Process 83135 stopped
* thread #1, name = 'ruby', stop reason = signal SIGSEGV: invalid address (fault address: 0x8)
frame #0: 0x00007fb5f7194410 libruby.so.2.7`rb_iseqw_new [inlined] iseqw_new(iseq=0x0000000000000000) at iseq...
ioquatix (Samuel Williams)
12:42 AM Bug #16459: <internal:trace_point>:346: [BUG] Segmentation fault at 0x0000000000000008
For reference, here is the library code which is triggering the crash: https://github.com/ioquatix/covered/blob/20fa509da47db93819d7b83578d102effe2ce977/lib/covered/source.rb#L39
Here is some debugging output at the point of the crash...
ioquatix (Samuel Williams)
12:41 AM Bug #16459 (Closed): <internal:trace_point>:346: [BUG] Segmentation fault at 0x0000000000000008
My code coverage gem which makes extensive use of `script_compiled` is causing segfault on 2.7.0 when accessing `event.instruction_sequence`. I didn't notice any issue in older rubies.
```
<internal:trace_point>:346: [BUG] Segmentati...
ioquatix (Samuel Williams)

12/27/2019

11:45 PM Revision bf04fe08 (git): Remove "All Rights Reserved." from Copyright statement.
Samuel Williams
11:41 PM Revision f96216df (git): Remove "All Rights Reserved." from Copyright statement.
Samuel Williams
11:01 PM Revision f05416c9 (git): Fix coroutine copy implementation on OpenBSD
OpenBSD is the only platform that uses this support by default,
and it did not work because while OpenBSD supports alloca, it does
not include alloca.h.
This should be backported to Ruby 2.7.
From George Koehler
jeremyevans (Jeremy Evans)
09:09 PM Feature #5481: Gemifying Ruby standard library
marcandre (Marc-Andre Lafortune) wrote:
> vo.x (Vit Ondruch) wrote:
> ...
You can compare the bundler.gemspec from Ruby and upstream:
https://github.com/ruby/ruby/blob/master/lib/bundler/bundler.gemspec
https://github.com/bundler/b...
vo.x (Vit Ondruch)
08:35 PM Feature #5481: Gemifying Ruby standard library
hsbt (Hiroshi SHIBATA) wrote (over 1 year ago):
> > @marcandre
> ...
There was an issue with `prime` library not beeing synced, I haven't checked others yet. It would be important to know if we can automatize this, and who's responsibi...
marcandre (Marc-Andre Lafortune)
08:33 PM Feature #5481: Gemifying Ruby standard library
@hsbt ah, thanks, I didn't know about `ruby tool/sync_default_gems.rb`. I doubled checked the code and the algorithm currently is in the subdirectory iff there is one, so what I did was correct and sufficient:
https://github.com/ruby/...
marcandre (Marc-Andre Lafortune)
08:51 PM Feature #16264: Real "callable instance method" object.
As a note for the future:
Since unary operations like `-@` and `~@` use the `@` sigil to represent the receiver, I think it would make sense for the callable instance method object to have a syntax like `@.hoge`
Dan0042 (Daniel DeLorme)
08:43 PM Feature #16446: Enumerable#take_*, Enumerable#drop_* counterparts with positive conditions
I think the positive counterparts of `take_while/drop_while` should be `take_until/drop_until`. And although `take_upto` and `drop_upto` are nicely intuitive and descriptive, I can't think of any good names for their negative counterpart... Dan0042 (Daniel DeLorme)
08:04 PM Bug #16457: Invisible keys on hash when defining hash with Hash.new({})
```ruby
my_hash = Hash.new({})
my_hash[:my_key].merge!(value: '')
id = my_hash.default.object_id
p ObjectSpace.each_object.find { |o| o.object_id == id }
#=> {:value=>""} -- it exists
my_hash = nil # allow myhash __and its de...
zverok (Victor Shepelev)
07:54 PM Bug #16457 (Rejected): Invisible keys on hash when defining hash with Hash.new({})
This is as per spec.
You typically never want a hash's default to be mutable. Try to name that default in your head (e.g. `X={}; my_hash= Hash.new(X)`, this might help understand it.
You may want to do instead: `Hash.new{ |h, k| h[...
marcandre (Marc-Andre Lafortune)
04:36 PM Bug #16457: Invisible keys on hash when defining hash with Hash.new({})
So does it mean when main hash lost his references, this new allocated hash will also be collected by GC? I haven't get a chance to test it (also don't know how to do proper test :) ) Farhad (Farhad Eyvazli)
11:44 AM Bug #16457: Invisible keys on hash when defining hash with Hash.new({})
The logic of this behavior is:
1. `my_hash[:my_key]` returns `my_hash.default` (not assigning it to any key)
2. `my_hash[:my_key].merge!(value: '')` updates this object
3. Now this object is available for ANY key in its updated form, ...
zverok (Victor Shepelev)
11:36 AM Bug #16457 (Rejected): Invisible keys on hash when defining hash with Hash.new({})
When using ``` Hash.new()``` to initialize a hash, we all know for undefined it will return specific value which sent as a parameter to the ```Hash.new``
But when doing something like that keys get invisible
```ruby
my_hash: Hash.ne...
Farhad (Farhad Eyvazli)
07:54 PM Feature #16378: Support leading arguments together with ...
In the [DevelopersMeeting20191017Japan log](https://docs.google.com/document/d/1-IC98nOPY_FZnne2PXILYAaxt6PqHfhphAI908K3vD8/edit) there was "Future work: lead argument handling is postponed", so clearly there was the intention of adding ... Dan0042 (Daniel DeLorme)
06:15 PM Feature #16378 (Open): Support leading arguments together with ...
@matz Could you reply to this?
Particularly:
> But the primary purpose of Ruby ... is method delegation.
Indeed, and I believe we also want to extract leading arguments in many delegation use cases.
`...` not supporting leading a...
Eregon (Benoit Daloze)
07:46 PM Bug #16458 (Rejected): Ruby 2.7 warning firing in the wrong situations
The method is defined in line *146*, i.e. it is `nil`'s `#try` method:
```
def try(_method_name = nil, *, **)
nil
end
```
https://github.com/rails/rails/blob/fe097fa629f0975316736f08c3ae00600055ef06/activesupport/lib/active_s...
marcandre (Marc-Andre Lafortune)
05:55 PM Bug #16458 (Rejected): Ruby 2.7 warning firing in the wrong situations
I'm trying to remove all warnings from my library and there is a warning related to keyword arguments that is firing when I believe it should not.
The warning is:
```
/Users/rafaelfranca/src/rails/globalid/lib/global_id/global_id....
rafaelfranca (Rafael França)
05:35 PM Feature #16456: Ruby 2.7 argument delegation (...) should be its own kind of parameter in Method#parameters
> Is there an advantage to have its own type of parameter?
I believe the advantages of doing this are:
- If Ruby ever introduces a new type of parameter, the result of `#parameters` won't need to change for existing code which us...
aaronc81 (Aaron Christiansen)
11:37 AM Feature #16456: Ruby 2.7 argument delegation (...) should be its own kind of parameter in Method#parameters
> I think it should be:
```ruby
[[:rest, :*], [:keyrest, :**], [:block, :&]]
```
(I have a deja vu we already discussed it :)))
Names are redundant, it should be just
```ruby
[[:rest], [:keyrest], [:block]]
```
Like this:
...
zverok (Victor Shepelev)
11:29 AM Feature #16456: Ruby 2.7 argument delegation (...) should be its own kind of parameter in Method#parameters
I think it should be:
```ruby
[[:rest, :*], [:keyrest, :**], [:block, :&]]
```
because that's what it will act like in Ruby 3.0+.
Is there an advantage to have its own type of parameter?
That would make usages of `#parameters` ...
Eregon (Benoit Daloze)
12:42 AM Feature #16456 (Closed): Ruby 2.7 argument delegation (...) should be its own kind of parameter in Method#parameters
A method defined with `...` as its parameter list is equivalent to one defined with `*args, &blk`, according to `Method#parameters`.
```ruby
def foo(...); end
p method(:foo).parameters
# => [[:rest, :*], [:block, :&]]
```
Even ...
aaronc81 (Aaron Christiansen)
04:36 PM Revision c74d30e7 (git): Update to ruby/spec@7241f39
Eregon (Benoit Daloze)
04:36 PM Revision 74fdc1e6 (git): Update to ruby/mspec@673fcab
Eregon (Benoit Daloze)
03:47 PM Revision fe3d9d28 (git): * 2019-12-28 [ci skip]
git[bot]
03:46 PM Revision a2fac1d7 (git): Update to ruby/spec@d419e74
Eregon (Benoit Daloze)
03:46 PM Revision 26a9f80c (git): Update to ruby/mspec@1034afc
Eregon (Benoit Daloze)
11:37 AM Feature #16150: Add a way to request a frozen string from to_s
zunda (zunda an) wrote:
> For now, this can be worked around with making sure to have the `readpartial` method return an unfrozen empty string:
Yes, that looks like a good fix to me.
I would indeed expect usages of `read` and `readp...
Eregon (Benoit Daloze)
12:13 AM Feature #16150: Add a way to request a frozen string from to_s
With help by mame-san, I found `nil.to_s` returning a frozen empty string (`""`) broke the http gem on ruby-2.7.0. I wonder how other gems maybe affected.
The code raises `FrozenError` when trying to `force_encoding` after `read`ing a...
zunda (zunda an)
08:55 AM Bug #16406 (Assigned): `(lambda_proc << normal_proc).lambda?` should return false
nobu (Nobuyoshi Nakada)
08:51 AM Revision bf77fc23 (git): Use the more popular word [ci skip]
[Bug #16437] nobu (Nobuyoshi Nakada)
07:07 AM Revision 4db89828 (git): Add test_completion_with_indent_and_completer_quote_characters
This is for 8a705245e55575d4d310a2e956b89a36a5931971. aycabta (aycabta .)
07:02 AM Revision 778634f7 (git): Drop an invalid char as UTF-8
aycabta (aycabta .)
04:19 AM Bug #16455: coroutine ucontext uses deprecated POSIX getcontext/swapcontext/makecontext, absent in musl and uclibc
luizluca (Luiz Angelo Daros de Luca) wrote:
> I tried to disable it with --without-coroutine, --with-out-coroutine and --with-coroutine=no, but it is innocuous or try to use a "no" implementation.
Does `—-with-coroutine=copy` work?
nobu (Nobuyoshi Nakada)
04:06 AM Revision 729b7ce2 (git): Add check_warning_flags to leakchecker
znz (Kazuhiro NISHIYAMA)
01:17 AM Revision 8c5430e2 (git): reroute macro conflicts on OpenBSD
OpenBSD's <sys/endian.h> has its own swap32() etc. We have to avoid
name conflicts.
See also https://rubyci.org/logs/rubyci.s3.amazonaws.com/openbsd-current/ruby-master/log/20191226T210011Z.log.html.gz#miniruby
shyouhei (Shyouhei Urabe)
12:20 AM Revision 018769e2 (git): Try to fix error on Solaris
znz (Kazuhiro NISHIYAMA)

12/26/2019

11:13 PM Feature #16441: Enumerable#take_while_after
Dan0042 (Daniel DeLorme) wrote:
> `take_while_after` is rather unwieldy, so in terms of naming maybe I can suggest:
> ...
Such methods are the same as the cases 6 and 7 in my proposal #16446.
sawa (Tsuyoshi Sawada)
10:32 PM Feature #16441: Enumerable#take_while_after
`take_while_after` is rather unwieldy, so in terms of naming maybe I can suggest:
```ruby
str.each_line(chomp: true).take_from{ _1 == '<<' }.take_upto{ _1 == '>>' }
```
Dan0042 (Daniel DeLorme)
10:10 PM Feature #16435: Array#to_proc
In all honesty, the more time goes, the less I like the various proposals that replace a block by the convert-to-proc `&` operator.
It looks to me like all the examples could be just as succintly represented with numbered parameters, ...
Dan0042 (Daniel DeLorme)
10:00 PM Feature #5481: Gemifying Ruby standard library
marcandre (Marc-Andre Lafortune) wrote:
> I'm was actually wondering why they are in the main repository at all...
The problem of .gemspec files is that they are scattered all across the repository. The .gemspec should live either in...
vo.x (Vit Ondruch)
09:03 PM Feature #16451: Special ternary operator for methods ending in `?`
Also against.
I agree that the double question mark looks weird in `foo? ? 1 : 2`, but that's just a code formatting issue and doesn't warrant such an exceptional syntax. xBartu's suggestion is good, or you could customize your editor...
Dan0042 (Daniel DeLorme)
10:32 AM Feature #16451: Special ternary operator for methods ending in `?`
I am also against the proposal.
Having said that I love using one-liners but newcomers to Ruby (from another language) will presumably look for current syntax.
This might be a bit odd yet we can advocate the following:
``` rub...
xBartu (Bartu Demirkıran)
10:15 AM Feature #16451: Special ternary operator for methods ending in `?`
nobu (Nobuyoshi Nakada) wrote:
> A method ends with `?` also can take argument(s), so the proposed syntax introduces an ambiguity which doesn't seem solvable.
I won't claim to be an expert in how the interpreter works, so I'll take y...
myxoh (Nicolas Klein)
08:09 AM Feature #16451: Special ternary operator for methods ending in `?`
A method ends with `?` also can take argument(s), so the proposed syntax introduces an ambiguity which doesn't seem solvable. nobu (Nobuyoshi Nakada)
08:46 PM Feature #15973: Let Kernel#lambda always return a lambda
> one of the key points of Ruby's attractiveness is how far it goes to reduce boilerplate in a logical and humane way. There is a non-neglectible gap between "human" consistency and "computer" (formal) consistency.
+1, very much. I'm ...
Dan0042 (Daniel DeLorme)
07:53 AM Feature #15973: Let Kernel#lambda always return a lambda
Ok, make a new ticket about define_method. How about lambda?

Koichi

> 2019/12/26 4:34、zverok.offline@gmail.comのメール:
>
> Issue #15973 has been updated by zverok (Victor Shepelev).
>
>
> Ugh, let me be a bit philosophical h...
ko1 (Koichi Sasada)
08:03 PM Bug #16455 (Closed): coroutine ucontext uses deprecated POSIX getcontext/swapcontext/makecontext, absent in musl and uclibc
Hello,
While building ruby 2.7.0 for mips with musl, it fails:
```
linking miniruby /home/luizluca/prog-local/openwrt/trunk/staging_dir/toolchain-...
luizluca (Luiz Angelo Daros de Luca)
03:47 PM Revision 30dbd9e4 (git): * 2019-12-27 [ci skip]
git[bot]
03:46 PM Revision baf37a5f (git): Get rid of LIST_HEAD conflict with a system header on macOS
nobu (Nobuyoshi Nakada)
12:20 PM Revision 7bf44e92 (git): `#include "internal/debug"` seems to be needed in assert mode
http://ci.rvm.jp/results/trunk-theap-asserts@silicon-docker/2525210 mame (Yusuke Endoh)
11:45 AM Revision 0c2d731e (git): update dependencies
shyouhei (Shyouhei Urabe)
11:45 AM Revision 8184adab (git): internal/stdbool.h rework
Noticed that internal/stdbool.h and addr2line.c are the only two place
where missing/stdbool.h is included. Why not delete the file so that
we can merge internal/stdbool.h and missing/stdbool.h into one.
shyouhei (Shyouhei Urabe)
11:45 AM Revision 5e22f873 (git): decouple internal.h headers
Saves comitters' daily life by avoid #include-ing everything from
internal.h to make each file do so instead. This would significantly
speed up incremental builds.
We take the following inclusion order in this changeset:
1. "ruby/con...
shyouhei (Shyouhei Urabe)
11:45 AM Revision 33e96019 (git): TIMESPEC_SEC_MAX might be bigger than 53 bits.
The same as 41bc766763dba63ae2529f2f9070b8e26399745c. Read that commit
for what is happening.
shyouhei (Shyouhei Urabe)
11:45 AM Revision bf53d6c7 (git): other minior internal header tweaks
These headers need no rewrite. Just add some minor tweaks, like
addition of #include lines. Mainly cosmetic.
TIMET_MAX_PLUS_ONE was deleted because the macro was used from only
one place (directly write expression there).
shyouhei (Shyouhei Urabe)
11:45 AM Revision 3ae09b30 (git): internal/vm.h rework
Rearranged contents, then added MJIT_FUNC_EXPORTED function
declarations.
shyouhei (Shyouhei Urabe)
11:45 AM Revision e0b1be01 (git): internal/thread.h rework
Rather trivial, added missed MJIT_FUNC_EXPORTED function declaration. shyouhei (Shyouhei Urabe)
11:45 AM Revision ce2c97d7 (git): internal/symbol.h rework
Some declatations are moved from internal/parse.h, to reflect the fact
that they are defined in symbol.c.
shyouhei (Shyouhei Urabe)
11:45 AM Revision 1a80d7bc (git): internal/string.h rework
Reduced the number of macros defined in the file. Also made it explicit
for MJIT_FUNC_EXPORTTED functions to be so.
shyouhei (Shyouhei Urabe)
11:45 AM Revision 797c4691 (git): internal/range.h rework
Eliminate macros for better readability. shyouhei (Shyouhei Urabe)
11:45 AM Revision 719efe72 (git): internal/process.h rework
Eliminated the macro to convert into an inline function. shyouhei (Shyouhei Urabe)
11:45 AM Revision c524df07 (git): internal/proc.h rework
Annotated MJIT_FUNC_EXPORTED functions as such. Declaration of
rb_sym_to_proc is moved into this file because the function is defined
in proc.c rather than string.c.
shyouhei (Shyouhei Urabe)
11:45 AM Revision d0e0c884 (git): internal/object.h rework
Eliminated macros. As a side effect struct RBasicRaw is no longer
required because we can now define anonymous structs inside of inline
functions.
shyouhei (Shyouhei Urabe)
11:45 AM Revision c27bcd70 (git): internal/gc.h rework
Improved readability by reducing the use of macros. Also moved some
part of internal/compilers.h into this file, because it seems to be the
right place for them.
shyouhei (Shyouhei Urabe)
11:45 AM Revision adc49f0f (git): internal/sanitizers.h rework
Rearrange macro orders for better readability. shyouhei (Shyouhei Urabe)
11:45 AM Revision ec6f6b53 (git): internal/error.h rework
Reduce macros for readability. Also transplanted some part of
internal/file.h into here because the delcared functions are in fact
defined in error.c.
shyouhei (Shyouhei Urabe)
11:45 AM Revision 23c2a27b (git): internal/compile.h rework
This file containes other materials than in compile.c. I could perhaps
split them into files, but felt overkill. Just add comments that
describe the situations.
shyouhei (Shyouhei Urabe)
11:45 AM Revision 0723db6c (git): internal/array.h rework
Rearrange contents for better readability, reduce macros for the same
reason, and mark MJIT_FUNC_EXPORTED functions as such.
shyouhei (Shyouhei Urabe)
11:45 AM Revision f3a229fe (git): internal/variable.h rework
Eliminated macros. Also marked MJIT_FUNC_EXPORTED functions as such.
Some of them are declared in constant.h so edited that file also.
shyouhei (Shyouhei Urabe)
11:45 AM Revision 989068cf (git): internal/imemo.h rework
Arrange contents and eliminate macros, to make them readable.
Macro IFUNC_NEW was deleted because there was only one usage.
shyouhei (Shyouhei Urabe)
11:45 AM Revision 63c9f620 (git): internal/class.h rework
This file has almost nothing to do. Added some #ifdef lines and
rearranged file contents.
Those macros are unable to translate into inline functions, because they
are used as lvalues of assignments.
shyouhei (Shyouhei Urabe)
11:45 AM Revision 7d71d916 (git): internal/struct.h rework
Replace macros with inline functions of equivalent contents, for much
improved readability.
shyouhei (Shyouhei Urabe)
11:45 AM Revision e72b8592 (git): internal/hash.h rework
Reduce macros to make them inline functions, as well as mark
MJIT_FUNC_EXPORTED functions explicitly as such.
Definition of ar_hint_t is simplified. This has been the only possible
definition so far.
shyouhei (Shyouhei Urabe)
11:45 AM Revision f0c02a09 (git): internal/numeric.h rework
Marked MJIT_FUNC_EXPORTED functions as such. Other changes are rather
cosmetic.
shyouhei (Shyouhei Urabe)
11:45 AM Revision 099778a6 (git): internal/bingnum.h rework
Turn macros into inline functions for better readability. Also add
rb_int128t2big delcaration, which was missing.
shyouhei (Shyouhei Urabe)
11:45 AM Revision f6dc053f (git): internal/fixnum.h rework
Add #include lines, move FIXNUM_POSITIVE_P etc. from numeric.h. shyouhei (Shyouhei Urabe)
11:45 AM Revision 68c0dc8d (git): internal/static_assert.h rework
ISO/IEC 9899:2011 section 7.2 states that <assert.h> must define
static_assert. Use it when available.
shyouhei (Shyouhei Urabe)
11:45 AM Revision 6581db21 (git): internal/warnings.h rework
Not a big rewrite. Just to make those macros readable. shyouhei (Shyouhei Urabe)
11:45 AM Revision 64ec438b (git): internal/bits.h rework
Improving readability by converting some macros into inline functions.
Also improved support for recent x86_64 processors, which have better
instructions for the purposes.
shyouhei (Shyouhei Urabe)
11:45 AM Revision 0958e19f (git): add several __has_something macro
With these macros implemented we can write codes just like we can assume
the compiler being clang. MSC_VERSION_SINCE is defined to implement
those macros, but turned out to be handy for other places. The -fdeclspec
compiler flag is nec...
shyouhei (Shyouhei Urabe)
11:45 AM Revision 863dbb21 (git): assume C99
Now that we no longer support old compilers, we can safely delete
several obsolete #ifdef gurads. Also because (as of writing) it is
impossible to compile the program using C++ compilers, lets just
entirely prohibit __cplusplus to reduc...
shyouhei (Shyouhei Urabe)
11:45 AM Revision 1dd149d3 (git): re-add io.h and encoding.h into internal.h
This is tentative. For the sake of simplicity we partially revert
commits e9cb552ec96, ee85a6e72b and 51edb300425. Will decouple them
once again when we are ready.
shyouhei (Shyouhei Urabe)
11:45 AM Revision b739a63e (git): split internal.h into files
One day, I could not resist the way it was written. I finally started
to make the code clean. This changeset is the beginning of a series of
housekeeping commits. It is a simple refactoring; split internal.h into
files, so that we can...
shyouhei (Shyouhei Urabe)
11:45 AM Revision ba78bf97 (git): debug_counter.h must be self-contained
Include what is necessary. shyouhei (Shyouhei Urabe)
10:33 AM Misc #16454: DevelopersMeeting20200116Japan
duerst (Martin Dürst) wrote:
> mame (Yusuke Endoh) wrote:
> ...
Yes, I meant 2020/01/09. Thanks :-)
mame (Yusuke Endoh)
09:23 AM Misc #16454: DevelopersMeeting20200116Japan
(I honestly promised to stop doing this...)
* [Feature #16441] Enumerable#take_while_after (zverok)
* Just like `take_while`, but also returns the matched element; practical examples are shown
* [Feature #16435] Array#to_proc (zve...
zverok (Victor Shepelev)
08:23 AM Misc #16454: DevelopersMeeting20200116Japan
mame (Yusuke Endoh) wrote:
> Please add a ticket number by one week ago about the meeting date.
Do you mean "by one week before the meeting date"? In English, "ago" can only be used for the past, not for the future.
duerst (Martin Dürst)
07:52 AM Misc #16454: DevelopersMeeting20200116Japan
Carry-over:
* [Bug #8841] Module#included_modules and prepended modules (mame)
* Module#include? and Module#included_modules regard prepended modules as included (not well documented); Module#included is not called when the module ...
mame (Yusuke Endoh)
07:50 AM Misc #16454: DevelopersMeeting20200116Japan
I'd like to set the comment deadline for the agenda. Please add a ticket number by one week ago about the meeting date. (I'll go through the tickets before the meeting.) mame (Yusuke Endoh)
07:45 AM Misc #16454 (Closed): DevelopersMeeting20200116Japan
# The next dev meeting
**Date: 2020/01/16 13:00-17:00**
Place/Sign-up/Agenda/Log: https://docs.google.com/document/d/1NxNMc7tlt-olPRyRQDhAjZWw30Atr6a-rfQxQ9BRXfY
- Dev meeting *IS NOT* a decision-making place. All decisions should...
mame (Yusuke Endoh)
09:06 AM Feature #16290 (Closed): Add Ruby C API to acquire aligned memory
watson1978 (Shizuo Fujita)
07:15 AM Misc #16393 (Closed): DevelopersMeeting20191220Japan
mame (Yusuke Endoh)
06:50 AM Revision b25e2727 (git): Transform hash keys by a hash [Feature #16274]
nobu (Nobuyoshi Nakada)
05:39 AM Bug #16450 (Closed): Range#min with a beginless range should raise an explicit exception
81e377023c490998a3fec245ca2fb2b3c710c2c6 mame (Yusuke Endoh)
05:13 AM Bug #16453 (Closed): irb crashes when using array literal and heredoc
I wanted to type like this:
``` ruby
[<<FOO]
hello
FOO
```
But IRB crashed after input "hello" (and return):
```
irb(main):001:-" [<<FOO]
irb(main):002:-" helloTraceback (most recent call last):
32: from /Users/jnito/...
jnchito (Junichi Ito)
03:54 AM Feature #16375: Right size regular expression compile buffers for literal regexes and on Regexp#freeze
methodmissing (Lourens Naudé) wrote:
> Thanks for the consideration and discussing the proposal. Do you mean file a refactored version of this ticket which has drifted in scope on the Feature tracker with the memory improvements?
Sor...
mame (Yusuke Endoh)
03:08 AM Feature #16375: Right size regular expression compile buffers for literal regexes and on Regexp#freeze
mame (Yusuke Endoh) wrote:
> @nobu will review the patch.
> ...
Thanks for the consideration and discussing the proposal. Do you mean file a refactored version of this ticket which has drifted in scope on the Feature tracker with the m...
methodmissing (Lourens Naudé)
02:32 AM Feature #16375: Right size regular expression compile buffers for literal regexes and on Regexp#freeze
@nobu will review the patch.
@methodmissing Could you file a ticket about performance improvement and/so refactoring into the Feature tracker?
mame (Yusuke Endoh)
02:43 AM Feature #16377: Regexp literals should be frozen
At the previous dev meeting, matz said that let's give it a try :-)
For the record: `Regexp.new` should continue to return unfrozen Regexp instance.
I'll review the pull request.
mame (Yusuke Endoh)
02:39 AM Feature #14240: warn four special variables: $; $, $/ $\
At the previous dev meeting, matz said that it should display a warning dynamically, i.e., not at the parsing time but when the variables are assigned. Variable aliases should be also warned. @jeremyevans0, could you please progress? mame (Yusuke Endoh)
02:35 AM Feature #16260: Symbol#to_proc behaves like lambda, but doesn't aknowledge it
At the previous meeting, matz said it should return true. Will do. mame (Yusuke Endoh)
02:24 AM Feature #16291: Introduce support for resize in rb_ary_freeze and prefer internal use of rb_ary_freeze and rb_str_freeze for String and Array types
This ticket was discussed at the previous dev meeting, and @nobu will review the patch and merge it if okay. mame (Yusuke Endoh)
01:58 AM Revision dced0e57 (git): * 2019-12-26 [ci skip]
git[bot]
01:55 AM Revision 537a1cd5 (git): 2.8.0 (tentative; to be 3.0.0) development has started.
matz (Yukihiro Matsumoto)
 

Also available in: Atom