Promote did_you_mean to default gem
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, rake, and rails, now take advantage of the gem's spell checker, but it's awkward to have to check the existence of the
- 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
Updated by vo.x (Vit Ondruch) about 3 years ago
I think we should go rather in opposite direction. Move all gems to "bundled" gems. Especially "did_you_mean" gem does not provide any benefit to end user of application and it should not be used in runtime. It is just perfectly fine when its functionality is optional.
BTW since the PR was merged, this ticket should have been closed.