From: hsbt@... Date: 2019-12-09T01:15:25+00:00 Subject: [ruby-core:96146] [Ruby master Feature#16363] Promote did_you_mean to default gem Issue #16363 has been updated by hsbt (Hiroshi SHIBATA). Backport deleted (2.5: UNKNOWN, 2.6: UNKNOWN) Assignee set to yuki24 (Yuki Nishijima) Tracker changed from Bug to Feature ---------------------------------------- Feature #16363: Promote did_you_mean to default gem https://bugs.ruby-lang.org/issues/16363#change-83015 * Author: yuki24 (Yuki Nishijima) * Status: Closed * Priority: Normal * Assignee: yuki24 (Yuki Nishijima) * Target version: ---------------------------------------- The `did_you_mean` gem has been a bundled gem for over 3 years now and I think it's time to promote it to a standard library. There are two main issues in the current structure: * A number of implementations, including [`optparse.rb`](https://github.com/ruby/ruby/blob/fb6a489af2765a3b56e301adf0019af6bbad6156/lib/optparse.rb#L1792), [rake](https://github.com/ruby/rake/blob/985abffa9954d21790831d9626d9c38b24a94199/lib/rake/task_manager.rb#L69-L78), and [rails](https://github.com/rails/rails/blob/98a57aa5f610bc66af31af409c72173cdeeb3c9e/railties/lib/rails/command/spellchecker.rb#L8), now take advantage of the gem's spell checker, but it's awkward to have to check the existence of the `DidYouMean::SpellChecker` constant. * there are some problems with regard to bundler + did_you_mean because of did_you_mean being a bundled gem. Since the vendored version of thor inside bundler and ruby itself explicitly requires did_you_mean, it can become difficult to load it when using Bundler.setup. See this issue: https://github.com/yuki24/did_you_mean/issues/117#issuecomment-482733159 for more details. I would like to promote the gem up to a standard library and make it always available, so we can always reliably require it whenever we want to. A patch could be found here: https://github.com/ruby/ruby/pull/2689 -- https://bugs.ruby-lang.org/ Unsubscribe: