Estou trabalhando em um projeto usando o Symfony 2.1 na minha máquina local. Fiz o upload no meu servidor, mas quando tento instalar os pacotes de fornecedores usando o Composer, estou recebendo muitos erros de dependência. Presumivelmente, isso tem algo a ver com a versão mais recente do Symfony sendo lançada e meu composer.json
arquivo não especificando os números exatos das versões.
Existe alguma maneira de exibir rapidamente os números de versão de tudo na minha máquina local?
Aqui está o meu arquivo composer.json (que funcionou bem até alguns dias atrás):
{
"name": "symfony/framework-standard-edition",
"description": "The \"Symfony Standard Edition\" distribution",
"autoload": {
"psr-0": { "": "src/" }
},
"require": {
"php": ">=5.3.3",
"symfony/symfony": "2.1.*",
"doctrine/orm": ">=2.2.3,<2.4-dev",
"doctrine/doctrine-bundle": "1.0.*",
"twig/extensions": "1.0.*",
"symfony/assetic-bundle": "2.1.*",
"symfony/swiftmailer-bundle": "2.1.*",
"symfony/monolog-bundle": "2.1.*",
"sensio/distribution-bundle": "2.1.*",
"sensio/framework-extra-bundle": "2.1.*",
"sensio/generator-bundle": "2.1.*",
"jms/security-extra-bundle": "1.2.*",
"jms/di-extra-bundle": "1.1.*",
"sonata-project/admin-bundle": "*",
"sonata-project/cache-bundle": "dev-master",
"sonata-project/doctrine-orm-admin-bundle": "dev-master",
"stof/doctrine-extensions-bundle": "1.1.x-dev",
"sonata-project/user-bundle": "dev-master",
"sonata-project/easy-extends-bundle": "dev-master",
"friendsofsymfony/user-bundle": "2.0.x-dev",
"friendsofsymfony/jsrouting-bundle": "*",
"liip/imagine-bundle": "*",
"simplethings/form-extra-bundle": "dev-master",
"antimattr/google-bundle": "dev-master",
"doctrine/doctrine-fixtures-bundle": "dev-master",
"genemu/form-bundle": "2.1.*",
"behat/behat": "2.4.*@stable",
"behat/mink": "1.4.*@stable",
"behat/symfony2-extension": "*@stable",
"behat/mink-extension": "*@stable",
"behat/mink-selenium2-driver": "*@stable",
"behat/mink-browserkit-driver": "*",
"liip/functional-test-bundle": "dev-master"
},
"scripts": {
"post-install-cmd": [
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
],
"post-update-cmd": [
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
]
},
"minimum-stability": "dev",
"extra": {
"symfony-app-dir": "app",
"symfony-web-dir": "web"
},
"config": {
"bin-dir": "bin/"
}
}
fonte
composer show
lista o pacote instalado por padrão.composer show --help
imprime todas as opções disponíveis.Para listar os pacotes do compositor instalados globalmente:
fonte
Listar dependências instaladas:
composer show -i
composer show -i -t
-i
curto para--installed
.-t
curto para--tree
.ref: https://getcomposer.org/doc/03-cli.md#show
fonte
-t
bandeira muito útilO comportamento deste comando foi modificado para que você não precise passar a
-i
opção:fonte
Se você deseja apenas verificar a versão para apenas uma, pode fazer
Observe que apenas os pacotes instalados são mostrados por padrão agora e a opção instalada agora está obsoleta.
fonte
A resposta de Ivan acima é boa:
composer global show -i
Informação adicionada: se você receber uma mensagem parecida com:
Composer could not find a composer.json file in ~/.composer
... você pode ainda não ter pacotes instalados. Nesse caso, você pode ignorar a próxima parte da mensagem que contém:
... please create a composer.json file ...
... assim que você instalar um pacote, a mensagem desaparecerá.
fonte
Se você deseja instalar o Symfony2.2, pode ver a alteração completa no
composer.json
blog do Symfony .Apenas atualize seu arquivo de acordo com isso e execute
composer update
depois. Isso instalará todas as novas dependências e o Symfony2.2 no seu projeto.Se você não deseja atualizar para o Symfony2.2, mas possui erros de dependência, você deve publicá-los, para que possamos ajudá-lo ainda mais.
fonte
Existe uma maneira de obtê-lo através de $ event-> getComposer () -> getRepositoryManager () -> getAllPackages ()
fonte