Skip to content

Combine included require and root require-dev constraints #280

Description

@DanielButAtWork

When a root project contains a require-dev constraint (e.g. MediaWiki core 1.43 requiring "psy/psysh": "^0.12.3" (until a few days ago, now ^0.12.19)) and a merged project contains a require constraint for the same library (e.g. exactly "psy/psysh": "0.12.16"), the merged composer.json keeps the constraints separate, one for require-dev and one for require.

However, this creates problems with the composer resolution of packages, see composer/composer#12722

Proposal:

  • If a library is in the root require-dev with some constraint ABC
  • And that same library is in an included require with some constraint XYZ
  • Then the merged composer.json should have that library

(I realize that there isn't actually a merged composer.json file, and this all happens in the composer plugin logic, but the point is the same)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions