Часто надо собрать Zend Framework в одни файл, при этом удалить все require и include. На просторах интернета есть собранные все файлы этого фреймворка, но, иногда, надо собрать только малую часть. Пока, я не нашёл скрипта, чтобы делать один файл да и хотелось этот процесс интегрировать с системой сборки проекта. Так как я использую для сборки Ant, то решил написать скрипт для него. Тем более это оказалось легче, чем предполагал. Тяжело было разобраться с самим Ant`ом
Read more…
Для собственных нужд надо было собрать HTMLPurifier одним файлом. Благо, с ним идёт файл со всеми инклудами, правда, с ошибками. Быстренько написал ant-скрипт, который всё это счастье собирает и вырезает комментарии. Не обошлось и без костылей. Для того, чтобы HTMLPurifier иногда находил нужные ему файлы, надо определить констанкту HTMLPURIFIER_PREFIX. Сборочный скрипт с исходниками и собраный HTMLPurifier выкладываю. Баги и патчи – в комментарии.
UPD. Камрад Александро сказал что я мудак и он есть уже собраный ((( а я ещё комментариии вырезал
На днях решил написать парочку целей для Ant’а, а на чём же пробовать и тестировать, как не на своих проектиках. В качестве полигона взял свой one.web2.com.ua и описал систему сборки для этого проекта. Теперь сайт должен грузится быстро и все изменения в стилях будут применяться автоматом. Что же я опритимизировал:
- Все стили CSS собираются в один файл и сжимаются yuicompressor.
- Все Javascript-файлы собираются в один и тем же жжымаются.
- Все библиотеки Javascript ( jQuery, jQuery UI ) просто собираются в один файл и будут перегружаться только, когда будут обновлены, а не при каждой сборке.
- Zend Framefork файлы собираются в один и только нужные классы. Как я это сделал, напишу попозже.
- Все классы моего фреймворка тоже, как и ZF, собираются в одном файле. Так как one.web2.com.ua состоит с одного контроллера, то он тоже склеен. Как вывод, подключаются только 2 файла PHP.
- Когда меняю что-то в стилях, это сразу применяется на сайте, потому что система применяет трюк с версиями
Проверил и, по субъективному мнению, грузится просто реактивно! Осталось что-то сделать с CKEditor, но это в другой раз.