tracks_changes provides a way to easily keep track of changes to ActiveRecord models at an attribute level and maintains the typecasting in the database.