Skip to content

shellFor doesn't filter based on transitive dependencies #1143

Closed
@TeofilC

Description

@TeofilC

The packages selected by shellFor.packages are not meant to be built by shellFor.

This breaks when, say, you have three packages A, B, C, such that A depends on B, and B depends on C.
shellFor {packages = ps: [ps.A ps.B];} would correctly not build either A or B. But shellFor {packages = ps: [ps.A ps.C];} would build C, since A requires B, so B is built. B in turn requires C and so C is also built.

The issue is that shellFor is only filtering out direct dependencies. We also want to filter out packages that transitively depend on things in packages. So, shellFor {packages = ps: [ps.A ps.C];} shouldn't build A, B, or C.

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