diff --git a/src/Composer/Repository/PathRepository.php b/src/Composer/Repository/PathRepository.php index 4db774579..5b6a770b2 100644 --- a/src/Composer/Repository/PathRepository.php +++ b/src/Composer/Repository/PathRepository.php @@ -128,6 +128,17 @@ class PathRepository extends ArrayRepository implements ConfigurableRepositoryIn $urlMatches = $this->getUrlMatches(); if (empty($urlMatches)) { + if (preg_match('{[*{}]}', $this->url)) { + $url = $this->url; + while (preg_match('{[*{}]}', $url)) { + $url = dirname($url); + } + // the parent directory before any wildcard exists, so we assume it is correctly configured but simply empty + if (is_dir($url)) { + return; + } + } + throw new \RuntimeException('The `url` supplied for the path (' . $this->url . ') repository does not exist'); }