Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • A asdf
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 62
    • Issues 62
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 20
    • Merge requests 20
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • asdf
  • asdf
  • Merge requests
  • !169

Draft: More expressive version strings and constraints

  • Review changes

  • Download
  • Email patches
  • Plain diff
Open Eric Timmons requested to merge iss50-versions into master Apr 18, 2021
  • Overview 11
  • Commits 49
  • Pipelines 14
  • Changes 31

The goal of this MR is to make specifying both version strings and version constraints more expressive.

We would like version strings to carry additional information, such as pre-release status.

We would like to expand version constraints so that system consumers can knock out known bad versions. Additionally, system developers should be able to communicate known incompatibilities to their users.

TODO:

  • Get confirmation that we want our default version strings to follow Semver grammar and ordering semantics. If not, decide on and implement another.
  • Get consensus that the version-related generic functions are extensible enough to allow someone to substitute their own version string grammar and semantics.
  • Implement version constraints (first take at documentation is complete).
  • Update ASDF's build scripts to support adding pre-release information to version strings.
  • Update ASDF self upgrade functions to account for new version string format.
  • Run ASDF upgrade tests to make sure older versions of ASDF believe that newer versions are actually newer.

Closes #50

Edited Nov 29, 2021 by Eric Timmons
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: iss50-versions