• Re: Question about splitting a source package with an epoch

    From Soren Stoutner@21:1/5 to All on Thu May 15 13:39:32 2025
    XPost: linux.debian.devel.mentors

    On Thursday, May 15, 2025 1:07:32 PM Mountain Standard Time Nicholas D Steeves
    wrote:
    Soren Stoutner <soren@debian.org> writes:
    Manuel and I would like to split this into two source packages, based on these two upstream source repositories:

    https://github.com/OpenTaal/opentaal-hunspell

    https://github.com/OpenTaal/opentaal-wordlist

    The current dutch package has an epoch for reasons that happened before we were involved with the package: 1:2.20.19+1-1.

    This doesn't look right, because

    $ rmadison hunspell-nl -s unstable
    hunspell-nl | 2:2.20.19+1-1 | unstable | all

    Ie: Wrong epoch, which I hope is just a typo. I also don't think
    ftpmasters will agree that a NEW package should have an epoch... I'm
    CCing -devel, because introducing epochs must be discussed there, and I
    count a NEW package as introducing an epoch.

    The changelog indeed says the current epoch is 1:

    https://salsa.debian.org/debian/dutch/-/blob/master/debian/changelog? ref_type=heads#L1

    Also, tracker.debian.org says the same thing:

    https://tracker.debian.org/pkg/dutch

    It is interesting that rmadison says differently. Is this some automatic adjustment in dak? If so, I would imagine that it would make sense to adjust the epoch to 2 in package changelog.

    If we create a new source package named hunspell-nl, it would also
    need to have the same epoch.

    Why not take the opportunity to remove the epoch? The upstream names
    are opentaal-hunspell and opentaal-wordlist, so why not:

    1. Create src:opentaal-hunspell and src:opentaal-wordlist
    2. Use bin:opentaal-hunspell[-nl] and bin:opentaal-wordlist[-nl]
    3. Create a dutch metapackage in one of these two NEW src:opentaal.* packages 4. Use versioned Provides, with epoch, in the dutch metapackage.

    I would love to, but the binary package names are not negotiable because they are set by Debian’s dictionary policy. For example, the hunspell-nl binary package needs to retain this name to match the other hunspell dictionaries. Similarly for aspell-nl, wdutch, and idutch.

    You can read over the policy with the following URL when the dictionaries- common-dev package is installed.

    file:///usr/share/doc/dictionaries-common-dev/dsdt-policy.html#AEN174


    On Thursday, May 15, 2025 1:41:16 AM Mountain Standard Time Santiago Vila wrote:
    El 15/5/25 a las 0:39, Soren Stoutner escribió:
    2. When moving the binary package to a new source package, should the old changelog be preserved? It seems even weirder to me to have a one-line changelog that says “Initial release” that already contains an epoch.

    I think it depends on whether or not you consider the new source to be
    a successor of the old one.

    For example, the hello package which did not use debhelper at first was "forked" to hello-debhelper. Because it was a "fork", it retained the old changelog.

    This is indeed a continuation of the existing upstream source, meaning that the source in the current package came from two different repositories (combined in a way different than what MUT would do).

    Creating a new source package and including the current changelog makes the most sense to me.

    --
    Soren Stoutner
    soren@debian.org
    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEJKVN2yNUZnlcqOI+wufLJ66wtgMFAmgmUQUACgkQwufLJ66w tgOTjBAAi5qIxoyXaotdpZh/R83nQpQf3KzOduGSsSxIBh7jt6BQcmSNS+dbdlLI Bggkf+dOr6ZcvveJtXeKWoE82gpTLDrzQnCBTQDFULZsd/zhXN8lhieQV587fIc7 UhONThmQ8mACd3nnx9oD55EYxee0SEatCfD2HSfG0pgrarblXLLAj9DNXc/X+fUB tm52U8Hw10TV0M1gvv5RR5EJrHmkZZDtgP6KqvhuQB+01qvTUcYBSJJFOFUNbnm0 ZUim8KhkMSG2/40b1F/3VPTqEzCtul+L2o+SgITG+PYyYVpXrMeLVMJFubZGhCuS 9BOpIaABXIWPDOoV1P5v6ZgOLe+1jF43WLQQbYGWTeti4S0JTmJ6C1zgMU+sOfYL 1Nx1h/seQSj7Z53XgHl8v4NxrI0DZUUMtVBYfoynBbP7n74FF/BFRSqnXS8HQnw4 Eo1H1Q+4yldVdIcuGiIadI63XwqVdEy8V/ME6+gJfgse5A0UKsauG3rizy1L4kOT VTrEG3BgAt4uv45Lo0k21j/hSf+exeAd2CqKb5toYwQSAj/7gvyeRNXm1wnsCTgC EjHuAk9exdJUVPk3CbAMRDv9yV3Vw8swDEz7eYKNRbdSEMxahLRfmcHZ6JTSu6j+ zpaejs7hHfvFNu1xin69EmLsr3uPdDxzzH2q9u1l2e+5ONjL18k=
    =e5Fi
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Simon McVittie@21:1/5 to Soren Stoutner on Thu May 15 23:00:01 2025
    On Thu, 15 May 2025 at 13:39:32 -0700, Soren Stoutner wrote:
    The changelog indeed says the current epoch is 1:

    https://salsa.debian.org/debian/dutch/-/blob/master/debian/changelog? >ref_type=heads#L1

    Also, tracker.debian.org says the same thing: >https://tracker.debian.org/pkg/dutch

    That's the version of the source package. The version of a binary
    package defaults to the same as its source, but it can be different, and
    in this case, it is:

    dh_gencontrol -p hunspell-nl -- -v2:$(DEB_VERSION_UPSTREAM_REVISION) — https://tracker.debian.org/media/packages/d/dutch/rules-12.20.191-1

    smcv

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Soren Stoutner@21:1/5 to All on Thu May 15 14:32:35 2025
    XPost: linux.debian.devel.mentors
    To: debian-mentors@lists.debian.org

    On Thursday, May 15, 2025 1:54:36 PM Mountain Standard Time Simon McVittie wrote:
    On Thu, 15 May 2025 at 13:39:32 -0700, Soren Stoutner wrote:
    The changelog indeed says the current epoch is 1:

    https://salsa.debian.org/debian/dutch/-/blob/master/debian/changelog? >ref_type=heads#L1

    Also, tracker.debian.org says the same thing: >https://tracker.debian.org/pkg/dutch

    That's the version of the source package. The version of a binary
    package defaults to the same as its source, but it can be different, and
    in this case, it is:

    dh_gencontrol -p hunspell-nl -- -v2:$(DEB_VERSION_UPSTREAM_REVISION) — https://tracker.debian.org/media/packages/d/dutch/rules-12.20.191-1

    smcv

    Thanks for the pointer. Cleaning up the debian/watch file was one of the checkboxes in splitting it into two source packages, and I had not yet read over it closely enough to realize it was making this change there.

    Interestingly, it only does this for the hunspell-nl binary package, not for the other binary packages. This ends up working out well for the package splitting plans because the hunspell-nl binary package will end up with its own source package which can be epoch 2, while aspell-nl, wdutch, and idutch will all be build from the other source package, which can remain epoch 1.

    Based on the comments so far, I am inclined to create a new hunspell-nl source package that produces a single hunspell-nl binary package with an epoch of 2 to match what is currently used. I will retain the old changelog history for this new package.

    I will also modify the existing dutch source package to only include one upstream source that can be appropriately followed by debian/watch. It will continue to produce the aspell-nl, wdutch, and idutch binary packages, which will remain at epoch 1.

    Are there any objections to handling it this way?

    --
    Soren Stoutner
    soren@debian.org
    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEJKVN2yNUZnlcqOI+wufLJ66wtgMFAmgmXXMACgkQwufLJ66w tgO5dw/9HHzUyM0887xFdCpayM7oXy8w+H9ZIyjhfnH5npth0Ij+pXD5vRSrCYva iZUlHujlurA27Tw3hZWrGYwPIzcwPYbz6ttchmWwdn/If9Yb4IsVvRMd2glGs9Ph hxPqo32EIN3zD851D0AM0/MGtXMFfqZzU61OXwVcwnzCFAA4hyLeRzY6Qh/qEoAg 8yD8dhspeeWIV7fY8uGG7w9lD6zeFdRC0UUVlZ7PaZ4m5EVoCFKHL2o5H5ZzheEg YVhs/BUx6nqq0ofyO2sXu9LznM7fY0X/N6oc0O1pyIYtpZyR3zSC7UMTOZ2xs8yH 1t5eIRGrRDDMMiM8fDJxHgkAe9NFuy/CiFkjboGWJuR2hP37W+pJB/m5vbg64tew iT2GhXMbgi0p12Zj1PHnjpuJ7BKfHJ35HbpsvTCzVMUE7Y1CNPmQD1onBMCjSVmJ RWmTuyOvEcXU9HhQzWJxwJ6QXjA4gttH3rOe86QPV6/Ac6rXfVlZoySdayAUZzpJ MtTCqNrlo3Sa24QNSYfhi5cMzojVXYNtJ6wZrSkR1QtaSaQK5rmcYKQE29QZ1g/l ZJcmpEV8z00V0LBKQaIMDq7nPbRCm5b1HKgg8ZbwRkUee+vI8uUluHrqvs7dNuno vYOZtMA/gkfnbAF6DTZXgzGd1CcUy6CjaUYmpe6lZL4Dp63ZArk=
    =H+ZO
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Nicholas D Steeves@21:1/5 to Soren Stoutner on Fri May 16 01:00:01 2025
    XPost: linux.debian.devel.mentors

    Soren Stoutner <soren@debian.org> writes:

    On Thursday, May 15, 2025 1:07:32 PM Mountain Standard Time Nicholas D Steeves
    wrote:
    Soren Stoutner <soren@debian.org> writes:
    Manuel and I would like to split this into two source packages, based on >> > these two upstream source repositories:

    https://github.com/OpenTaal/opentaal-hunspell

    https://github.com/OpenTaal/opentaal-wordlist

    The current dutch package has an epoch for reasons that happened before we >> > were involved with the package: 1:2.20.19+1-1.

    This doesn't look right, because

    $ rmadison hunspell-nl -s unstable
    hunspell-nl | 2:2.20.19+1-1 | unstable | all

    Ie: Wrong epoch, which I hope is just a typo. I also don't think
    ftpmasters will agree that a NEW package should have an epoch... I'm
    CCing -devel, because introducing epochs must be discussed there, and I
    count a NEW package as introducing an epoch.

    The changelog indeed says the current epoch is 1:

    https://salsa.debian.org/debian/dutch/-/blob/master/debian/changelog? ref_type=heads#L1

    Also, tracker.debian.org says the same thing:

    https://tracker.debian.org/pkg/dutch

    It is interesting that rmadison says differently. Is this some automatic adjustment in dak? If so, I would imagine that it would make sense to adjust
    the epoch to 2 in package changelog.

    "adjusting" the epoch also requires discussion, and consensus, on -devel

    If we create a new source package named hunspell-nl, it would also
    need to have the same epoch.

    Why not take the opportunity to remove the epoch? The upstream names
    are opentaal-hunspell and opentaal-wordlist, so why not:

    1. Create src:opentaal-hunspell and src:opentaal-wordlist
    2. Use bin:opentaal-hunspell[-nl] and bin:opentaal-wordlist[-nl]
    3. Create a dutch metapackage in one of these two NEW src:opentaal.*
    packages 4. Use versioned Provides, with epoch, in the dutch metapackage.

    I would love to, but the binary package names are not negotiable because they
    are set by Debian’s dictionary policy. For example, the hunspell-nl binary
    package needs to retain this name to match the other hunspell dictionaries. Similarly for aspell-nl, wdutch, and idutch.

    Understood, and my binary package names are just a suggestion. We have
    an obligation to avoid epochs whenever possible, and the way that we do
    this is by deductively eliminating alternatives such as Breaks,
    Replaces, and Provides. Maybe I missed part of this thread? If so,
    where can I read that this was demonstrated?

    Thanks
    Nicholas

    --=-=-Content-Type: application/pgp-signature; name="signature.asc"

    -----BEGIN PGP SIGNATURE-----

    iQJEBAEBCgAuFiEE4qYmHjkArtfNxmcIWogwR199EGEFAmgmcTIQHHN0ZW5AZGVi aWFuLm9yZwAKCRBaiDBHX30QYdMpEACbEfzkuGXQILvGgytVKcdjiYL1SGEE1CWD pF44pnHnrgP/VBbfXu4Gi5ruwSHjG3mLo+Gcl+xpoWvrHzX42UfTO30BQy2KukqB 2Q82NQqPEEZbhBy4efRArLWbief9m88stg5Z+7NR4n+Bv3fVHycQ7AoO9vStprak 02SUnqNs+p9XrV+Slo8oOYjTr8JgfohfyPMonkPlU+nU2HxHNkMq07SUt7xFZzSi mP503gojmaBO4Xpc4cO8LkPXD7LtS0fAKRpNx/Pw8OfG0MR8lqdYM733LFchG9Q5 4GyA/Hzf/EK7bM/hqWPambcV08li7VeXVEUfhEsphkrXre+Dg1y6WDWU0G+dGzgv 6YSfk66PSn7jJ6Ytu6XgmvWM9VPD6vixfVr2IzfoiRTUnW4EGMYQFcBEQe6bVKRX 1sGgBi/w+in1j6KPZGvsFRQHsJA2BK4acrFJ3XadY+fux3MfDrQOwUJ3NYvYuvmm iHcANnZGVvBX1UMkquB9QFH4QaNejHDaSTC1rGZrgt6dPMVAo39tP7SSXLPXantB 7LHGC+aGeUP86qpsKQsoIF/U0ChrRvvwdmfnRxEYp1yLs+unOh0XeTD60O7fzu0F 9PFii+3+84y9Sx82falVno+FmWidIxS3dX5wnzHNuCLIZbRU+v4YTAtQYGOTjgy/
    2hEsz4oxVw=5a
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Soren Stoutner@21:1/5 to All on Thu May 15 19:50:45 2025
    XPost: linux.debian.devel.mentors

    On Thursday, May 15, 2025 3:56:50 PM Mountain Standard Time Nicholas D Steeves
    wrote:
    "adjusting" the epoch also requires discussion, and consensus, on -devel

    As far as I know, nobody is proposing adding or adjusting any epochs. All of these binary packages are going to end up with the same epochs they already have.

    We have
    an obligation to avoid epochs whenever possible, and the way that we do
    this is by deductively eliminating alternatives such as Breaks,
    Replaces, and Provides. Maybe I missed part of this thread? If so,
    where can I read that this was demonstrated?

    I completely agree. I detest epochs and do everything I can to avoid using them.

    The background (partially explained in the first email) is that this is a package I recently salvaged. It has never had a working debian/watch file and cannot have one in its current state because the original maintainer combined sources from multiple upstream sources with potentially distinct release schedules.

    As part of bringing the package up to Debian standards, I need to split it into two source packages that match the upstream repositories. At some point in the past, an epoch was added to this package. I am unaware of the history of why this was done. I also don’t know why one of the binary packages has an
    epoch of 2 (something I learned in this email chain), while the other three have an epoch of 1.

    As much as I would like to get rid of the epochs, I don’t see any way to do so.

    My original question (posted on debian-mentors) was not really about how to handle the epochs of the binary files, but how to handle the changelog files. I have never split a source package before, and certainly not one with an epoch. I assumed that the new source package needed to start out with a new debian/changelog, and creating one with a single entry with an epoch seemed wrong to me. However, it was pointed out that when splitting a source package, it is appropriate to maintain the debian/changelog history, in which case I can simply explain in the changelog that the binary package was moved to a new source package and the previous debian/changelog history will make it obvious why the epoch was maintained.

    --
    Soren Stoutner
    soren@debian.org
    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEJKVN2yNUZnlcqOI+wufLJ66wtgMFAmgmqAUACgkQwufLJ66w tgMbww//X4rDBPzIp1Fe3sZfGAPplPryJyLPFKDCrvEVJ+vo4RE38bT5zZD+/zTI n+HhKPcYBB+V1HkeHcE7X5Ls8H2f6RBpJoUXYURVo03Bw+0teUKtPDbqQv3o9B07 WPbrfs+yfNo1qbhA8ytpVWikxAfku5HgVneDa7qBT61kSoM1Kz7MuXm1ltbJZaQ8 UDGig6bDUMo0ZwbIxiuLgM8Sx6qxfxhaNM4YcyASD6Qtpvr6aR5jmWdP9uWXUzkT iCyD1anm9lzNWo3wVq8t79xtfSPWxgQs/9fQh7EFy2KicRjBQkANWEfHjADFppSZ s/+u+/RfJm9Bgr0PW1WbfH3mQIHUfHc3BRonQW1oFNA+v5N6Uc5fl83Fo4lU3MnS KNQb5oopZtNwe/+RmSJjQ62b9m+ktO75ubDpyuQOV0xf34tOJV3/cIbhK7dnMqcz x2JdOAEU8Cf1WPhKQqNgo6XpBwb8VK3uWIQUzY6c5fvn9+54aa5p9RFECo/d1wpp MUP5QoX0MeQ17YY92xOZyIincvOfljevMnAsx8dr4ESRYpJRNxhoN0gcdcydjhxO iGAePKY2iomVf8uiYtmTxWis6RCEqisVJtBnlTLNT2p040fW0LXRjTiniO+eL9Kg zlRb1klCJbBDHhspcPaLeAp5E6I8x5h350iyaigt8doBg/Rev3U=
    =M/iD
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Nicholas D Steeves@21:1/5 to Soren Stoutner on Fri May 16 23:00:01 2025
    XPost: linux.debian.devel.mentors

    Hi Soren,

    Soren Stoutner <soren@debian.org> writes:

    On Thursday, May 15, 2025 3:56:50 PM Mountain Standard Time Nicholas D Steeves
    wrote:
    "adjusting" the epoch also requires discussion, and consensus, on -devel

    As far as I know, nobody is proposing adding or adjusting any epochs. All of
    these binary packages are going to end up with the same epochs they already have.

    Do you disagree with the following?: You're creating two new source
    packages that have to pass the NEW queue, you're adding epochs to them,
    and your rationale appears to be thus: Because the old multiple-upstream
    source package has an epoch, therefore both NEW source packages should
    have an epoch.

    There's nothing in dsdt-policy about source package naming.

    Yes, the NEW binary packages need to provide a greater version than the
    old ones, because otherwise upgrades won't occur; No one is saying they
    don't need to.

    We have
    an obligation to avoid epochs whenever possible, and the way that we do
    this is by deductively eliminating alternatives such as Breaks,
    Replaces, and Provides. Maybe I missed part of this thread? If so,
    where can I read that this was demonstrated?

    I completely agree. I detest epochs and do everything I can to avoid using them.

    I'm happy to hear that, and I hope that you'll be happy to see that
    there's a cool solution!

    The background (partially explained in the first email) is that this is a package I recently salvaged. It has never had a working debian/watch file and
    cannot have one in its current state because the original maintainer combined
    sources from multiple upstream sources with potentially distinct release schedules.

    Thank you, and I gathered this much :)

    As part of bringing the package up to Debian standards, I need to split it into two source packages that match the upstream repositories. At some point
    in the past, an epoch was added to this package. I am unaware of the history
    of why this was done. I also don’t know why one of the binary packages has an
    epoch of 2 (something I learned in this email chain), while the other three have an epoch of 1.

    Are you going to preserve the git and imported SVN history? Is the
    rationale for the epochs somewhere in that metadata? Obviously there's
    no need to check if your plan is to eliminate the epochs.

    As much as I would like to get rid of the epochs, I don’t see any way to do
    so.

    Here's how: Use accurate upstream versions in two NEW source packages.
    Their binary packages gain versioned Provides [and Breaks and Replaces,
    if appropriate]. In two Debian releases (forky+1), you can you drop the Breaks, Replaces, and Provides. Thus, packages without epochs replace
    the packages with epochs, and a pox on the archive is removed.

    You can test this by putting the new binary packages generated from the
    NEW source packages into a local apt repository. Their "actual
    versions" are inferior to the bin packages currently on your system, but
    the versioned Provides will take precedence and sort higher, and apt
    will install the seemingly lower-versioned replacements. Don't forget
    to increment the Debian revision on the versioned Provides ;)

    I have never split a source package before, and certainly not one with an epoch. I assumed that the new source package needed to start out with a new debian/changelog, and creating one with a single entry with an epoch seemed wrong to me. However, it was pointed out that when splitting a source package, it is appropriate to maintain the debian/changelog history,

    There are multiple solutions to the changelog and package history
    problems; do what you feel is best.

    in which case I can simply explain in the changelog that the binary
    package was moved to a new source package and the previous
    debian/changelog history will make it obvious why the epoch was
    maintained.

    This is not the case, and it will not make the rationale for the epoch
    obvious, because earlier you wrote

    At some point in the past, an epoch was added to this package. I am
    unaware of the history of why this was done. I also don’t know why
    one of the binary packages has an epoch of 2 (something I learned in
    this email chain), while the other three have an epoch of 1.

    which indicates that the changelog is insufficient to explain to the
    current maintainer why there is an epoch anywhere in the old package.
    If it's not obvious to the maintainer, would it be obvious to anyone
    else?

    Cheers,
    Nicholas

    --=-=-Content-Type: application/pgp-signature; name="signature.asc"

    -----BEGIN PGP SIGNATURE-----

    iQJEBAEBCgAuFiEE4qYmHjkArtfNxmcIWogwR199EGEFAmgnpWYQHHN0ZW5AZGVi aWFuLm9yZwAKCRBaiDBHX30QYXo1D/4tc7Dh8XkOUSrHyJltoVAGrEB7aXVfDDqJ 1LmijsmagYZEv7Slq0IWPL5T0q6wwWnKlvCmsVh9iWIvU/3p/4V1N/dTmOoJPLj0 VIC2APQ2Ek+aPvR5zKv5ZMIhD6+2rcfAyVTV8cd+NaMbcTnkcHO2VtwA99Kx6lLt wLjPfaFAMtQKiO7y1rNoxLlWaj3WlOIXRHx6Jz327wksJl6ofZednZ68+BAkEFuH XmTdnbWILUUh85gqFtOoir3nS+9UruNqX0bL3aWJjy0DA4pIKf0Rz2AK0qvAAZn1 uXKwUMwdupT5c8VdxeRQrsDnqy5sQ3ND9JfI/phQeEhGEjDhPXQs75jLjKtNlJAf vXyW6ZK7ddlnEiX+b9qF7ajNnKTLf3ZqgQqd9UKeHKTYpkU+ZIeKDjYjOzxzJHAo DQuDr35BhwET7BhB0IHI+F+MVWHa1nralFe+k3N+CzCr98IXunua84dsV3rNH1/a 2VOqBsUD/rBnnMhTiMjr/kB72UqdNcUFMKoPZAvnxsuv1eWq3sIe1YBYeHqtViug L0osHRbYdGcbTwanDFObXNWVGPV4I+wzJUIif5DOnfOcNlQyoYVUZ3lypLXrnbuP Kzm3lEBgR8GNXlAEd8HlUEzLFkCcUQYXQwuvyU58fCqlSQ+IGbFO8Oic3bhigWJr zsFsv73eJg==W59r
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Soren Stoutner@21:1/5 to All on Fri May 16 15:26:09 2025
    XPost: linux.debian.devel.mentors

    On Friday, May 16, 2025 1:51:49 PM Mountain Standard Time Nicholas D Steeves wrote:
    Hi Soren,

    Soren Stoutner <soren@debian.org> writes:
    On Thursday, May 15, 2025 3:56:50 PM Mountain Standard Time Nicholas D Steeves>
    wrote:
    "adjusting" the epoch also requires discussion, and consensus, on -devel

    As far as I know, nobody is proposing adding or adjusting any epochs. All of
    these binary packages are going to end up with the same epochs they
    already
    have.

    Do you disagree with the following?: You're creating two new source
    packages that have to pass the NEW queue, you're adding epochs to them,
    and your rationale appears to be thus: Because the old multiple-upstream source package has an epoch, therefore both NEW source packages should
    have an epoch.

    Actually, my plan is to create one new source package and to refactor the other existing source package.

    There's nothing in dsdt-policy about source package naming.

    No, but there is about binary package naming. Quoting from the policy.

    "Language-specific ispell dictionary packages and wordlists *must be named* the classical way, like "ifrench", "wfrench", "iswedish", etc. Use of non- English language names is discouraged; for example "ingerman" should not be named "indeutsch". (This is based on existing practice, and is for consistency and the convenience of Debian administrators in all languages.)”

    "myspell dictionary packages *must be called* myspell-<isocode> and hunspell dictionary packages *must be called* hunspell-<isocode> (<isocode> being the two-digit isocode of the language). Use the myspell prefix for myspell dictionaries and the hunspell prefix for hunspell only dictionaries that use hunspell features."

    I agree that if it were possible to modify the binary package names for one release cycle it would be possible to remove the epochs. And, if this were a different type of package that did not have a naming policy, I would do so (because I really dislike epochs).

    But in this case, doing so would be both against policy and not in the best interest of users, because when searching for dictionary packages there is an expectation they are able to find them using the canonical names.

    --
    Soren Stoutner
    soren@debian.org
    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEJKVN2yNUZnlcqOI+wufLJ66wtgMFAmgnu4IACgkQwufLJ66w tgMkPBAAryy5eptqw8Grwy/XLIWrvYUcQkIIQqn7SAQ2BtFt7tpSXLkAcD5MC/N0 qygQDjJfsOzG2SqLnM6Vgtxws6+LANXnY3TVr0yPt2f88LDOJ4Xz8L4Wr8YIE25W wSaDQXOUi1saHFIcv3qhjV1GdbpXXbsXaWujlWQbHpRYpkLafL0U3XAXLE0VmD2+ UeZFD84EIBUlMqzgCbYmGIMcJWbEmpb5ArPXJNsfoIEKMvpdHD9w19NFnONZYKZ2 JvyO1DNV8TtCZFvRkUGYo4Oqm6IVq8JW2jXvPq+zd3e+4W3oiYQg5K1OrlZ59YPZ /Bx8gOfnebfrfCE18h94Y1k3ErOLv+77gisYT+bLvwZ2yZNSWzQFiPZzBmynMVpI fcvxt4+EMyUWhGYxQIVVnNOdqF8o7juhK+TBP0riTs0r3lFbiSHwS9wqP0vdUlT/ 8U3zvdomvVKtw2E3dM8Eyoh2UHZ2W521FbLb+yOs9VVjAjm6rAtMkB4vspJejZak A7Q1PiG4XuDQihOnHV4tmWc2IAHulBhSWmIn30RI6ltQOyaN3Eb7pGo/ald0ZXLE 9P9iFt+i16Bgklo6jkqj3BLUNc3rbLh3uoRSmOaCMVyS2TnJ4p+WD2B2NPYRd+GP FR9B3n2Ob2UTz+S8MynVoYPCbZkzz+IWPVvwh/uEJDjCo8m53Dw=
    =Ig8X
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Holger Levsen@21:1/5 to All on Sat May 17 11:10:01 2025
    hi,

    seriosuly, I would not bother about the epoch, and just live with
    it. iirc 10% of the archive has an epoch, so meh.

    Removing over two releases is risky and errorprone, eg. you need
    to make sure not to reuse versions etc pp.

    An epoch might be a bit ugly, but overall it's completly harmless.


    --
    cheers,
    Holger

    ⢀⣴⠾⠻⢶⣦⠀
    ⣾⠁⢠⠒⠀⣿⡁ holger@(debian|reproducible-builds|layer-acht).org
    ⢿⡄⠘⠷⠚⠋⠀ OpenPGP: B8BF54137B09D35CF026FE9D 091AB856069AAA1C
    ⠈⠳⣄

    War is peace. Freedom is slavery. Covid is like the flu.

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEuL9UE3sJ01zwJv6dCRq4VgaaqhwFAmgoUP4ACgkQCRq4Vgaa qhyT5Q//ZElpKbA8x8Ioep4UvAfkNZqJ12SRonFXL3KM6Rt2anSZ2HP/QsQcyclt hghuoVyecFja3hPXzRXJv4lPC0MY0YBoeZ08DqtgoUHbUXdL9BzCLaOSd7HIAXPf +Ww9WniMcWepnYMpccsTZS3v6ZAPSx0vDMS2dVxrWJqNrwJNmutJvoLPetngL/sN Ou4cdhZqK52/7mlLbHnOU/R0N0Qawnqj9ORQc04bJSkIRae5y2mr0Slne2Xkm/g6 44AQT4xw2KV8PYEJlL/STrkxT4ZmATxM5SttYFytgvwKX2CgHHTqBeVpz+DOoFcA 03VbqqP0Z7uBfkDlJU/fqGIJRDaT5TS4KbLCt1XqgUfjWgmm1s7VptC8ZZxbxi8h mfRni5subq3NWgfvYdOVgd+T203uuyIc/2djDPIeIA5jFmzDreUTllapGr1ns7XK Ttb6AQ+vIdVwHpZLql7/OGGOvCMVQf96sePcOrlyAfQPwrcI2XotRdqgL/x5l2zy Uop1UtcBwud5NJEYVwHUFqt8bbmydXydBp8pEJRiTyKvwwgut6RdcgIB2OvlvgNw gVm3JR1C5inYo8VvXjFJn83eqX+87snFhjk95SU/U3cXkBTc65NwXgJO
  • From Andreas Metzler@21:1/5 to sten@debian.org on Sat May 17 11:30:01 2025
    XPost: linux.debian.devel.mentors

    On 2025-05-16 Nicholas D Steeves <sten@debian.org> wrote:
    Soren Stoutner <soren@debian.org> writes:

    On Thursday, May 15, 2025 3:56:50 PM Mountain Standard Time Nicholas D Steeves
    wrote:
    "adjusting" the epoch also requires discussion, and consensus, on -devel

    As far as I know, nobody is proposing adding or adjusting any epochs.
    All of these binary packages are going to end up with the same epochs
    they already have.

    Do you disagree with the following?: You're creating two new source
    packages that have to pass the NEW queue, you're adding epochs to them,
    and your rationale appears to be thus: Because the old multiple-upstream source package has an epoch, therefore both NEW source packages should
    have an epoch.

    There's nothing in dsdt-policy about source package naming.

    Yes, the NEW binary packages need to provide a greater version than the
    old ones, because otherwise upgrades won't occur; No one is saying they
    don't need to.
    [...]
    As much as I would like to get rid of the epochs, I don’t see any way to do
    so.

    Here's how: Use accurate upstream versions in two NEW source packages.
    Their binary packages gain versioned Provides [and Breaks and Replaces,
    if appropriate]. In two Debian releases (forky+1), you can you drop the Breaks, Replaces, and Provides. Thus, packages without epochs replace
    the packages with epochs, and a pox on the archive is removed.
    [...]

    You seem to propose:
    status quo: foo-binary: 2:1.2.3-1
    trixie: foo-binary: 1.2.4-1/Provides: foo-binary (=2:1.2.4-1)
    forky: foo-binary: 1.2.4-1/Provides: foo-binary (=2:1.2.4-1)
    forky+1: foo-binary: 1.2.4-1 without provides

    That is too fragile, it will break (by downgrading) on an old entry in
    sources list or a local repo.

    More generally I also do not think the net-win justifies the work and
    risk. epochs are not aestically pleasing but we are used to dealing with
    them. I think the huge win of Stouter's plan is to get rid of different versions for source and binary packages, that is something we rarely do (compared to epochs).

    cu Andreas
    --
    `What a good friend you are to him, Dr. Maturin. His other friends are
    so grateful to you.'
    `I sew his ears on from time to time, sure'

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)