Skip to content

nixpkgs doc: version convention for pre-releases #26173

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from

Conversation

Zimmi48
Copy link
Member

@Zimmi48 Zimmi48 commented May 28, 2017

See #26108.

Verified

This commit was signed with the committer’s verified signature. The key has expired.
LnL7 Daiderd Jordan
This closes NixOS#26108.
@mention-bot
Copy link

@Zimmi48, thanks for your PR! By analyzing the history of the files in this pull request, we identified @edolstra, @edwtjo and @vcunat to be potential reviewers.

<literal>"pkgname-unstable-2014-09-23"</literal>.</para></listitem>
Also append <literal>"unstable"</literal> to the name — e.g.,
<literal>"pkgname-unstable-2014-09-23"</literal>.
If the package is a pre-release snapshot, the version can reflect this instead
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How do you know the next version number, if you are not the maintainer of the project?

Copy link
Member Author

@Zimmi48 Zimmi48 May 28, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can be applied only when the maintainers of the project clearly communicate the next version number and maybe I should clarify this but I didn't want to be too verbose. What do you think? Should I add the clarification?

In the use-case I have in mind (Coq), there is a clear communication on the next version with a roadmap, etc.

But in all the other cases, I'm very fine for continuing to apply the previous policy.

@FRidh FRidh mentioned this pull request May 28, 2017
7 tasks
@@ -254,10 +254,13 @@ bound to the variable name <varname>e2fsprogs</varname> in
dash) — e.g., <literal>"hello-0.3.1rc2"</literal>.</para></listitem>

<listitem><para>If a package is not a release but a commit from a repository, then
the version part of the name <emphasis>must</emphasis> be the date of that
the version part of the name should be the date of that

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be SHOULD and the next line be MUST, for clarity's sake?
ref: https://www.ietf.org/rfc/rfc2119.txt.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@a4d442663580 Do you mean, capitalized words?
If we want to follow this language recommendation for clarity sake then I would use "MAY" on line 261 instead of "can" and "MUST" instead of "should" on line 262.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, that makes sense. The date is sufficient for a version. And I suppose the case for 1.0pre as described in L261 happens when the pre-release cycle spans over several weeks.

@bjornfor
Copy link
Contributor

It sounds to me like this PR suggests that nixpkgs should make up release numbers for unreleased software. IMHO, that's wrong.

I suggest to use date version when upstream does not provide a version number and never will. (Yes, some do that.) If upstream do have releases, but you absolutely want to package something that upstream doesn't consider ready yet, then use a "git describe" like format. That provides a way to relate the newer version to the latest release in a way that none of the other formats do.

Adding "unstable" to the package name just means that now the package is disassociated from the original package. Why would we want that? I think the version number + optional lowPrio is enough and preferred.

@FRidh
Copy link
Member

FRidh commented Jun 6, 2017

@bjornfor unstable is in case two versions exist, a stable and unstable one.

@Zimmi48
Copy link
Member Author

Zimmi48 commented Jun 6, 2017

@FRidh That's not what the manual currently says:

If a package is not a release but a commit from a repository, then the version part of the name must be the date of that (fetched) commit. The date must be in "YYYY-MM-DD" format. Also append "unstable" to the name - e.g., "pkgname-unstable-2014-09-23".

And I interpret this part of @bjornfor's message:

Adding "unstable" to the package name just means that now the package is disassociated from the original package. Why would we want that? I think the version number + optional lowPrio is enough and preferred.

precisely as saying that it isn't a good idea to give different base names to stable and unstable packages (when the two are available) and if the goal is to avoid spurious updates, then lowPrio should be used instead.

@Zimmi48
Copy link
Member Author

Zimmi48 commented Jun 11, 2017

Closing because there is clearly no consensus to go in the direction that I proposed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants