Как исключать “ненужные” файлы из пакетов, установленных через composer?

354
14 февраля 2017, 21:36

Так как composer не позволяет создать точный список файлов, которые нужно загрузить из того или иного пакета/репозитория, не могу определиться, как же все таки в production отправлять легковесный продукт, без сотен и даже тысяч неиспользуемых файлов.

Мы используем fxp/composer-asset-plugin, для установки bower пакетов через composer, и проблему в основном доставляют именно JS пакеты. Т.е. нам нужен 1 файл, а подгружается весь проект с сотнями файлов. Простой пример: нам нужен только bootstrap.min.js, но мы не можем только его получить через composer.

Есть 3 мысли:

  1. Написать скрипт, который будет удалять лишние файлы, во время вызова composer'ных хуков. "post-install", "post-update". Или воспользоваться плагином: https://github.com/octolab/Cleaner/wiki ?

  2. Не очень красивый. Загрузить с помощью composer'а пакет, вручную удалить все лишнее и исключить его из composer.json, чтобы не обновлялся. По сути просто положить стороннюю библиотеку в её логичное место - папку "vendors", но отключить по сути от composer'а.

  3. Наверняка кто-то скажет, что нужно чистить проект только в момент сборки production версии, но нам это не подходит, так как нам и в разработке не нужно огромное множество неиспользуемых файлов, так как они замусоривают, замедляют IDE, усложняют повседневную работу и так с большим проектом.

Подскажите, пожалуйста, как вы решали данную проблему?

READ ALSO
Странное поведение русских букв

Странное поведение русских букв

Возьмем простейший скрипт, назовем его testgetphp:

374
Laravel valet. 'Use of undefined constant SORTDATE - assumed 'SORTDATE'

Laravel valet. 'Use of undefined constant SORTDATE - assumed 'SORTDATE'

Добрый, деньЕсть проект на ларавеле, уже живет год

361
Редирект на 404 страницу

Редирект на 404 страницу

Вhtaccess прописал:

369
Вывод из БД без перезагрузки

Вывод из БД без перезагрузки

Всем привет, подскажите пожалуйста как выводить записи из таблицы БД MySQL без перезагрузки страницы? Допустим если в БД добавилась новая строка,...

918