Skip to content

Audit dependencies #31

Closed
Closed
@asgrim

Description

@asgrim

We are currently using some dependencies which MAY be problematic for maintenance.

Whilst not a big issue, if we want to support newer versions of PHP (e.g. 8.4 at the time of writing, is unreleased), we have to ensure we are compatible with the newer dependencies. For example, the constraint we have for illuminate/container is ^10.47, which would not allow version 11 (which I believe has fixed the PHP 8.4 issues). This is somewhat mitigated by our root php constraint being explicitly 8.1.*||8.2.*||8.3.* (i.e., we do not yet support PHP 8.4), and this issue only surfaces when --ignore-platform-req=php is used (e.g. for testing). The more third-party dependencies we have, the more we are constrained by upstream support. We should evaluate the dependencies we are using, and ensure it makes sense to continue using them or not.

PSL - https://packagist.org/packages/azjezz/psl - was mentioned as problematic, since it relies on some extensions which not everyone always has installed (e..g bcmath, sodium, etc.). This creates a chicken/egg problem if the extension someone wants to install is bcmath! Whilst I love the functionality we're using in azjezz/psl we may need to find another way; we're not using the azjezz/psl parts that use those extensions (we're ONLY using the nicely-typed JSON parsing, and only in a couple of places), and I don't think it's reasonable at all to ask the author that these parts are split off into a separate package.

ref: mongodb/mongo-php-driver#1624 (comment)

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions