[5.6] Move tightenco/collect to 'conflict'#23379
Conversation
|
How would this affect anyone running a newer version of Laravel (5.6) but referencing a package that depends on the older version of tightenco/collect (<5.5.33)? We already know that people can get it to work with the current behavior, they just need to specify tightenco/collect as a root dependency. Can packages using the old tightenco/collect still get it to work, or will this break all those packages? |
Not "depends on", but "conflicts with". If someone requires
Because this is a composer.json, which may be different in every tagged version, this change will affect only users using Laravel >= 5.6.8 (if it gets merged and tagged), so if you set a requirement to |
|
In hindsight, it was a mistake to ever edit the framework composer.json to deal with third party packages. Lesson learnt: never do this again for any other package. |
According to this issue: composer/composer#7129, since
tighenco/collectis not an illuminate's subtree, it must be set as a conflict and not a replacement.Tested this change in a framework clone, and this this is what happens now, when installing spatie/crawler:
Currently, if we try to install
spatie/crawler 4along withlaravel/framework 5.6, we get this: