- presence: true is redundant since Rails 5.0 BUT applies
with new default config of
belongs_to_required_by_default to true.
Lots of files with belongs_to_required_by_default = false
(backward compatibility).
So: deleting this setting implies to adding optional: true
- added 'NOT NULL' constraints so model constraints match
with contraints on DB tables.
- corresponding migration files to match AR Models &
DB tables
- rake tasks to check corrupt data (ie: NULL/nil in id fields)
- updated the todo
- presence: true is redundant since Rails 5.0 BUT applies
with new default config of
belongs_to_required_by_default to true
Lots of files with belongs_to_required_by_default = false
(backward compatibility)
So: deleting this setting implies to adding optional: true
- added 'NOT NULL' constraints so model constraints match
with contraints on DB tables.
- updated the todo
We want to link variants/products to external DFC SuppliedProducts to
trigger supplier orders when local stock is exhausted. This is the first
step to enable the link.
The provider name and uid are currently stored on the user model but
it's better to move them to their own table. They are only needed in
certain situations, only some users have an account and we are now
storing a lot more.
Many report specs are still testing the old behaviour. We need to
migrate them to background reports. Some tests may be better as unit
tests instead of system tests.
I had to change some specs to keep them simple but I don't think
anything is broken. In one case, it would have needed a lot more setup
to make the spec work. But in production, the permissions are never used
with ModelSet, for example.
We improved the email address validation to check the domain for
existing DNS entries. But our default user has the example.com domain
which is not resolved by my internet service provider.
I couldn't find a better way to deactivate this one check than
overriding the method in the validator. The code does not affect other
parts of the app unless you run multiple rake tasks in the same command
line with the database setup.