Рабочий процесс разработки плагинов

Как вы настроили рабочий процесс разработки плагинов?

Я экспериментирую с разработкой плагинов в локальной среде Docker. Я запускаю d/boot_dev --init и могу запустить свой плагин. Проблема в том, что когда я вношу изменения в код плагина, единственный способ увидеть эти изменения — выполнить d/shutdown_dev, а затем снова d/boot_dev --init. Это крайне медленно :sadpanda:

Существует ли более быстрый способ ускорить цикл «изменение → тестирование → повторное изменение»?

К сожалению, особого способа нет. Вы можете использовать локальную установку вместо среды разработки Docker. Вероятно, каждое остановка/запуск этого контейнера при внесении изменений накладывает свои издержки, тогда как при локальном запуске сервера просто останавливается и запускается приложение. Однако для многих изменений в части Rails вам всё равно придётся останавливать и запускать сервер заново.

Изменения в EmberJS, напротив, должны требовать лишь перезагрузки в браузере, если вы не добавляете, не удаляете и не переименовываете файлы.

О, останавливать весь контейнер не нужно.

Достаточно просто остановить и запустить d/unicorn, чтобы новый код заработал.

Кроме того, я рекомендую, где это возможно, использовать разработку через тестирование (TDD), а для кода плагина можно полагаться на d/rake autospec.