All Versions
45
Latest Version
Avg Release Cycle
124 days
Latest Release
99 days ago

Changelog History
Page 1

  • v5.0.0 Changes

    July 09, 2021

    ๐Ÿ› Bug fixes

    • ๐Ÿš… Replace in?, method from ActiveSupport, with include? to prevent exception "undefined method in?" on non-Rails app. (#1405)

    ๐Ÿ”‹ Features

    • โž• Add support for Rails 6.1. No new Rails 6.1 features are supported, but only existing features that broke with the upgrade. (#1418)

    • โž• Add support for RVM (Ruby Version Manager) to setting up local environment. (#1424)

    • โž• Add support for alias in matcher define_enum. (#1419)

    • โž• Add support for Ruby 3.0. (#1406, #1427)

    ๐Ÿ‘Œ Improvements

    • โœ‚ Remove deprecated warnings emitted on Rails 6.1 in ActiveModel errors. (#1444)

    Backward-incompatible changes

    • โฌ‡๏ธ Drop support for Rails 4.2, 5.0 and 5.1 as well as Ruby 2.4 and 2.5 they've been end-of-lifed. The gem now supports Ruby 2.6+ and Rails 5.2+. (#1412, #1415, #1422, #1428, #1429)

    • Remove deprecated matchers: use_before_filter, use_after_filter, use_around_filter and allow_mass_assignment_of. (#1430, #1431)

  • v5.0.0.rc1 Changes

    June 04, 2021

    ๐Ÿ› Bug fixes

    • ๐Ÿš… Replace in?, method from ActiveSupport, with include? to prevent exception "undefined method in?" on non-Rails app. (#1405)

    ๐Ÿ”‹ Features

    • โž• Add support for Rails 6.1. No new Rails 6.1 features are supported, but only existing features that broke with the upgrade. (#1418)

    • โž• Add support for RVM (Ruby Version Manager) to setting up local environment. (#1424)

    • โž• Add support for alias in matcher define_enum. (#1419)

    • โž• Add support for Ruby 3.0. (#1406, #1427)

    Backward-incompatible changes

    • โฌ‡๏ธ Drop support for Rails 4.2, 5.0 and 5.1 as well as Ruby 2.4 and 2.5 they've been end-of-lifed. The gem now supports Ruby 2.6+ and Rails 5.2+. (#1412, #1415, #1422, #1428, #1429)

    • Remove deprecated matchers: use_before_filter, use_after_filter, use_around_filter and allow_mass_assignment_of. (#1430, #1431)

  • v4.5.1 Changes

    January 15, 2021

    ๐Ÿ› Bug fixes

    • โšก๏ธ Update belongs_to to work with composite primary keys. (#1396)
  • v4.5.0 Changes

    December 28, 2020

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fix bundle exec yard doc replacing pygments.rb with rouge to keep the documentation up to date. (#1343)
    • Fix have_db_column.with_options not raising an error when the user adds an invalid value. (#1358)
    • ๐Ÿ›  Fix default value of assossiation_matcher.validate option. It was returning false instead of true. (#1378)
    • Fix validate_absence_of failing for array columns. (#1383)

    ๐Ÿ”‹ Features

    • Add support for has_secure_password custom attributes. (#1356)

    ๐Ÿ‘Œ Improvements

    • Replace all links with http to https. (#1340)
    • Update the links for have_and_belong_to_many, have_many and have_one in the README to redirect the user to where the matcher description starts. (#1348)
    • โฌ‡๏ธ Drop git ls-files in gemspec to help downstreams maintenance, because they often need to build packages in an environment that does not have git. (#1354)
    • Add comment about no support of validate_uniqueness_of(:item).scoped_to(array). (#1355)
    • Improve error message for assossiation_matcher.with_foreign_key option. (#1376)
  • v4.4.1 Changes

    August 26, 2020

    ๐Ÿ› Bug fixes

    • โช Revert reorganization around autoloading introduced in 4.4.0 which prevented matchers from being loaded. (#1334)
  • v4.4.0 Changes

    August 25, 2020

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fix performance of allow_value so that it doesn't hang if the given value is really long. (#1290)

    • ๐Ÿ›  Fix have_many so that it is possible to test an association that has a scope that takes an argument. (#952, #992)

    • Update validate_uniqueness_of to use the public validators_on instead of the private _validators when reading validations off of a model. This enables shoulda-matchers to be used with the schema_validations gem. (#995)

    • Update validate_uniqueness_of to work with scopes that are time columns. (#1190)

    • Fix have_and_belong_to_many so that when using the join_table qualifier you can pass a symbol rather than a string. (#1323)

    ๐Ÿ”‹ Features

    • Add an ignoring_check_for_db_index qualifier to the have_secure_token matcher, since has_secure_token encourages use of an index but does not enforce it. (#1278)

    • Add allow_blank to validate_length_of to match other validation matchers. (#725, #1318)

    • Add new matcher have_implicit_order_column which can be used to test the implicit_order_column setting for ActiveRecord models under Rails 6+. (#1243)

    • Add a new is_other_than qualifier to validate_numericality_of to be able to test the numericality validation's :other_than option. (#1282)

    • Add a new have_one_attached and have_many_attached matchers for testing the new model-level ActiveStorage macros in Rails 6. (#1102)

    ๐Ÿ‘Œ Improvements

    • โšก๏ธ Update have_many when used against a :through association so that it fails if the inverse model does not have a belongs_to association. (#646, #723, c0a1578)

    • โž• Add Ruby 2.7 to test matrix and default development Ruby. (#1310)

    • โœ‚ Remove warnings emitted on Ruby 2.7 in word_wrap. (#1314)

    • โœ‚ Remove warnings emitted on Ruby 2.7 in Doublespeak. (#1328)

    • Clean up requires within the code by converting them to autoloads. (#1320)

  • v4.3.0 Changes

    February 18, 2020

    ๐Ÿ”‹ Features

    • Add have_rich_text matcher for ActionText. (#1263)

    ๐Ÿ‘Œ Improvements

    • Use range on validate_exclusion_of#in_range documentation. (#1273)

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fix missing attribute:: scope 1 intermittent test. (#1274)
  • v4.2.0 Changes

    January 09, 2020

    ๐Ÿ”‹ Features

    • โž• Add support for optional: false in belongs_to associations. (#1237)
    • โž• Add support for associations with inverse_of: false and non-standard foreign key (#1106)

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fix typos in documentation of allow_values (#1241)
    • ๐Ÿ›  Fix appraisal command in CONTRIBUTING.md file (#1253)

    ๐Ÿ‘Œ Improvements

    • โœ‚ Remove minitest-reporters dependency ([#1251])
    • โšก๏ธ Development dependency updates
  • v4.1.2 Changes

    August 01, 2019

    ๐Ÿ› Bug fixes

    • Fix another regression with validate_presence_of so that it works against an attribute that has been decorated with serialize using a custom serializer class. (#1236)
  • v4.1.1 Changes

    July 16, 2019

    ๐Ÿ› Bug fixes

    • Patch some backward-incompatible changes to validate_presence_of that were made in the last version. As of 4.1.0 the presence matcher now checks to ensure that empty string will cause the record to be invalid (in addition to nil, which it was already checking against). However, this check was being performed even if the attribute or column the presence matcher is being run against didn't support being set to an empty string. This releases fixes this. (#1222, #1224, #1231)