Merge pull request #2733 from naderman/limit-replace-provide
Whitelist packages with names matching those specified before generating rulesmain
commit
33e872d7d3
@ -0,0 +1,25 @@
|
|||||||
|
--TEST--
|
||||||
|
Broken dependencies should not lead to a replacer being installed which is not mentioned by name
|
||||||
|
--COMPOSER--
|
||||||
|
{
|
||||||
|
"repositories": [
|
||||||
|
{
|
||||||
|
"type": "package",
|
||||||
|
"package": [
|
||||||
|
{ "name": "a/a", "version": "1.0.0" },
|
||||||
|
{ "name": "b/b", "version": "1.0.0", "require": {"c/c": "1.*"} },
|
||||||
|
{ "name": "c/c", "version": "1.0.0", "replace": {"a/a": "1.0.0" },"require":{"x/x": "1.0"}},
|
||||||
|
{ "name": "d/d", "version": "1.0.0", "replace": {"a/a": "1.0.0", "c/c":"1.0.0" }}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"require": {
|
||||||
|
"a/a": "1.*",
|
||||||
|
"b/b": "1.*"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
--RUN--
|
||||||
|
install
|
||||||
|
--EXPECT-EXIT-CODE--
|
||||||
|
2
|
||||||
|
--EXPECT--
|
@ -1,34 +0,0 @@
|
|||||||
--TEST--
|
|
||||||
Provide only applies when no existing package has the given name
|
|
||||||
--COMPOSER--
|
|
||||||
{
|
|
||||||
"repositories": [
|
|
||||||
{
|
|
||||||
"type": "package",
|
|
||||||
"package": [
|
|
||||||
{ "name": "higher-prio-hijacker", "version": "1.1.0", "provide": { "package": "1.0.0" } },
|
|
||||||
{ "name": "provider2", "version": "1.1.0", "provide": { "package2": "1.0.0" } }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "package",
|
|
||||||
"package": [
|
|
||||||
{ "name": "package", "version": "0.9.0" },
|
|
||||||
{ "name": "package", "version": "1.0.0" },
|
|
||||||
{ "name": "hijacker", "version": "1.1.0", "provide": { "package": "1.0.0" } },
|
|
||||||
{ "name": "provider3", "version": "1.1.0", "provide": { "package3": "1.0.0" } }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"require": {
|
|
||||||
"package": "1.*",
|
|
||||||
"package2": "1.*",
|
|
||||||
"provider3": "1.1.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
--RUN--
|
|
||||||
install
|
|
||||||
--EXPECT--
|
|
||||||
Installing package (1.0.0)
|
|
||||||
Installing provider2 (1.1.0)
|
|
||||||
Installing provider3 (1.1.0)
|
|
@ -0,0 +1,24 @@
|
|||||||
|
--TEST--
|
||||||
|
Ensure a transiently required replacer can replace root requirements
|
||||||
|
--COMPOSER--
|
||||||
|
{
|
||||||
|
"repositories": [
|
||||||
|
{
|
||||||
|
"type": "package",
|
||||||
|
"package": [
|
||||||
|
{ "name": "a/a", "version": "1.0.0" },
|
||||||
|
{ "name": "b/b", "version": "1.0.0", "require": {"c/c": "1.*"} },
|
||||||
|
{ "name": "c/c", "version": "1.0.0", "replace": {"a/a": "1.0.0" }}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"require": {
|
||||||
|
"a/a": "1.*",
|
||||||
|
"b/b": "1.*"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
--RUN--
|
||||||
|
install
|
||||||
|
--EXPECT--
|
||||||
|
Installing c/c (1.0.0)
|
||||||
|
Installing b/b (1.0.0)
|
Loading…
Reference in New Issue