Thursday, 3 April 2025

Re: Consistency of package versioning in Ubuntu-only packages

On Thu, Apr 3, 2025 at 12:14 AM Michael Hudson-Doyle
<michael.hudson@canonical.com> wrote:
>
> On Thu, 3 Apr 2025 at 02:56, Robie Basak <robie.basak@ubuntu.com> wrote:
>>
>>
>> Could we agree that all Ubuntu-only packages SHOULD always contain
>> `ubuntu` in their version string (this would usually be -0ubuntuX or
>> 0ubuntuX[1] if native) then, so that we don't have to think about it?
>
>
> I think this definitely makes sense.

Yeah, it is one of those "was always ok cases, but details ..." cases.
But as soon as you made us think about it, all seem to agree that
there is a benefit in avoiding the future-sync-conflict by
recommending a version format that avoids it in the first place.

>>
>> Are there any reasons for an exception to this rule, where an autosync
>> would actually be desirable if Debian were to introduce such a package?
>
>
> I think there have been one or two times where we introduced a package in Ubuntu with the expectation that it gets added to debian later (I think we did this with golang-defaults maybe? and I can imagine it happening for versioned toolchain packages like openjdk-NN, especially during a debian freeze) but it's not like a manual sync is a lot of work in those cases.
>
>>
>> If it's not for a common reason, then perhaps an additional policy might
>> be that there SHOULD be something in debian/README.source that explains
>> any deviation from this.
>
>
> This makes sense too I think.

Yes, that allows the recommendation to be rather strong but not
painfully restrictive as it allows exceptions.
And then asking to leave an explanation in the package helps everyone
to understand.

> Cheers,

Work is ongoing to make everything that is ubuntu-docs less scattered.
But until then I'd say while the "right place" would probably be [1]
we should for now maybe prefer to consider adding it to [2].
As part of the ongoing efforts [2] is eventually meant to be reunited
with all the other sources we have (including [1]) and AFAIK today is
the best single place if you are trying to understand which version to
pick for an Ubuntu package upload.

I've prepared a - not necessarily complete - conversion of this
discussion to a PR [3].
Since there seems to be general agreement on the approach, how about
continuing there?
As we know, the hard details often come out when trying to write it all out :-)

One riddle I have for you at [3] is how to differentiate "Debian
native + SRU" from "Ubuntu native + SRU".
Or maybe that is scientific and the proposal as-is is already better
than what we have :-)

[1]: https://canonical-ubuntu-packaging-guide.readthedocs-hosted.com/en/latest/reference/package-version-format/
[2]: https://github.com/canonical/ubuntu-maintainers-handbook/blob/main/VersionStrings.md
[3]: https://github.com/canonical/ubuntu-maintainers-handbook/pull/161

> mwh
>
> --
> ubuntu-devel mailing list
> ubuntu-devel@lists.ubuntu.com
> Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel

--
Christian Ehrhardt
Director of Engineering, Ubuntu Server
Canonical Ltd

--
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel