<p dir="auto">Today I was doing a composer update to go from Symfony 2.3.13 to Symfony 2.3.15 and since then I have been unable to run my application in my Vagrant environment.</p>
<p dir="auto">The error I received is: <code class="notranslate">MappingException: The mapping file /srv/shm/cache/dev/../../../vendor/symfony/symfony/src/Symfony/Component/Form/Resources/config/validation.xml does not exist</code></p>
<p dir="auto">What apparently happened is that something, which I could not find, in Symfony had changed to generate relative paths in the cache instead of absolute paths.</p>
<p dir="auto">However, to improve performance in vagrant we symlink the app/cache folder to /src/shm/cache in our virtual machine to reduce IO over vbox nfs. Having relative folders means now that it will try to find the vendor folder in my /srv/ folder.</p>
<p dir="auto">Is this an unintended side-effect of another change? Is the above a supported use-case or should I find another way to improve performance in vagrant?</p>
<p dir="auto">Here is the complete stacktrace (the name of the project has been replaced with dashes):</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/Validator/Mapping/Loader/FileLoader.php line 31
at FileLoader-&gt;__construct('/srv/shm/cache/dev/../../../vendor/symfony/symfony/src/Symfony/Component/Form/Resources/config/validation.xml') in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/Validator/Mapping/Loader/XmlFilesLoader.php line 28
at XmlFilesLoader-&gt;getFileLoaderInstance('/srv/shm/cache/dev/../../../vendor/symfony/symfony/src/Symfony/Component/Form/Resources/config/validation.xml') in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/Validator/Mapping/Loader/FilesLoader.php line 47
at FilesLoader-&gt;getFileLoaders(array('/srv/shm/cache/dev/../../../vendor/symfony/symfony/src/Symfony/Component/Form/Resources/config/validation.xml', '/srv/shm/cache/dev/../../../vendor/friendsofsymfony/user-bundle/FOS/UserBundle/Resources/config/validation.xml')) in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/Validator/Mapping/Loader/FilesLoader.php line 33
at FilesLoader-&gt;__construct(array('/srv/shm/cache/dev/../../../vendor/symfony/symfony/src/Symfony/Component/Form/Resources/config/validation.xml', '/srv/shm/cache/dev/../../../vendor/friendsofsymfony/user-bundle/FOS/UserBundle/Resources/config/validation.xml')) in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 4660
at appDevDebugProjectContainer-&gt;getValidator_Mapping_ClassMetadataFactoryService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('validator.mapping.class_metadata_factory') in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 4188
at appDevDebugProjectContainer-&gt;getValidatorService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('validator') in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 2497
at appDevDebugProjectContainer-&gt;getLuneticsLocale_Validator_MetaService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('lunetics_locale.validator.meta') in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 2400
at appDevDebugProjectContainer-&gt;getLuneticsLocale_QueryGuesserService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('lunetics_locale.query_guesser') in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 2312
at appDevDebugProjectContainer-&gt;getLuneticsLocale_GuesserManagerService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('lunetics_locale.guesser_manager') in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 2356
at appDevDebugProjectContainer-&gt;getLuneticsLocale_LocaleListenerService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('lunetics_locale.locale_listener') in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/ContainerAwareEventDispatcher.php line 188
at ContainerAwareEventDispatcher-&gt;lazyLoad('kernel.request') in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/ContainerAwareEventDispatcher.php line 165
at ContainerAwareEventDispatcher-&gt;dispatch('kernel.request', object(GetResponseEvent)) in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 2878
at HttpKernel-&gt;handleRaw(object(Request), '1') in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 2863
at HttpKernel-&gt;handle(object(Request), '1', true) in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 2992
at ContainerAwareHttpKernel-&gt;handle(object(Request), '1', true) in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 2247
at Kernel-&gt;handle(object(Request)) in /srv/http/---------/hosts/local.business.---------.nl/web/app_dev.php line 30"><pre class="notranslate"><code class="notranslate">in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/Validator/Mapping/Loader/FileLoader.php line 31
at FileLoader-&gt;__construct('/srv/shm/cache/dev/../../../vendor/symfony/symfony/src/Symfony/Component/Form/Resources/config/validation.xml') in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/Validator/Mapping/Loader/XmlFilesLoader.php line 28
at XmlFilesLoader-&gt;getFileLoaderInstance('/srv/shm/cache/dev/../../../vendor/symfony/symfony/src/Symfony/Component/Form/Resources/config/validation.xml') in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/Validator/Mapping/Loader/FilesLoader.php line 47
at FilesLoader-&gt;getFileLoaders(array('/srv/shm/cache/dev/../../../vendor/symfony/symfony/src/Symfony/Component/Form/Resources/config/validation.xml', '/srv/shm/cache/dev/../../../vendor/friendsofsymfony/user-bundle/FOS/UserBundle/Resources/config/validation.xml')) in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/Validator/Mapping/Loader/FilesLoader.php line 33
at FilesLoader-&gt;__construct(array('/srv/shm/cache/dev/../../../vendor/symfony/symfony/src/Symfony/Component/Form/Resources/config/validation.xml', '/srv/shm/cache/dev/../../../vendor/friendsofsymfony/user-bundle/FOS/UserBundle/Resources/config/validation.xml')) in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 4660
at appDevDebugProjectContainer-&gt;getValidator_Mapping_ClassMetadataFactoryService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('validator.mapping.class_metadata_factory') in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 4188
at appDevDebugProjectContainer-&gt;getValidatorService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('validator') in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 2497
at appDevDebugProjectContainer-&gt;getLuneticsLocale_Validator_MetaService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('lunetics_locale.validator.meta') in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 2400
at appDevDebugProjectContainer-&gt;getLuneticsLocale_QueryGuesserService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('lunetics_locale.query_guesser') in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 2312
at appDevDebugProjectContainer-&gt;getLuneticsLocale_GuesserManagerService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('lunetics_locale.guesser_manager') in /srv/shm/cache/dev/appDevDebugProjectContainer.php line 2356
at appDevDebugProjectContainer-&gt;getLuneticsLocale_LocaleListenerService() in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 1974
at Container-&gt;get('lunetics_locale.locale_listener') in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/ContainerAwareEventDispatcher.php line 188
at ContainerAwareEventDispatcher-&gt;lazyLoad('kernel.request') in /srv/http/---------/hosts/local.business.---------.nl/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/ContainerAwareEventDispatcher.php line 165
at ContainerAwareEventDispatcher-&gt;dispatch('kernel.request', object(GetResponseEvent)) in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 2878
at HttpKernel-&gt;handleRaw(object(Request), '1') in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 2863
at HttpKernel-&gt;handle(object(Request), '1', true) in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 2992
at ContainerAwareHttpKernel-&gt;handle(object(Request), '1', true) in /srv/http/---------/hosts/local.business.---------.nl/app/bootstrap.php.cache line 2247
at Kernel-&gt;handle(object(Request)) in /srv/http/---------/hosts/local.business.---------.nl/web/app_dev.php line 30
</code></pre></div>
<p dir="auto">In 2.3.14, 2.3.15, and 2.4.5, when I run <code class="notranslate">php app/console generate:bundle</code> I get the following prompt:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="Target directory [/home/intrepion/path/app/cache/dev/../src]:"><pre class="notranslate"><code class="notranslate">Target directory [/home/intrepion/path/app/cache/dev/../src]:
</code></pre></div>
<p dir="auto">But when I revert back to 2.3.13 or 2.4.4, I get exactly what I expect:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="Target directory [/home/intrepion/path/src]: "><pre class="notranslate"><code class="notranslate">Target directory [/home/intrepion/path/src]: 
</code></pre></div>