From: mail@... Date: 2019-11-24T00:27:44+00:00 Subject: [ruby-core:95917] [Ruby master Bug#16363] Promote did_you_mean to default gem Issue #16363 has been reported by yuki24 (Yuki Nishijima). ---------------------------------------- Bug #16363: Promote did_you_mean to default gem https://bugs.ruby-lang.org/issues/16363 * Author: yuki24 (Yuki Nishijima) * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: * Backport: 2.5: UNKNOWN, 2.6: UNKNOWN ---------------------------------------- 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: