Issue #16427 has been updated by mame (Yusuke Endoh).

Status changed from Open to Rejected

It does not make sense at all.

In Ruby 2.6, did_you_mean was a bundled gem, which may be uninstalled by a user.  As it is not always able to require, gem_prelude.rb did `require "did_you_mean" rescue LoadError`.
In Ruby 2.7, did_you_mean was a default gem, which cannot be uninstalled by a user.  So "we can always reliably require it whenever we want to".  `rescue LoadError` is no longer needed, and removed at 0fef526606c72e7d2a3c83aebd9204da34016d96.

Of course, if you delete "lib/did_you_mean.rb", ruby does not work.  But it's just like saying that "ruby cannot start when I remove lib/rubygems.rb".

----------------------------------------
Bug #16427: Revert did_you_mean promotion to default gem.
https://bugs.ruby-lang.org/issues/16427#change-83203

* Author: vo.x (Vit Ondruch)
* Status: Rejected
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: ruby 2.7.0dev (2019-12-10 master af11efd377) [x86_64-linux]
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
One of the points made in #16363 was:

> so we can always reliably require it whenever we want to.

That is not true anymore, because did_you_mean is always required when RubyGems are enabled since [1]:

~~~
$ ruby -e 'puts $LOADED_FEATURES' | grep did
~~~

Removing all traces of did_you_mean from my system only results in:

~~~
$ ruby -e 'puts $LOADED_FEATURES' | grep did
Traceback (most recent call last):
	2: from <internal:gem_prelude>:2:in `<internal:gem_prelude>'
	1: from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:92:in `require'
/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:92:in `require': cannot load such file -- did_you_mean (LoadError)
~~~

just confirming what I said above.

IMO, did_you_mean gem might be useful for development, but should not be required for runtime at all. On one hand there are taken steps to improve Ruby speed, but this is going contrary to that goal.

[1]: https://github.com/ruby/ruby/commit/0fef526606c72e7d2a3c83aebd9204da34016d96



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>