Skip to content

Remove -none and -any version range syntax. #6589

Closed
@phadej

Description

@phadej

They make version grammar non-declarative.

If we have grammar for Dependency as

PKGNAME OPTSPACE VERSIONRANGE

then valid package name foo and version range -any && >= 1 can be combined into

foo-any && >= 1

which isn't valid.

Yet, foo>=1 is valid (and often used).

Alternatively we can specify that space is mandatory before -any and -none tokens, that will make grammar less compositional.


TLDR; make version-range syntax so it cannot be interpretted as part of UnqualComponentName. Simplest solution is to require VersionRange to start with character not allowed in UnqualComponentName.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions