The problem is exactly that you executed composer update
twice, in two different directories. You don't execute it from the core directory, but only from the directory containing the core directory. In fact, the composer.json file you find in the directory where you decompressed the Drupal archive contains the following lines.
"merge-plugin": {
"include": [
"core/composer.json",
],
"recurse": false,
"replace": false,
"merge-extra": false
}
The include
part is telling to Composer to include the core/composer.json file too when updating. Supposing that mysite is the directory containing the core directory and the other Drupal files, it is enough you execute the following commands to get in mysite/vendor all the dependencies necessary.
cd mysite
composer update
In my case, I get the following output. (It may change, basing on how often you execute those commands.)
Loading composer repositories with package information
Updating dependencies (including require-dev)
Removing symfony/polyfill-iconv (v1.1.1)
Installing symfony/polyfill-iconv (v1.2.0)
Downloading: 100%
Drupal\Core\Composer\Composer::vendorTestCodeCleanup
Removing symfony/polyfill-mbstring (v1.1.1)
Installing symfony/polyfill-mbstring (v1.2.0)
Downloading: 100%
Drupal\Core\Composer\Composer::vendorTestCodeCleanup
Removing symfony/polyfill-php54 (v1.1.1)
Installing symfony/polyfill-php54 (v1.2.0)
Downloading: 100%
Drupal\Core\Composer\Composer::vendorTestCodeCleanup
Removing symfony/polyfill-php55 (v1.1.1)
Installing symfony/polyfill-php55 (v1.2.0)
Downloading: 100%
Drupal\Core\Composer\Composer::vendorTestCodeCleanup
Removing guzzlehttp/promises (1.1.0)
Installing guzzlehttp/promises (1.2.0)
Downloading: 100%
Drupal\Core\Composer\Composer::vendorTestCodeCleanup
Removing symfony/polyfill-apcu (v1.1.1)
Installing symfony/polyfill-apcu (v1.2.0)
Downloading: 100%
Drupal\Core\Composer\Composer::vendorTestCodeCleanup
Writing lock file
Generating autoload files
Drupal\Core\Composer\Composer::preAutoloadDump
Drupal\Core\Composer\Composer::ensureHtaccess
Both Drupal 8 and Drush work for me.
drush status
Drupal version : 8.1.1
Site URI : http://default
Database driver : mysql
Database hostname : localhost
Database port :
Database username : database_username
Database name : database_name
Drupal bootstrap : Successful
Drupal user :
Default theme : bartik
Administration theme : seven
PHP configuration : /etc/php.ini
PHP OS : Darwin
Drush script : /usr/local/bin/drush
Drush version : 8.0.5
Drush temp directory : /tmp
Drush configuration :
Drush alias files :
Install profile : standard
Drupal root : /Library/Server/Web/Data/Sites/mysite
Drupal Settings File : sites/default/settings.php
Site path : sites/default
File directory path : sites/default/files
Temporary file directory path : /tmp
Sync config path : sites/default/files/config_WZrobbGFfHIWBRmKDknFVfKgdyG1gKNFLBYcpBlbTZtEarG_rPEixLJFW6faE9yNFTjdkieQbA/sync
As side note, if you need to include the composer.json files modules could have, you can edit the mysite/composer.json file to contain the following lines.
"merge-plugin": {
"include": [
"core/composer.json",
"modules/*/composer.json"
],
"recurse": false,
"replace": false,
"merge-extra": false
}
Alternatively, you can use the Composer Manager module. I would suggest installing it, if you need to include any dependecy modules could have.