Вчера работающий без проблем пару недель модуль ни с того ни с сего повесил весь проект.
Симптомы: белый экран (ошибка 500) при включенном кэшировании для анонимного пользователя.
Копание в коде показало, что модуль начал подключаться до подключения common.inc, в котором описан drupal_add_js().
В моём случае были виноваты вызовы drupal_add_js() вне хуков и в хуке hook_init().
Решение — перенести подключение JS/CSS в hook_menu:
function module_name_menu($may_cache){ if(!$may_cache){ drupal_add_js(...); }
Кстати, из документации по хуку _init() убрали рекомендацию по подключению JS/CSS в нём, которую я прочитал ранее. Теперь рекомендация только в API Drupal6…