Did You Mean Versions Save

The gem that has been saving people from typos since 2014

v1.2.0

6 years ago

This version 1.2.0 only has support for Ruby 2.5.0 and later as it uses new features that are only available in 2.5. All future patch releases under 1.2.* will only be compatible with Ruby 2.5.0 and later as well. Versions earlier than 1.1.* will still be maintained until Ruby 2.4 is deprecated. Any other versions below 1.0 will no longer be maintained.

New features

  • The KeyError name suggestion feature has been promoted to a stable feature and is available by default (acf59450dfb67eefae9b465ccc8029af46ae7dd0, https://bugs.ruby-lang.org/issues/12063)
  • Now suggests true, false or nil if a NameError occurs because of a typo in these names (#94, @styd)
  • New Formatter API: This provides a clean way to customize DidYouMean’s formatter without overriding the default formatter. Please refer to the built-in verbose formatter for how to use it

v1.1.2

6 years ago

This version is only compatible with Ruby 2.4 and later.

Bug Fixes

  • Fixed a bug where did_you_mean shows duplicate suggestions when the exception is raised multiple times (#84, c2e4008)

v1.1.1

6 years ago

This version has been yanked from Rubygems.org and is not available.

v1.0.3

6 years ago

This version is only compatible with Ruby 2.3 and later.

Bug Fixes

  • Fixed a bug where did_you_mean shows duplicate suggestions when the exception is raised multiple times (#84, c2e4008)

v1.1.0

7 years ago

The version 1.1.0 only has support for Ruby 2.4.0 and later. All patch releases under 1.1.* will only be compatible with Ruby 2.4.0 and later as well. Versions earlier than 1.0.* will still be maintained until Ruby 2.3 is deprecated. Any other versions below 1.0 will no longer be maintained.

New Features

  • Suggest a method name on a NameError from the Struct#[] or Struct#[]= method (https://github.com/yuki24/did_you_mean/pull/73):

    Struct.new(:foo).new[:fooo]
    # => NameError: no member 'fooo' in struct
    #    Did you mean?  foo
    #                   foo=
    
  • Added a public interface for the gem's spell checker:

    DidYouMean::SpellChecker.new(dictionary: ['email', 'fail', 'eval']).correct('meail')
    # => ['email']
    
  • Methods defined on nil by default are no longer suggested. Note that methods, defined after the gem is loaded, will still be suggested (e.g. ActiveSupport).

Bug Fixes

  • Fixed a bug where private method names were added to the dictionary when an argument was passed in to a public method. Use the NoMethodError#private_call? method instead (0a1b7612252055e583a373b473932f789381ca0f)

v1.0.2

7 years ago

This version is only compatible with Ruby 2.3 and later.

Features

  • Experimental features are officially available through require 'did_you_mean/experimental'

Deprecations

  • require 'did_you_mean/extra_features' is now deprecated in favor of require 'did_you_mean/experimental'

Internal Changes

  • Replaced the DidYouMean::SpellCheckable module with the DidYouMean::SpellChecker class. This is a slower implementation but close to the model explained in this talk, more reusable and possibly makes it easier to expose the class as a public interface.

v1.0.1

7 years ago

This version is only compatible with Ruby 2.3 and later.

Bug Fixes

  • Fixed a bug where the gem suggests what is actually typed by the user: 1c52c887c62b0921e799f94bcc4a846dc7cbc057
  • Fixed features that didn't work on JRuby 9.1.0.0: dc48dde1b2a8f05aab1fcf897e1cb3075a206f53, 4de23f880502c80c5f321371d39c08bb0fa34040, 00e305971060d150fae4817b5e895d6478b37579. The local variable name correction is still disabled. Also see: https://github.com/jruby/jruby/issues/3480

v1.0.0.beta1

8 years ago

Breaking Changes

  • Dropped support for MRIs older than 2.3, JRuby and Rubinus

Internal Changes

  • The C extension has been removed since the NameError#receiver method has become part of the MRI 2.3
  • The interception gem is no longer a dependency of this gem
  • Removed code that was needed to support multiple Ruby implementations

v1.0.0

8 years ago

This version is only compatible with Ruby 2.3 and later.

Features

Bug Fixes

  • Fixed a bug where the Jaro-Winkler implementation returns the wrong distance when 2 identical strings are given. fixes #58

Internal Changes

v1.0.0.rc1

8 years ago

Internal Chagens

  • No longer uses TracePoint API by default. fixes #55 and #56