Activity
From 01/31/2020 to 02/06/2020
02/06/2020
-
11:43 PM Feature #16610: net/imap: support IMAP4 ID extension (RFC2971)
- Fixed some bugs in the original patch. Added a test for the request formatting.
-
09:24 PM Feature #13067: TrueClass,FalseClass to provide `===` to match truthy/falsy values.
- Although I like the minimalism and cleverness of `:itself.to_proc`, I don't think it reads as nicely. It also does not `inspect` nicely. For example,
```ruby
raise "value does not match #{pattern.inspect}" unless pattern === value
... -
08:00 PM Feature #12624: !== (other)
- Recently, I had a use case for this. I was writing an assertion helper method which accepts a comparison operator (e.g. `:==`, `:!=`, `:===`, etc) to `send` to the expected value. For my use case, having `!==` would be nice for a few r...
-
07:47 PM Bug #16612: Enumerator::ArithmeticSequence#last with float range produces incorrect value
- I'm unsure if the bug is in `last` or in `each`.
```ruby
# last seems correct
[7] pry(main)> (0.24901079128550474r + 34.00010700985213r * 10).to_f
=> 340.2500808898068
[8] pry(main)> 340.25008088980684
=> 340.25008088980684
# ... -
07:26 PM Bug #16612 (Closed): Enumerator::ArithmeticSequence#last with float range produces incorrect value
- **Steps to reproduce**
``` shell
% ruby -e 'p ((0.24901079128550474)...(340.25008088980684)).step(34.00010700985213).last'
340.2500808898068
```
**Expected result**
Last value should match the value produced by the following:
... -
07:28 PM Feature #12047 (Closed): Set#=== (aliased to include?)
-
07:23 PM Feature #12047: Set#=== (aliased to include?)
- This was added in Ruby 2.5, so I think this issue can be closed.
-
02:22 PM Bug #14909: Method call with object that has to_hash method crashes (method with splat and keyword arguments)
- AlexWayfer (Alexander Popov) wrote in #note-7:
> There are problems with Sequel Models, which have `#to_hash` method (implicit conversion), and Memery gem, which defines methods with `*args, **kwargs, &block` (`**kwargs` was added after... -
01:25 PM Bug #14909: Method call with object that has to_hash method crashes (method with splat and keyword arguments)
- There are problems with Sequel Models, which have `#to_hash` method (implicit conversion), and Memery gem, which defines methods with `*args, **kwargs, &block` (`**kwargs` was added after warning from Ruby 2.7).
So, Sequel Models as arg... -
01:07 PM Revision 8c670803 (git): Revert "[rubygems/rubygems] Fix require issue with file extension priority"
- This reverts commit d767da428c28b7b9fec56b383bb32f6f76c6ad26.
It fails with spec/ruby/core/kernel/require_spec.rb:5 -
12:57 PM Revision bd0a02d1 (git): Revert to remove the query command of rubygems.
- The original commit was https://github.com/rubygems/rubygems/pull/3119
-
12:57 PM Revision d767da42 (git): [rubygems/rubygems] Fix require issue with file extension priority
- If `require "a"` is run when two folders have been specified in the -I
option including a "a.rb" file and a "a.so" file respectively, the ruby
spec says that the ".rb" file should always be preferred. However, the
logic we added in https... -
12:57 PM Revision c6b5881e (git): [rubygems/rubygems] Make non "test_" method private
- https://github.com/rubygems/rubygems/commit/912d141a35
-
12:57 PM Revision 054d99d9 (git): [rubygems/rubygems] Allow releasing with a rubygems pre version
- This condition is too restrictive in my opinion. If a user has a pre
version of rubygems installed, she should be fully responsible for it,
and we shouldn't restrict any functionality.
Also, why is a new prerelease disallowed but an old... -
12:20 PM Revision e323f50a (git): Fix readline-ext sync
-
11:53 AM Revision 5fac54a5 (git): Fixed the output from separated test in parallel test
- Redirect the output of separated child process to
`MiniTest::Unit.output`. -
11:52 AM Revision f1c230f1 (git): Add separated assertion count
-
06:42 AM Revision 739fdb7f (git): [ruby/spec] Don't care about return values
- RDoc says nothing about them. Added an example that
ConditionVariable#wait can be woken up by
ConditionVariable#signal, instead. -
06:42 AM Revision 32adae43 (git): [ruby/spec] Just test that sleep completes
-
05:50 AM Revision 3d83e641 (git): [ruby/spec] Check by Thread#stop?
- Check if threads are stopped by Thread#stop? instead of the status
name. -
02:46 AM Revision 34f8e75f (git): rb_vm_t::postponed_job_index shall be rb_atomic_t
- Pointer to this field is passed to ATOMIC_CAS. We have to use
rb_atomic_t for that purpose. -
02:46 AM Revision ce4ea956 (git): function pointers are not void*
- The same as 8427fca49bd85205f5a8766292dd893f003c0e48.
-
02:46 AM Revision b223a78a (git): this ternary operator is an undefined behaviour
- Let me quote ISO/IEC 9899:2018 section 6.5.15:
> Constraints
> ...
(snip)
Here, `*option` is a const struct rb_compile_option_struct. OTOH
`COMPILE_OPTION_DEFAULT` is a struct rb_compile_option_struct, without
const. These two are _n... -
02:46 AM Revision 34fd7241 (git): fine-grained #ifdef guard for Sparc systems
- There are cases when sizeof(int) == sizeof(long) == sizeof(size_t). On
such cases however int and long are incompatible types in theory. We
should not assume typedef long size_t, because on Solaris size_t is
actually a typedef of int.
... -
02:46 AM Revision 72bbf60f (git): do not assume GCC for __builtin_setjmp
- Namely recent Sun C compiler has this function, and is not a GCC.
Meanwhile the code without RUBY_JMP_BUF assumes GCC. We have to define
the macro when we detect __builtin_setjmp for non-GCC compilers. -
02:46 AM Revision 3b69552a (git): add predefined macros for Doxygen
- Predefined macros are practices not very well recommended, but can be
better than having no documents at all. Without those predefined
macros, Doxygen confused for instace PUREFUNC(int foo()) to be a
declaration of PUREFUNC, not foo. -
02:46 AM Revision 7c20a2c8 (git): emacs mode addition
- Now that we have C++ header files, why not let their indents follow our
way. - 01:38 AM Revision d16f4220 (git): * 2020-02-06 [ci skip]
-
01:38 AM Revision 26ffd6e4 (git): Increase the frozen_strings table initial size
- It was set to 1000 in a4a2b9be7a55bb61d17cf9673ed0d2a93bb52d31.
However on ruby-2.7.0p0, there are much more than 1k frozen string right after boot:
```
$ ruby -robjspace -e 'p ObjectSpace.each_object(String).select { |s| s.frozen? && ...
02/05/2020
-
10:31 PM Feature #16597: missing poll()
- There is some issue with TCP sockets:
LD_LIBRARY_PATH=. ./ruby -I. -Ilib -I.ext/common -I.ext/x86_64-linux/ tcp_test.rb
`select: [[:@sock], [:@sock], []]
poll: [[:@sock], [:@sock], [], []]
select: [[], [:@sock], []]
poll: [[], [:@sock... -
10:08 PM Feature #16597: missing poll()
- I use this with local (UNIX) sockets but did not backport the current patchset to my production ruby version yet. I did not test TCP sockets.
-
02:41 AM Feature #16597: missing poll()
- michals (Michal Suchánek) wrote in #note-8:
> This one, and it does not work. There is another place that needs to be patched.
Is there a test for socket?
I have interest in TCP. -
09:08 PM Feature #16611 (Closed): net/smtp: Add SNI support
- It looks like SNI support has already been added to FTP, HTTP, IMAP, and POP. I think that SMTP is the only `Net::Protocol` class remaining.
Since it's used by all of the `Net::Protocol` classes, does it make more sense to move this i... -
08:48 PM Feature #16610 (Closed): net/imap: support IMAP4 ID extension (RFC2971)
- IMAP servers often strongly recommend clients to report their ID, for
usage statistics and bug reports. Clients may also find server IDs
useful for the same reasons.
Although the RFC requires otherwise, some servers do make it a sof... -
04:28 PM Misc #16360: Enabling IBM PowerPC/Z cases in Travis CI
- https://bugs.ruby-lang.org/issues/16360#note-7
I am still debugging for the "stack level too deep (SystemStackError)" issue that happens on only ppc64le.
When I was debugging with following file,
```
$ cat spec/ruby/library/soc... -
02:17 PM Bug #16609 (Closed): `#sample` not working with blocks properly
- `#sample` do not take blocks. They are just ignored. It's one of the limitations of Ruby language.
Matz.
-
01:02 PM Bug #16609 (Closed): `#sample` not working with blocks properly
- This may be a bug, it may be an uncoded/partially working feature. Running `#sample` with a block doesn't complain or throw an error; The following code runs, but doesn't execute correctly.
```
a = [1, 2, 3, 4, 5, 6]
a.sample(&:even... -
09:16 AM Bug #16608 (Closed): ConditionVariable#wait should return false when timeout exceeded
- The following program prints `false` on Ruby 1.8, but `true` on Ruby 1.9 or later.
```
require "monitor"
m = Monitor.new
c = m.new_cond
m.synchronize { p c.wait(0.1) }
```
However, it's not critical because most programs check... - 12:42 AM Revision 940cd3b9 (git): * 2020-02-05 [ci skip]
-
12:39 AM Revision 0226d72e (git): Fixed the output from separated test in parallel test
- To output to the STDOUT of the parent process according to the
parallel test protocol, should send to the `MiniTest::Unit.output`
instead of each own STDOUT. -
12:30 AM Revision 6fe44576 (git): Fixed FD leaks
02/04/2020
-
11:53 PM Revision c6cd4206 (git): Get rid of nested string interpolations to be editor-friendly
-
06:51 PM Feature #16597: missing poll()
- Updated patchset. Passes basic test but not TestParallel. For some reason it segfaults.
LD_LIBRARY_PATH=. ./ruby -I. -Ilib -I.ext/common -I.ext/x86_64-linux/ test.rb
`select: [[:@inpipe, :@outpipe, :@errpipe], [:@inpipe, :@outpipe, :@... -
04:05 PM Feature #16597: missing poll()
- This one, and it does not work. There is another place that needs to be patched.
LD_LIBRARY_PATH=. ./ruby -I. -Ilib -I.ext/common -I.ext/x86_64-linux/ test.rb
`select: [[:@inpipe, :@outpipe, :@errpipe], [:@inpipe], []]
poll: [[:@inpip... -
12:26 AM Feature #16597: missing poll()
- Is there a test?
-
12:51 PM Revision 390a9d3b (git): just use STDOUT
-
11:56 AM Revision 3c7a09ec (git): Add call-seq to Pathname#open from File.open
- before:
```
open(p1 = v1, p2 = v2, p3 = v3)
``` -
11:54 AM Revision 9b9a621a (git): On Windows it cannot receive fd except 0..2
-
10:36 AM Misc #16561: DevelopersMeeting20200227Japan
- * [Feature #15722] `Kernel#case?` (sawa)
* `"foo".case?(Symbol, String) # => true` -
10:30 AM Revision 0529fead (git): assert_separately uses their own pipe instead of stdout
-
08:09 AM Bug #16607 (Closed): retried require does not raise Exception even if a library has SyntaxError
- Applied in changeset commit:git|7d6903dc476f982e7b432adbeef3a3d9372a309f.
----------
Add the loaded feature after no exception raised
Retrying after rescued `require` should try to load the same
library again. [Bug #16607] -
06:18 AM Bug #16607 (Closed): retried require does not raise Exception even if a library has SyntaxError
- From shell:
```
% echo "class C" > c.rb
% ruby -e 'begin p require "./c" ; rescue SyntaxError; end; p require "./c"; C'
```
**expected result:** SyntaxError
**2.7 and current master output:**
```
false
Traceback (most rece... -
07:20 AM Misc #16515: one of authoritative name server of ruby-lang.org "pichu.netlab.jp" not responding DNS query
- Also, support.netlab.jp is not responding IPv6 DNS query.
```
% drill support.netlab.jp AAAA
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 45087
;; flags: qr rd ra ; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTIO... -
07:10 AM Revision 7d6903dc (git): Add the loaded feature after no exception raised
- Retrying after rescued `require` should try to load the same
library again. [Bug #16607] -
05:41 AM Revision 9cdc964d (git): Do not warn CR inside string literal
-
01:09 AM Bug #16606 (Closed): SimpleDelegator no longer call respond_to? on the delegated object if it's a BasicObject
02/03/2020
- 11:24 PM Revision 7a51d979 (git): Fix inaccuracy in encoding tests
- These tests assume
Encoding.find('locale') == Encoding.find('external')
and fail if they are distinct. - 11:04 PM Revision 7c165bd7 (git): Fix linkage of popen_deadlock test
- DEBUG: BUILDSTDERR: /usr/bin/ld: infinite_loop_dlsym.o: in function `native_loop_dlsym':
DEBUG: BUILDSTDERR: /builddir/build/BUILD/ruby-2.7.0/ext/-test-/popen_deadlock/infinite_loop_dlsym.c:16: undefined reference to `dlsym'
DEBUG: BUILD... -
10:25 PM Feature #16597: missing poll()
- Additional cleanup patch that removes the extra argument from select() return value and superfluous argument.
-
08:24 PM Feature #16597: missing poll()
- Reading is generally covered with select(). You call select() and the fd appears as readable. If there is an error you get it on read(). It is write() that does not have sane semantic without poll().
-
08:14 PM Feature #16597: missing poll()
- Attaching RFC patchset.
It is not awesome but it at least does not crash and burn.
Tests pass which shows they could use some refinement. -
05:01 PM Feature #16605: Support argument delegation (...) with blocks/define_method
- It may be that this is a new suggestion, at the least I don't recall a similar proposal
although perhaps others thought about it before, since it may make sense (e. g. if
you wish to dynamically add methods). -
04:16 PM Feature #16605 (Rejected): Support argument delegation (...) with blocks/define_method
- (I couldn't find anything on this in the bug tracker or other official sources, hope it's not a duplicate since it's kind of tricky to search for it.)
The following doesn't work on Ruby 2.7:
```
define_method(:delegate) do |...| ... -
04:56 PM Bug #16606 (Closed): SimpleDelegator no longer call respond_to? on the delegated object if it's a BasicObject
- The regression was introduced by https://bugs.ruby-lang.org/issues/16127
In short on 2.6 `SimpleDelegator` would always call `respond_to?` on the delegated object to figure if it should delegate or error.
But on 2.7 it doesn't do s... - 04:42 PM Revision a4fca28b (git): Fix description of Encoding.default_(in|ex)ternal
- Data written to files is not transcoded per default, but only
when default_internal is set.
The default for default_internal is nil and doesn't depend on the
source file encoding. - 04:16 PM Revision e7739b60 (git): * 2020-02-04 [ci skip]
-
04:16 PM Revision f2552216 (git): Fix SimpleDelegator respond_to? regression
- In 2.6, SimpleDelegator would always use the target `respond_to?`
In 2.7.0 it doesn't if the target does not inherit from Object.
This breaks compatibility for delegated objects that inherit
from BasicObject and redefine `respond_to?`. -
02:12 PM Feature #16604 (Closed): Set default for Encoding.default_external to UTF-8 on Windows
- This issue is related to https://bugs.ruby-lang.org/issues/13488 where we already discussed the topic and postponed the change for ruby-3. A patch is here: https://github.com/ruby/ruby/pull/2877
## What should be changed?
Currently... -
08:55 AM Bug #16603 (Closed): Passing number or symbol to kwargs splat causes segmentation fualt
- Applied in changeset commit:git|11963da9e8e98821860fbb0c0f2adc118860c814.
----------
Check type of empty keyword [Bug #16603]
Co-authored-by: Yusuke Endoh <mame@ruby-lang.org> -
08:48 AM Bug #16603: Passing number or symbol to kwargs splat causes segmentation fualt
- I created a patch for this bug.
https://github.com/ruby/ruby/pull/2874 -
07:53 AM Bug #16603 (Closed): Passing number or symbol to kwargs splat causes segmentation fualt
- Passing 1 or :a as a kwargs splat to a c-lang defined method causes segmentation fault. (It was a TypeError in ruby 2.6.0)
~~~ruby
p **1
p **:a
rand **1
~~~
Passing it to an user-defined method won't cause segv, but it was a Type... -
08:54 AM Revision 11963da9 (git): Check type of empty keyword [Bug #16603]
- Co-authored-by: Yusuke Endoh <mame@ruby-lang.org>
-
07:57 AM Revision a635c93f (git): support MJIT with debug option.
- VM_CHECK_MODE > 0 with optflags=-O0 can not run JIT tests because
of link problems. This patch fix them. -
07:17 AM Misc #16515 (Closed): one of authoritative name server of ruby-lang.org "pichu.netlab.jp" not responding DNS query
- Sorry for the delay.
We have changed the secondary DNS server of ruby-lang.org to ns.tokyo.netlab.jp.
-
07:15 AM Feature #8661: Add option to print backtrace in reverse order (stack frames first and error last)
- I still hate the "reversed" order of backtraces. I often use `p *caller` and `p *$!.backtrace` for debugging, whose order is "normal" (non-reversed). Please revert the change at Ruby 3.0.
-
05:19 AM Revision db69c509 (git): Parenthesized macro arguments
-
04:07 AM Revision 0ab7f2f2 (git): Make `rb_scan_args_kw` inline too
-
03:48 AM Revision 48c851f8 (git): Moved runtime assignemnts
- Separate assignemnts of dynamically given runtime values in
`rb_scan_args_assign` from parsing statically given format in
`rb_scan_args_parse`. -
02:51 AM Revision 0fa43b0c (git): test/rubygems/test_gem_remote_fetcher.rb: Remove a duplicated test
- https://rubyci.org/logs/rubyci.s3.amazonaws.com/ubuntu1604/ruby-master/log/20200203T003005Z.log.html.gz
```
/home/hsbt/chkbuild/tmp/build/20200203T003005Z/ruby/test/rubygems/test_gem_remote_fetcher.rb:485: warning: method redefined; disc... - 01:27 AM Revision d9552cbd (git): * 2020-02-03 [ci skip]
02/02/2020
-
11:44 PM Revision 9a446fd7 (git): `struct rb_scan_args_t::vargs` is never used
-
08:31 PM Feature #16511: Staged warnings and better compatibility for keyword arguments in 2.7.1
- Dan0042 (Daniel DeLorme) wrote in #note-14:
> In 2.7 this results in a warning depending on `some_condition`, that's really not simple to understand. :-/
I'd guess it's fairly uncommon to call a method not accepting keyword argument... -
02:09 PM Revision fae53725 (git): Removed no longer used variable `last_hash`
- 1. By substituting `n_var` with its initializer, `0 < n_var` is
equivalent to `argc > argi + n_trail`.
2. As `argi` is non-negative, so `argi + n_trail >= n_trail`, and
the above expression is equivalent to `argc > n_trail`.
3. The... -
11:05 AM Feature #16602: Add support for `frozen_string_literals` to eval.
- I think I found a good solution for that case in `rack`:
https://github.com/rack/rack/pull/1544#issuecomment-581123830 -
04:40 AM Feature #16602 (Rejected): Add support for `frozen_string_literals` to eval.
-
04:39 AM Feature #16602: Add support for `frozen_string_literals` to eval.
- @sawa your argument convince me that we don't need this feature then. But it's not always the case that "You are adding specification to a piece of code that did not have such specification."
Following that we reject this feature, I'm a... -
02:10 AM Bug #16599 (Closed): did_you_mean is not activated for NameError and KeyError
- As @zverok 's analysis shows, did_you_mean does activate for NameError and KeyError if it can find suggestions.
As for not suggesting `for` for `foo` in `NameError` but doing so for `NoMethodError`, I can't tell if that is a bug in di...
02/01/2020
-
10:09 PM Feature #16602: Add support for `frozen_string_literals` to eval.
- > Basically, it's back to the discussion of enabling frozen_string_literal by default.
As far as I know it is not so much a discussion (matz decided to enable it after
all) - the primary question was more when it would become the def... -
02:42 PM Feature #16602: Add support for `frozen_string_literals` to eval.
- ioquatix (Samuel Williams) wrote in #note-2:
> Requires modification of the string which is sometimes messy.
How is it messy? Isn't it as simple as @byroot showed?
> ...
Just using the encoding of the String seems much better for ... -
12:34 PM Feature #16602: Add support for `frozen_string_literals` to eval.
- ioquatix (Samuel Williams) wrote in #note-2:
> Yes, it does, but it:
> ...
It requires modification because it is indeed modification: You are adding specification to a piece of code that did not have such specification.
> I think any o... -
11:41 AM Feature #16602: Add support for `frozen_string_literals` to eval.
- Yes, it does, but it:
- Requires modification of the string which is sometimes messy.
- Requires modification of line numbers if you want to do it in a way which is not visible to the user.
I think any option that can be provided ... -
09:52 AM Feature #16602: Add support for `frozen_string_literals` to eval.
- `eval("# frozen_string_literal: true\n ...")` works fine.
e.g. https://github.com/rails/rails/pull/38355/files#diff-e321ca5b1217071d1504c1d2cf37cc32R378
-
07:29 AM Feature #16602 (Rejected): Add support for `frozen_string_literals` to eval.
- Would it make sense for `eval(..., frozen_string_literal: true)` to exist?
- 07:56 PM Revision f5806eb2 (git): * 2020-02-02 [ci skip]
-
06:28 PM Revision 06c37fa5 (git): [ruby/reline] Bypass cursor down when a char is rendered at eol on Windows
- A newline is automatically inserted if a character is rendered at eol on
Windows command prompt.
https://github.com/ruby/reline/commit/4bfea07e4a -
06:28 PM Revision 16d4774d (git): [ruby/reline] Fix Reline::Windows#scroll_down
- I mistook Right and Bottom.
https://github.com/ruby/reline/commit/8be401c5f5 -
06:25 PM Revision ac1f4fa4 (git): [ruby/irb] Exclude useless files from RDoc
- https://github.com/ruby/irb/commit/8f1ab2400c
-
06:22 PM Revision 7e2ed7d1 (git): [ruby/irb] Add a new easter egg: dancing ruby
- https://github.com/ruby/irb/commit/e37dc7e58e
-
06:22 PM Revision 37e0f55c (git): [ruby/irb] Reformat LICENSE.txt [ci skip]
- To be valid as an ordered list.
https://github.com/ruby/irb/commit/078205e57d -
02:26 PM Revision b68fc080 (git): Indent ChangeLog contents [ci skip]
- Separate each entries more obviously as `page-delimiter' works
fine. -
02:25 PM Revision a2e215fe (git): Removed useless shebang and executable bit [ci skip]
-
02:10 PM Revision ab358764 (git): Explicitly set the encoding of ChangeLog file to UTF-8 [ci skip]
- 02:06 PM Revision 7f6bd6bb (git): fix rdoc formatting [ci skip]
-
10:12 AM Feature #16601: Let `nil.to_a` and `nil.to_h` return a fixed instance
- I'm not sure if `nil.to_a` and `nil.to_h` are actually frequent sources of allocations, but I agree with the general premise.
When profiling Ruby applications, it's frequent to see 30% of the time being spent in GC, which makes me think... -
08:03 AM Revision a7e1e310 (git): [ruby/irb] Exclude useless files from RDoc
-
05:02 AM Revision 7cff2f45 (git): fix delete unnecessary return
- Was my mistake to put return here.
-
02:31 AM Revision 563f177a (git): UnpackedInstaller on rbinstall.rb is inherited from Gem::Installer.
- It also needs to explicitly convert from String to Gem::Package
with initialization. -
02:23 AM Revision f8df531b (git): Gem::Installer.new(String, options) is obsoleted. Explicitly converted
- to Gem::Package from String instance.
-
02:14 AM Revision 600a715c (git): Merge the current master branch of rubygems/rubygems.
- Just started to develop RubyGems 3.2.0.
01/31/2020
-
05:52 PM Bug #16519: pp [Hash.ruby2_keywords_hash({})] shows `[nil]`
- jeremyevans0 (Jeremy Evans) wrote in #note-12:
> Having a double splatted empty hash be removed is necessary for delegation to work correctly
Except that, no, it's _not_ necessary, and I have the proof of concept to prove it.
> ..... -
02:50 PM Bug #16519: pp [Hash.ruby2_keywords_hash({})] shows `[nil]`
- Dan0042 (Daniel DeLorme) wrote in #note-11:
> But here we're talking about the keyword-to-positional compatibility behavior, the one that you championed in #14183. Since this is for the sake of compatibility, it doesn't make sense to in... -
02:08 PM Bug #16519: pp [Hash.ruby2_keywords_hash({})] shows `[nil]`
- Eregon (Benoit Daloze) wrote in #note-5:
> * When the keyword Hash is created out of nothing, i.e., by `def m(**hash_created_by_double_splat)` and `m` was not passed any keyword argument, we could remember that, and when calling another ... -
03:38 PM Revision adc30313 (git): README*.md: `defines.h` moved [ci skip]
- at 2b592580bf65040373b55ff2ccc3b59a0a231a18
-
03:30 PM Feature #16511: Staged warnings and better compatibility for keyword arguments in 2.7.1
- @matz,
I removed the subclassing part that you were negative about, and I believe I've sufficiently proven many clear _real-world_ benefits.
The only "downside" is that some things that could be fixed now will be fixed later instead; p... - 03:05 PM Revision 4d43cc1a (git): * 2020-02-01 [ci skip]
-
03:04 PM Revision fac4385f (git): compile.c: remove a unused variable
-
02:29 PM Feature #16601: Let `nil.to_a` and `nil.to_h` return a fixed instance
- I somewhat agree with the explanation, so I think the suggestion in itself is fine
as such.
I believe there may be a language design consideration, though, e. g. whether matz
thinks that this makes sense from a language-design point... -
10:11 AM Feature #16601 (Open): Let `nil.to_a` and `nil.to_h` return a fixed instance
- Now, `nil.to_s` returns a fixed instance:
```ruby
nil.to_s.object_id # => 440
nil.to_s.object_id # => 440
nil.to_s.object_id # => 440
...
```
This is useful when we have some variable `foo` which may be either `nil` or a strin... -
08:12 AM Revision 05229cef (git): Improve `String#slice!` performance
- Instead of searching twice to extract and to delete, extract and
delete the found position at the first search.
This makes faster nearly twice, for regexps and strings.
| |compare-ruby|built-ruby|
|:-------------|---------... -
05:24 AM Revision 0dd6f020 (git): Make `empty_string` a fake string
-
04:10 AM Revision f31dc8a4 (git): a bit terse Doxygen comments [ci skip]
- Creative use of `@copydoc` Doxygen command and abusing its half-broken C
parser let us delete some lines of documentations, while preserving
document coverages. -
04:01 AM Revision cdd75d4e (git): support C++ std::nullptr_t
- C++ keyword `nullptr` represents a null pointer (note also that NULL is
an integer in C++ due to its design flaw). Its type is `std::nullptr_t`,
defined in <cstddef> standard header. Why not support it when the
backend implementation c... -
03:52 AM Revision 4942adf6 (git): Return the makefile content
- Block for `create_makefile` is expected to return the content of
the makefile. -
03:13 AM Revision 0c4bbb46 (git): Removed type-punning pointer casts around `st_data_t`
-
12:22 AM Revision 52dc0632 (git): Avoid allocating a temporary empty string in String#slice!