Composer: Ao fazer check-out específico de um repositório, os requisitos são resolvidos erroneamente em composer.json no commit mais alto da ramificação

Criado em 4 fev. 2015  ·  3Comentários  ·  Fonte: composer/composer

Estou tentando exigir uma versão mais antiga da biblioteca, que não possui tag. Os repositórios são definidos da seguinte forma:

    "repositories": [
        { "type": "vcs", "url": "https://github.com/nette/nette.git" }
    ],
    "require": {
        "nette/nette": "dev-master#b8ca5b82d407453b8cf26ce08a36ee698452d000"
    },

O commit está presente no branch dev-master , composer.json está presente sem requisitos, porém em composer install um erro é emitido sugerindo que o pacote resolve os requisitos do commit mais alto de dev-master ramo:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - nette/nette dev-master requires nette/application >=2.3.0 -> no matching package found.
    - nette/nette dev-master requires nette/application >=2.3.0 -> no matching package found.
    - Installation request for nette/nette dev-master#b8ca5b82d407453b8cf26ce08a36ee698452d000 -> satisfiable by nette/nette[dev-master].

A versão do compositor é 07c644ac229a21df80180598d8bb9aaba232eecb

Comentários muito úteis

Isso ocorre porque o compositor não conhece o arquivo composer.json nesse hash específico. O Packagist armazena apenas o composer.json mais recente para o dev-master. O Composer não pode determinar o que está no composer.json desse commit específico. Seria necessário um clone do git para poder determinar isso. Por razões sensatas, isso não é suportado, consulte #599. Sua única opção é criar um arquivo de bloqueio com este commit.

Todos 3 comentários

Isso ocorre porque o compositor não conhece o arquivo composer.json nesse hash específico. O Packagist armazena apenas o composer.json mais recente para o dev-master. O Composer não pode determinar o que está no composer.json desse commit específico. Seria necessário um clone do git para poder determinar isso. Por razões sensatas, isso não é suportado, consulte #599. Sua única opção é criar um arquivo de bloqueio com este commit.

Sim, veja a nota azul em https://getcomposer.org/doc/04-schema.md#package -links (tem que rolar um pouco) para mais detalhes.

Ok, claro, obrigado pela explicação.

Esta página foi útil?
0 / 5 - 0 avaliações