Skip to content

Disambiguate between includes and requires #45

@propensive

Description

@propensive

Dependencies may be inclusions or requirements. Requirements should not be exposed in the public API of a project. Only inclusions affect the build hash of a phase; changing a requirement shouldn't change the hash of downstream projects. Requirements can be shaded with Umbrageous automatically, and hence, different versions can coexist on the same classpath.

Conversely, if a project's dependencies contain two non-equal inclusions, then these must be resolved.

If a dependency is both an inclusion and a requirement, then it should be treated as an inclusion.

Metadata

Metadata

Assignees

Labels

coreDescribes core required functionalityenhancementAn improvement to existing functionality

Projects

Status

Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions