-
Notifications
You must be signed in to change notification settings - Fork 11.3k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
illuminate/collections still coupled to illuminate/support #38389
Comments
Looks like the conditional trait needs to be moved into the collections package? |
@GrahamCampbell I'm not sure if moving the trait to the collections package is the right call here. I feel it belongs more in the support package. |
I can see a couple paths. I think option 1 is probably the cleanest solution, and option 3 is probably the simplest solution. Thoughts? 1. New PackageWe could extract the functionality into a 2. Duplicate CodeWe could just duplicate the functionality in both We could reduce the pain of this is a couple of ways:
3. Move to the collections packageSince |
@driesvints How's that any different than the |
@JosephSilber no idea tbh |
Realistically, @driesvints thoughts? |
In the end I decided to open up #38457 — it just feels like a cleaner solution. That said, I'm happy to go the other direction if that doesn't end up making sense. |
We split up the trait into its own package: https://github.com/illuminate/conditionable. Thanks all and thanks @inxilpro. |
illuminate/collections
Version:9.0-dev
=dev-master
= commit hash d17728bDescription:
According to #32478, #32481, #32506 the intent of creating
illuminate/collections
was to remove the dependency onilluminate/support
.While this appears to be operational in v8.54.0, it is broken in 9.0-dev.
While exploring converting Valet from using
tightenco/collect
toilluminate/collections
with9.0-dev
, it reveals thatilluminate/collections
9.0-dev is still highly coupled toilluminate/support
More specifically, the
illuminate/collections
9.0-dev currently package depends on (requires) theilluminate/support
package to provide theConditionable
trait and its associatedEnumerable
implementations.Attempting to bypass
use Conditionable;
exposes more of the dependency details:Steps To Reproduce:
git clone git@github.com:laravel/valet.git
"minimum-stability": "dev",
tocomposer.json
composer remove tightenco/collect
composer require illuminate/collections:^9.0 illuminate/container:^9.0 --with-all-dependencies
./valet
orphpunit
Aside: Changing the
^9.0
to^8.0
avoids the reported errors, so it seems to be isolated to the9.0-dev
branch./cc @mattstauffer
/ref tighten/collect#217
The text was updated successfully, but these errors were encountered: