Skip to content
This repository was archived by the owner on Aug 4, 2026. It is now read-only.
This repository was archived by the owner on Aug 4, 2026. It is now read-only.

Disambiguate between includes and requires #45

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

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions