Назад | Перейти на главную страницу

Заставить все скрипты Perl запускаться с помощью `use strict`

Я только что просмотрел большое устаревшее веб-приложение Perl (созданное с использованием cgi-lib.pl и работает как CGI с Apache HTTPD) и обновил каждый сценарий до use strict;, исправляя множество мелких ошибок. Теперь это сделано, я хочу, чтобы люди не отключились strict Режим. Могу ли я добиться этого? (У нас уже была эта проблема, когда use strict; был закомментирован с пометкой, что это "не работает".)

Ничто не заменит хороший процесс проверки кода и людей, которым это небезразлично. Сделайте строгий стандарт по умолчанию, включив его в шаблоны, он должен быть таким же автоматическим, как заголовок авторского права. Проблемы с файлами. Прекрасно, если проблемы имеют низкий приоритет, но о них следует позаботиться в какой-то момент, когда будет затронут соответствующий код. Если закрыто, требуется лучшая документация, чем «не работает».

После того, как люди согласятся с этим стандартом, применяйте его. Поместите его в какое-нибудь очевидное место в ваших инструментах, например, в lint или tidy config, CI build check или pre commit check system control.

В инструмент perlcritic есть политика для этого: RequireUseStrict. Итак, вы можете настроить perlcritic для сканирования всех файлов сценариев и сообщения об ошибке, если эта политика не соблюдается.

Поэтому вам нужно найти способ, чтобы утилита perlcritic запускалась регулярно и сообщала о своих результатах. Сервисы непрерывной интеграции (CI) существуют как раз для этой цели.