composer генерирует некорректные пространства имен в файлах автозагрузки - PullRequest
0 голосов
/ 06 сентября 2018

У меня есть сторонняя библиотека в composer.json:

some/library:version

И пространство имен выглядит так:

ns1\ns2\MainClass

Все работало просто отлично, пока однажды эта библиотека не изменила свою структуру пространства имен.

Проблема в том, что когда я композитор обновляю зависимости. Он (композитор) сохраняет прежнюю настройку пространства имен psr4 (autoload_psr4.php).

Я проверил "instal.json" и обнаружил, что он также загрузил неподходящий конфиг. Но в папке vendor библиотека правильная. В файле composer.lock настройки пакета «require», «require-dev» и «autoload» не обновляются. - Думаю, это точка останова.

Я пробовал:

    1. очистить весь кеш и переустановить все
    1. очистить папку vendor и все, кроме composer.json и переустановить
    1. переключиться на версию библиотеки dev-master и изменить библиотеку composer.json (это моя библиотека)

Спасибо.


Теперь я почти уверен, что это вызвано настройкой пакета (удаленного), я создал новый проект и попытался получить самую новую версию (или dev-master), но была извлечена только та «специальная» (старая) версия , Я заметил единственную разницу между «специальной» версией и более новой:

"специальный": требуется: {PHP:> = 5,6} новее: требуется: {PHP:> = 7,0}

PS: пакет больше ничего не требует.

Я полагаю, это может быть причиной конфликта из-за того, что мои проекты требуют и этот пакет требует изменения.

...