composer/composer — Issue #243: Problem with update 
Author: Seldaek
Created: 2012-01-22 20:35:24+00:00
State: open

Using the following composer.json:

```json
{
"require": {
"symfony/class-loader": "2.1.*",
"symfony/http-foundation": "2.1.*",
"symfony/routing": "2.1.*",
"symfony/http-kernel": "2.1.*"
}
}
```

Install runs fine, then update fails with the following:

```
Notice: Undefined offset: 0 in /composer/src/Composer/DependencyResolver/Solver.php on line 2034

Call Stack:
1. {main}() /composer/bin/composer:0
2. Composer/Console/Application->run() /composer/bin/composer:15
3. Symfony/Component/Console/Application->run() /composer/src/Composer/Console/Application.php:57
4. Composer/Console/Application->doRun() /composer/vendor/symfony/console/Symfony/Component/Console/Application.php:106
5. Symfony/Component/Console/Application->doRun() /composer/src/Composer/Console/Application.php:68
6. Symfony/Component/Console/Command/Command->run() /composer/vendor/symfony/console/Symfony/Component/Console/Application.php:193
7. Composer/Command/UpdateCommand->execute() /composer/vendor/symfony/console/Symfony/Component/Console/Command/Command.php:237
8. Composer/Command/InstallCommand->install() /composer/src/Composer/Command/UpdateCommand.php:58
9. Composer/DependencyResolver/Solver->solve() /composer/src/Composer/Command/InstallCommand.php:129
10. Composer/DependencyResolver/Solver->runSat() /composer/src/Composer/DependencyResolver/Solver.php:1074

Catchable fatal error: Argument 4 passed to Composer/DependencyResolver/Solver::setPropagateLearn() must be an instance of Composer/DependencyResolver/Rule, null given, called in /composer/src/Composer/DependencyResolver/Solver.php on line 2037 and defined in /composer/src/Composer/DependencyResolver/Solver.php on line 1368

Call Stack:
1. {main}() /composer/bin/composer:0
2. Composer/Console/Application->run() /composer/bin/composer:15
3. Symfony/Component/Console/Application->run() /composer/src/Composer/Console/Application.php:57
4. Composer/Console/Application->doRun() /composer/vendor/symfony/console/Symfony/Component/Console/Application.php:106
5. Symfony/Component/Console/Application->doRun() /composer/src/Composer/Console/Application.php:68
6. Symfony/Component/Console/Command/Command->run() /composer/vendor/symfony/console/Symfony/Component/Console/Application.php:193
7. Composer/Command/UpdateCommand->execute() /composer/vendor/symfony/console/Symfony/Component/Console/Command/Command.php:237
8. Composer/Command/InstallCommand->install() /composer/src/Composer/Command/UpdateCommand.php:58
9. Composer/DependencyResolver/Solver->solve() /composer/src/Composer/Command/InstallCommand.php:129
10. Composer/DependencyResolver/Solver->runSat() /composer/src/Composer/DependencyResolver/Solver.php:1074
11. Composer/DependencyResolver/Solver->setPropagateLearn() /composer/src/Composer/DependencyResolver/Solver.php:2037
```

To work around this, delete the vendor dir and run install or update again.

Note: This happens only with this exact combination of packages it seems. Removing any of the requirements makes it work.