Skip to content

[feature] Add named dependencies  #15119

Open
@lo1ol

Description

@lo1ol

What is your suggestion?

Hello!

I noticed that there is some requirements by users to be able have several dependencies with the same name but with differences in versions, options or settings:
#660
#4407

I faced with both of this problem: one of my package depends on openssl 3.0 and openssl 1.0 at the same time (in tests). And one of my package depends on some package with different options. There is one workaround for this: include name version or option in name of package. But it still workaround...

I think that this problem can be resolved by adding custom names to dependencies.

self.requires("pkgA/1.0")
self.requires("pkgA/2.0", alias="pkgA_2")
self.requires("pkgA/1.0", options={"option": "value"}, alias="pkgA_modified")

So, generators can search this packages by alias names instead of real names, hash of the requirements should contains alias names conaninfo.txt should contain aliases names instead of original package names.

May be there are some restrictions in implementations of this. But I just want to show you a possible concept.

What do you think about this?

Have you read the CONTRIBUTING guide?

  • I've read the CONTRIBUTING guide

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions