Skip to content

Thoughts on versioning? #3

@abathur

Description

@abathur

I'm getting my ducks in a row to submit a nixpkgs expression for bashup.events. First, I want to check in on some versioning issues. (Nix's packaging instructions get a little nonsenical when combined with a package that doesn't have an official version number but does have multiple ~release branches.)

I think (caveat: this is the first first time I'm writing a Nix package for submission) the usual package name--with a single branch and no official version number--would be like bashup-events-unstable-2019-07-27 (from a template like: <package name>-[<unstable>-<date-of-commit>|<significant/stable_parts_of_version_number>]). Unfortunately, these instructions produce the same package name for both the bash 3.2+ and 4.4+ implementations.

I don't mind inquiring with them about how to name/version it, but first I wanted to see if you have any plans (like tagging official versions or starting a 5.x+ branch) that should factor in.

For some additional context:

  • Nix packages (and dependencies on them) are often declared via a symbolic name that leaves out insignificant precision (i.e. python2, python27, python3, python36, python37, python38). In this case it could produce version-specific names like bashup-events32 and bashup-events44. (FWIW: bash 4.4 is bash and bash 5.0.x is bash_5--don't ask me about the underscore... AFAIK it is not "correct", but I'll let PR review sort that out...)

  • We're supposed to use a bare name (i.e. bashup-events) when there's just one obvious primary package version. I don't think the docs for bashup.events imply an obvious primary package version, but in a Nix-specific context I'm at least tempted to call bashup-events 4.4+ the obvious choice because Nix already depends on bash 4.4 and will be moving up to 5.x soon.

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