Following the discussion in #5823 it has become clear that this feature is supplied at-your-own-risk, this should be more explicitly reflected in its documentation.
When using certain parameters together in 'composer show', specifically '-s --outdated', the root package itself is inspected for its latest version. If the git repository it belongs to does not have any tags yet this would return FALSE, while the next call to printMeta requires a PackageInterface or NULL, causing a crash.
Refs #5808
this issue was happening due to realpath() function
that cannot work with "file://" path.
For local repositories it is valid url but not valid for realpath()
Url encode all non alphanumeric characters in project name for GitLabDriver.
If the project name has "." characters in it, which is supported in Gitlab, the Gitlab API will 404 when requesting the branches or tags of the repository. This commit urlencodes all non alphanumeric characters in the project name in requests to the Gitlab API.
commit 3994b556dcffcde7b1801c8bc712f3127e8f8e7c
Author: John Whitley <john.whitley@berea.eu>
Date: Tue Aug 16 09:02:53 2016 +0100
https://github.com/composer/composer/issues/5600
This alters the default flag for loadOptions in
\Composer\Package\Loader\ArrayLoader to true; and alters the assumption
of the test to reflect this change.
**Rationale**
The `\Composer\Package\Loader\ArrayLoader` test (defined in
tests/Composer/Test/Package/Loader/ArrayLoaderTest.php) assumed that a
new `\Composer\Package\Loader\ArrayLoader` instance would be always
created with the optional flag loadOptions set to true.
```php
$this->loader = new \Composer\Package\Loader\ArrayLoader(null, true);
```
This change alters the general case to reflect the default assumption as
defined in the test.
commit b75fc4ad7238bc50f724bd29446ccbc33e82c34c
Author: John Whitley <john.whitley@berea.eu>
Date: Mon Aug 15 16:55:27 2016 +0100
Altered the test for ArrayLoader to use the default loadConfig flag, and to test the true and false states for the loadConfig flag