Dennis
Dennis

Reputation: 8101

How to find and treat the cause of an outdated composer package that is not in my composer.json?

I ran composer outdated command:

$ composer outdated
phpdocumentor/type-resolver                    0.4.0   0.7.1

but looking inside composer.json, I see no such package. In my case there is no type-resolver.

How do I find an outdated package that is missing in composer.json belongs to and how do I update it?

Upvotes: 0

Views: 300

Answers (1)

Marcin Nabiałek
Marcin Nabiałek

Reputation: 111839

Composer install not only packages that are listed directly in composer.json but also packages that are dependencies of packages that are listed in composer.json. Assuming you have in composer package vendor/A and this package requires vendor/B you will have installed both A and B packages.

So in your case you can run:

composer update phpdocumentor/type-resolver

to try to update this package.

Of course it does not mean it will be possible to update this way. It's possible that you might need to run:

composer update

but this will update all packages (and depends on scenario this is what you can accept or maybe you don't want to update all packages).

It's also possible that it won't be possible to update this package because other package that is used has phpdocumentor/type-resolver dependency set to for example 0.4.* so 0.7 version is not compatible with this package and version 0.7 won't be installed

Upvotes: 1

Related Questions