Composer крайне медленно и непоследовательно


несколько дней у меня возникли проблемы в моем composer, который не имеет смысла(не имеет ошибки/стандартная логика ошибки являются почти случайными), поэтому я не в состоянии решить, что происходит, это следующее.

у Меня есть мини framework, и я обновляю это, как я нуждался ресурсов, следующие шаги:

1 - Изменяю framework.

2 - Делаю push на github.

3 - Обновляю packagist.

4 - Обновляю composer и в проекте, который я с помощью него (на Этом этапе проблема)

Если я указать только обновить зависимости в вопросе, работает правильно, однако, если я даю команду 'composer update' он удаляет некоторые зависимости (иногда все) и устанавливает еще раз, и еще сверху не обновляет autoloader, если папка " 'vendor/composer' не будет удалена, и чтоб усложнить этот процесс обновления команды занимает больше 20 минут, и приводит многочисленные оповещения как это.

exceeded the timeout of 300 seconds.

, Но это обновление зависимостей не являются последовательными, то есть, не те же, что и обновляются, всегда, каждый раз это отличается.

ПРИМЕЧАНИЕ:я Проверил в репозитории зависимостей, которые служат для обновления, и большинство из них не имеет изменение github/gitlab но composer определяет, что версия, которую я использую, отличается от версии, доступной.

Список зависимостей, которые требуют обновления не были изменены с частота:

PHPDocumentor (это больше всего занимает, и обновления не согласованы)

Synfony

Doctrine

Guzzlehttp

Robinherbots/jquery.inputmask (Это обновляет 100% случаев и занимает очень много)

Cocur/slugify

Components/jquery -

Zendframework

И когда каждый из этих зависимостей имеют другие зависимости, то же самое обновляются 100%, требуется много времени, чтобы завершить, когда не предупреждение ошибки и/или не заключает.

И вторая проблема, на вопрос о обновлении autoload внутри vendor.

Если файл composer.json обновляется, чтобы включить некоторый namespace новый, и не дать команду update, он делает весь процесс, указывает на успешное, но не включает в себя новый namespace autoload, такая, что этот шаг работает, мне нужно удалить папку 'vendor/composer' дать команду 'composer update' и ждать +- 20 минут(ja составил более 40) чтобы обновить все, и я могу вернуться к работать.

Информация:

Тест: ОС Ubuntu 16.4

Производство: ОС Debian 7.

PHP: 7. GIT: Последняя версия.

Разрешений из папки 777.

IDE: Netbeans 8.2

Широкополосного Интернет 50 МБ Стабильно.

Composer.json

  {
    "name": "contabil app center",
    "description": "",
    "type": "Biblioteca",
    "license": "BSD-3",
    "version": "1.0",
    "authors": [
        {
            "name": "Gabriel",
            "email": ""
        }
    ],
    "minimum-stability": "dev",
    "require": {
        "php": ">=5.3.8",  
        "guzzlehttp/guzzle": "~6.0",
        "slim/pdo": "~1.9",
        "cocur/slugify": "dev-master",
        "components/jquery": "~3.2.1",
        "wixel/gump": "dev-master",
        "phpmailer/phpmailer": "^5.2",
        "easy-cont/vidb": "dev-master",
        "phpdocumentor/phpdocumentor": "2.*"
    },
    "autoload": {
        "psr-4": {

            "appModel\\": "model/app",
            "appView\\": "view/app",
            "appController\\": "controller/app",
            "appFinancialRestatement\\":"model/app/calculations/financial-calculations",
            "appFinancialIndices\\":"model/app/calculations/financial-calculations",
            "appDebitWorksheet\\":"model/app/calculations/financial-calculations",
            "appFIPE\\":"model/app/fipe",
            "phpToJs\\":"interactors",
            "siteModel\\": "model/site",
            "indexView\\": "view/site",
            "siteController\\": "controller/site"
        }
    }
}
Author: AnthraxisBR, 2017-08-14

1 answers

Возможные причины ошибки:

1. Проблемы с сетью:

Как вопрос ниже, могут быть проблемы с IPV6, то есть Linux, я не знаю, если проблема возникает в Windows:

Также может быть проблема с Брандмауэром или Прокси-сервера в сети, а один из этих двух не имею, как сформулировать ответ "по умолчанию", потому что каждая сеть может работать таким образом.

2. Xdebug или аналогичный активен в CLI

Composer PHP в CLI (интерфейс командной строки), использовать XDebug в нем или расширения аналогичные может привести к проблемам типа, рекомендую создайте php.ini CLI и один для Apache (если linux уже отдельно), и тогда в php.ini для CLI, просто закомментируйте строку все возможные расширения, которые используются для отладки, как я объяснил в этом ответе:

3. Composer устарел

Может быть ошибка в версии composer, или, может быть, было так, что работала на старой версии, загрузив все обратно, в случае, если первый может проверить текущую версию composer с помощью команды:

composer -V

Примечание: V в верхнем регистре

Команда:

composer -about

Версия текущем 1.5.1, если меньше, чем это необходимо, обновить, для этого используйте команду:

composer self-update

Если команда не работает, потому что на самом деле должны быть, с помощью очень старые версии, только тогда вы сможете вручную обновить, будучи в Linux я не могу сказать, где было установлено, что это выбор пользователя машины, если известно, куда этот файл composer.phar удалите его и установите снова:

Скачать setup:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

), А затем запустите setup:

php composer-setup.php

Установка composer глобально в Linux

В linux композитор не установлен глобально, но может копировать, перемещать вручную, после скачать можете сделать это в соответствии с ответом от Уоллес:

chmod +x composer.phar
mv composer.phar /usr/local/bin/composer

И в соответствии с ответом Даниил отредактируйте .bashrc добавления:

alias composer=/a/pasta/onde/esta/conposer.phar
 1
Author: Guilherme Nascimento, 2017-08-16 18:08:10