All Versions
20
Latest Version
Avg Release Cycle
-
Latest Release
-

Changelog History
Page 1

  • v1.10.0 Changes

    • New feature: incorrect_length_validation detector can identify text-column length mismatches between tables and models (suggested by fatkodima).
    • ๐Ÿ†• New feature: each detector can be enabled or disabled globally via the configuration file.
    • Enhancement: missing_non_null_constraints and missing_presence_validation recognized NOT NULL check constraints (contributed by fatkodima).
    • Enhancement: missing_unique_index is aware of has_one associations and recommends creating an index on the corresponding foreign key (contributed by fatkodima).
    • Bug fix: missing_unique_indexes can be satisfied by creating an index on a sublist of scope + column. Previously, it'd not accept such sublists even though they're enough to guarantee uniqueness (contributed by fatkodima).
    • Bug fix: fix missing_unique_indexes crashes on function indexes (contributed by fatkodima).
    • Bug fix: short_primary_key_type no longer complains about UUID primary keys (contributed by fatkodima).
    • ๐Ÿ› Bug fix: extraneous_indexes was made aware of non-standard primary key names and partial indexes (contributed by fatkodima).
    • ๐Ÿ› Bug fix: extraneous_indexes properly recognizes smaller indexes to be enough to guarantee uniqueness. Previously, it'd skip some smaller indexes and ask for a larger index to be created (contributed by fatkodima).
    • โœ‚ Bug fix: unindexed_deleted_at correctly works on partial indexes intended to cover deleted columns. It no longer asks to create a contradictory condition (IS NULL AND IS NOT NULL) in those cases (contributed by fatkodima).
    • Bug fix: incorrect_dependent_option works correctly on polymorphic associations.
    • ๐Ÿ› Bug fix: recognize the PostGIS adapter as PostgreSQL (contributed by fatkodima).
    • Bug fix: index generators use index_name_length (defined by Active Record) to ensure index names aren't too long (contributed by fatkodima).
    • ๐Ÿ‘ท Tested against Ruby 3.1 via CI (contributed by Peter Goldstein).
    • ๐Ÿ“š Documentation fixes (contributed by Alistair McKinnell and Kaleb Lape).
  • v1.9.0 Changes

    • ๐Ÿ†• New feature: support for project-specific configuration and Continuous Integration usage.
    • New feature: mismatched_foreign_key_type can detect foreign keys using a different column type than the column they're referencing (contributed by fatkodima).
    • New feature: short_primary_key_type can detect primary keys that use short integer types and pose a risk of running out of IDs (contributed by fatkodima).
    • Enhancement: missing_non_null_constraint can now properly handle both STI and non-STI inheritance hierarchies (contributed by Greg Navis and fatkodima).
    • Enhancement: incorrect_dependency_option now supports belongs_to associations (contributed by fatkodima).
    • โœจ Enhancement: more built-in Rails tables are ignored by default.
    • ๐Ÿ› Bug fix: make extraneous_indexes take index options into account when comparing them for equivalence (contributed by fatkodima).
    • Bug fix: add_indexes_generator uses the correct migration version.
    • Bug fix: add_indexes_generattor truncates long index names (contributed by Dusan Orlovic).
    • Bug fix: missing_unique_indexes reports tables instead of indexes - it didn't make sense to talk about indexes on models.
  • v1.8.0 Changes

    • New feature: incorrect_dependency_option can detect cases sub-optimal or dangerous use of :delete_all or :destroy on associations (thanks to Dusan Orlovic for the contribution).
    • ๐Ÿ†• New feature: all runs all tasks and exits with a zero status if there were no errors.
    • ๐Ÿ†• New feature: support for MySQL!
    • ๐Ÿ› Bug fix: add_index in Rails 6 now correctly adds version numbers to migrations (thanks to Tatsuya Hoshino for the fix).
    • โœ‚ Removed unnecessary dependencies on railties and activesupport.
  • v1.7.2 Changes

    • All rake tasks added by active_record_doctor have a description so that they are now shown by rake -T.
    • Bug fix: incorrect_boolean_presence_validation, missing_non_null_constraint and missing_presence_validation skip models whose underlying tables don't exist (thanks to rhymes for the fix).
    • Bug fix: fix a bug in incorrect_boolean_presence_validation that caused exceptions (thanks to Eito Katagiri for the fix).
    • ๐Ÿ› Bug fix: add a missing dependency on activesupport (thanks to Yuto Ito for the fix).
    • Bug fix: make missing_unique_indexes work on custom validators (thanks to Max Schwenk for the fix).
    • Bug fix: make missing_unique_indexes order-independent so that it no longer reports false-positives when columns are reordered (thanks to rhymes for the fix).
  • v1.7.1 Changes

    • Bug fix: fix a bug in missing_non_null_constraint that resulted in false positives (thanks to Artem Chubchenko for the fix).
  • v1.7.0 Changes

    • ๐Ÿ†• New feature: detect incorrect boolean column presence validations (they must always use inclusion/exclusion instead of presence validators).
    • ๐Ÿ› Bug fix: don't report missing presence validations on boolean columns if they're properly validated for inclusion/exclusion.
    • ๐Ÿ› Bug fix: don't report missing presence validations if the validation is defined on the association instead of the foreign key column.
    • ๐Ÿ› Bug fix: report missing non-NULL constraints on foreign keys when the presence validation is defined on the association.
    • Bug fix: make missing_unique_indexes work in Rails 6 (thanks for Hrvoje ล imiฤ‡ for the fix).
    • Enhancement: support view-backed models in undefined_table_references.
  • v1.6.0 Changes

    • ๐Ÿ†• New feature: detect columns validated for presence but missing a non-NULL constraint at the database level.
    • ๐Ÿ†• New feature: detect columns with a non-NULL constraint at the database level without the corresponding presence validation.
    • ๐Ÿš… Official support for Rubies 1.9.3+ and Rails 4.2+
    • Skipping full-text indexes when detecting extraneous indexes (thanks Tom)
    • ๐Ÿ›  Some improvements and fixes in README.md (thanks Jay)
  • v1.5.0 Changes

    • ๐Ÿ†• New feature: detect indexes unprepared for working with models supporting soft-delete (thanks to Jason Fleetwood-Boldt for suggesting this feature).
  • v1.4.1 Changes

    • ๐Ÿ› Bug fix: only look for references to undefined tables on models that have a table name defined.
  • v1.4.0 Changes

    • ๐Ÿ†• New feature: detect models referencing undefined tables.