composer.json extended