All Versions
20
Latest Version
Avg Release Cycle
-
Latest Release
-
Changelog History
Page 1
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 supportsbelongs_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
andactivesupport
.
- New feature:
-
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).
- All rake tasks added by active_record_doctor have a description so that they
are now shown by
-
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.