How composer `extra.symfony.require` restriction is enforced?
问题 Let's say I have a Symfony v4.4 (Flex) project with the following block in the composer.json : "extra": { "symfony": { "allow-contrib": false, "require": "4.4.*" } } As expected, it restricts the Symfony core packages to stick to the v4.4 version. symfony/monolog-bridge package respects it, so you cannot install symfony/monolog-bridge ~4.3.0 or ^5.0 . Yet you can install symfony/monolog-bundle ~3.5.0 , which is also expected, given it's just a bundle that is not part of the core Symfony