После многих часов попыток определить, где происходит «блокировка» и даже создания приложения rails с нуля, оказывается, что виновником была строка «cast: false» в файле database.yml. Как только это было закомментировано, мир был восстановлен в моей вселенной рельсов, и миграции снова начали работать.
развитие:
адаптер: mysql2
база данных: дБ
имя пользователя: пользователь
пароль: passwd
хост: localhost
# cast: false
Ирония в том, что я даже не могу вспомнить, как этот «cast: false» оказался в коде два года назад. Я смутно помню, что я положил это там с целью. Тем не менее, все тесты работают нормально без него и пока никаких других симптомов в реальном поведении приложения тоже нет.
Я надеюсь, что это поможет кому-то, кто в какой-то момент обновится до 5.2.