• Most optimal way to import NMU into existing git-builpackage repository

    From =?UTF-8?B?T3R0byBLZWvDpGzDpGluZW4=?@21:1/5 to All on Thu Oct 24 22:40:01 2024
    Hi,

    I occasionally run into the situation that a package has been NMU'd or otherwise updated directly into the Debian repositories,
    bypassing/ignoring that a packaging git repository existed. I was
    wondering what techniques other DDs use to
    1) detect that the git packaging repository was bypassed/diverged?
    2) bring the git repository back in sync with minimal effort?

    So far, I have settled on having the deb-src for Debian sid configured
    on my laptop (even though it is not running sid) and then inside the
    git packaging checkout directory run for example:

    gbp import-dsc --verbose --pristine-tar apt:j4-dmenu-desktop/sid

    This will both check if there are any newer uploads than what git
    knows about, and if needed, also download, apply and commit the
    uploads using the uploader as the git author. The result of this
    particular example is visible in https://salsa.debian.org/otto/j4-dmenu-desktop/-/commit/62ea4cd6df973138e3a452b09250510da5279db4

    I wanted to check if anyone knows any better techniques or mechanisms
    than trying to remember to run this command manually before working on
    a package?

    - Otto

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andreas Henriksson@21:1/5 to All on Fri Oct 25 09:00:01 2024
    Hello Otto,

    My way of working is very manual and possibly too labour intensive...

    On Thu, Oct 24, 2024 at 09:36:04PM +0100, Otto Keklinen wrote:
    Hi,

    I occasionally run into the situation that a package has been NMU'd or otherwise updated directly into the Debian repositories,
    bypassing/ignoring that a packaging git repository existed. I was
    wondering what techniques other DDs use to
    1) detect that the git packaging repository was bypassed/diverged?

    apt-cache policy $pkgname (probably better to do rmadison or something
    if you don't have all repos in your sources.list) and compare to head debian/changelog of the source I'm about to modify.

    2) bring the git repository back in sync with minimal effort?

    1/ Look if there are any open merge requests on the salsa repo.
    2/ Look at the close bug reports in the NMU and see if split up
    patch series has been posted there.
    3/ import the NMU as a single commit.

    (Ofcourse for both 1 & 2 it's also needed to verify the diff actually
    matches what was uploaded, which happens more often then you would think
    is not the case.)


    So far, I have settled on having the deb-src for Debian sid configured
    on my laptop (even though it is not running sid) and then inside the
    git packaging checkout directory run for example:

    gbp import-dsc --verbose --pristine-tar apt:j4-dmenu-desktop/sid

    This will both check if there are any newer uploads than what git
    knows about, and if needed, also download, apply and commit the
    uploads using the uploader as the git author. The result of this
    particular example is visible in https://salsa.debian.org/otto/j4-dmenu-desktop/-/commit/62ea4cd6df973138e3a452b09250510da5279db4

    I wanted to check if anyone knows any better techniques or mechanisms
    than trying to remember to run this command manually before working on
    a package?

    I would very much prefer if it was possible in Debian to not allow
    the archive to get out of sync with packaging git repo (for example
    when it lives under salsa.debian.org/debian which uploaders should have
    access to already).
    That would probably also require some "tag to upload" solution to be implemented first I presume.


    - Otto


    Regards,
    Andreas Henriksson

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andrey Rakhmatullin@21:1/5 to All on Fri Oct 25 09:30:01 2024
    On Thu, Oct 24, 2024 at 09:36:04PM +0100, Otto Kekäläinen wrote:
    Hi,

    I occasionally run into the situation that a package has been NMU'd or otherwise updated directly into the Debian repositories,
    bypassing/ignoring that a packaging git repository existed. I was
    wondering what techniques other DDs use to
    1) detect that the git packaging repository was bypassed/diverged?

    What's the problem here? You can simply assume that a NMU wasn't committed
    but if you really need to check you can look at the tags and/or debian/changelog?

    2) bring the git repository back in sync with minimal effort?

    So far, I have settled on having the deb-src for Debian sid configured
    on my laptop (even though it is not running sid) and then inside the
    git packaging checkout directory run for example:

    gbp import-dsc --verbose --pristine-tar apt:j4-dmenu-desktop/sid

    If gbp import-dsc works then I don't think there is a better way.
    I thought you are asking about repos that have changes committed into them since the previous maintainer upload, but I don't think there is an
    automated way to update those.

    --
    WBR, wRAR

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

    iQJhBAABCgBLFiEEolIP6gqGcKZh3YxVM2L3AxpJkuEFAmcbSGUtFIAAAAAAFQAP cGthLWFkZHJlc3NAZ251cGcub3Jnd3JhckBkZWJpYW4ub3JnAAoJEDNi9wMaSZLh eC8P/0pOnaF1hHS1iiY1m92vR1LI65p01zWz7WsSitx6xA3t2m7zQth69ETW5ss6 wqzdvQExFYzHnzypS1yJ8BRGj7cpaiHtAOPqBjNOzrCmLvF+Kvu6j7zBxqYhV8Ay eLKB2fYpaSt2zaIR3AjFyfs3t8rmgMm4GAj7aCtW/5liJzscMp8WmiFRo/UFHX3e 4jq8WYR2iO+8RCnT8f0SQ4KNtcB2lcIBXvc+kTvBGK3vfIP4GDsclkBhURY5HESE JZR2IXdcvrUzCOH9e1u3vbZudzAcYWj/lperRaPbxRtO9gfGlg4tUwVA2YwS00R+ 8SNsSvnIM7xE1RyAljbkumtwwpiU7t4Fra5TLchYmJlAfCHLcbfNIx776nR1/d/d hAQKHEpxVoNG7HA6M3qyAb1sR0Ws3YH8q6NPwGRMKCX0IdSCvmLggFZzuY5OgSbe d+xtd5EA2GzUNiEXsUQWwpJqhZio3YT32JXgBwj4xZZllQzkMev8Yk5Rvwb3rZ7D /2JEOUezabSsqFXmCjWFQ024U0LVK3t01nUZFYAjLLwxLblnHKZU0rq9D0uakdyu hl/R7BQrhW2V7AoBoedYTJS+3v8jEqrth694yLwwqSd5hOlyMI/ewt4cSbma5zj/ lXSkazvn+U7DsZfs5j4S3hIifXhZJA5EbX0j0UZE9FQyJPbW
    =BOXy
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andrey Rakhmatullin@21:1/5 to Andreas Henriksson on Fri Oct 25 09:40:02 2024
    On Fri, Oct 25, 2024 at 08:45:16AM +0200, Andreas Henriksson wrote:
    I would very much prefer if it was possible in Debian to not allow
    the archive to get out of sync with packaging git repo (for example
    when it lives under salsa.debian.org/debian which uploaders should have access to already).

    This requires making it easy for NMUers to commit changes to any such
    repo, which requires standardization, which won't happen.

    Besides, I'm not sure what would I do with a repo with unreleased changes
    that I don't want to include in the NMU, so that part of the workflow
    needs to be discussed and standardized too.

    That would probably also require some "tag to upload" solution to be implemented first I presume.

    Not sure what's the logic here, but I feel like what you thought about may require some "tag to upload" solution not to be just implemented but also mandated, which won't happen.


    --
    WBR, wRAR

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

    iQJhBAABCgBLFiEEolIP6gqGcKZh3YxVM2L3AxpJkuEFAmcbSrktFIAAAAAAFQAP cGthLWFkZHJlc3NAZ251cGcub3Jnd3JhckBkZWJpYW4ub3JnAAoJEDNi9wMaSZLh 76oQAI/kDfEwAvbv5CFM/iICYY7J4FiUEnZ7TFTfri76JadwC16B+j8h/nC5EkrR GxLJD1JKOlH3agTk2UUB6MC7kWqb99L00x1Fmz3GR33wNblXuvveUcG09g0eA5/s Uw0Mhm2XntbQ97AuOnuo2r6Okkk2iBAAzd7r1TRIXnRZxKAO1ZLjkNalen5cwa3q SY7EfUw9ndQ8DoNXvH+WErO+EaigSsohDncZ3o5cwyvXt5bG3QdWewrBEEJw+2Ao fSRzqPq7dZT3/UlKLPtLlC2/fTIPyAnmcpO7onwMdHtBmMqHEfmpRxi741wccHGX 5gtl8ERSGQ6/7s4NywjlUc+wZ5BEyiQ+c0vxZl4rpVrhbdihJaumlDnd5nRaGgUj hWiBB7kwaen94Slbd9Q92UL3TAZwVz4UoEt0/5j0dqttubUNBpnwmgeuFQLbbSVc esN2AAQztbMhoJbN9DhJI0gpgCXARcUq8MJGdI/29C16Dtx0f10OM2ms0YDW21Kb UUaXIJ0uoFLCw8MHRhEwNoOh+L+K3OZyb1vVSar/U5mql993O7+l6UrEj/a5NECM kmgfxTdWNMWBCjTubSnKiNPwdtfN6WSCrlX880I4h9BwlqZHVOZPNZR3ZJNS16X8 iHQNAsp/bhddcHqJQlIqnA+VNZ1EAoH3ia6HZSizVYetwRTD
    =Gkck
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Chris Hofstaedtler@21:1/5 to All on Fri Oct 25 10:10:02 2024
    * Andreas Henriksson <andreas@fatal.se> [241025 08:56]:
    I wanted to check if anyone knows any better techniques or mechanisms
    than trying to remember to run this command manually before working on
    a package?

    I would very much prefer if it was possible in Debian to not allow
    the archive to get out of sync with packaging git repo (for example
    when it lives under salsa.debian.org/debian which uploaders should have access to already).

    While I understand the sentiment, ...

    That would probably also require some "tag to upload" solution to be implemented first I presume.

    ..., I don't think this would be necessary in the first place, and
    also there are a number of practical problems, plus the
    policy/mandate problem mentioned by Andrey.

    I'm just not seeing the duality of "the archive is the truth"
    ("preferred form of modication" or whatever people want to call it)
    and "git is the truth" can really be made work.

    It can work within limited workflows, where maintainers / maintainer
    teams agree to mostly follow one or the other, and try to keep the
    other side in sync, but it will never be a 100% thing.

    If we want the 100% solution, IMO we cannot continue with the
    duality. I guess someone who knows more about distributed systems
    theory probably could explain on theoretical grounds why it can't
    work (or why I'm wrong).

    Best,
    Chris

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Peter B@21:1/5 to Jonas Smedegaard on Fri Oct 25 13:10:01 2024
    On 25/10/2024 11:49, Jonas Smedegaard wrote:
    If my understanding is correct, then it sounds wrong for DDs to be
    granted access to all Salsa projects.

    Hi Jonas,

    I was not thinking of all Salsa projects,
    but those that represent official packages.

    Cheers,
    Peter

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Jonas Smedegaard@21:1/5 to All on Fri Oct 25 13:00:01 2024
    Quoting Peter B (2024-10-25 12:22:25)
    On 24/10/2024 21:36, Otto Kekäläinen wrote:
    Hi,

    I occasionally run into the situation that a package has been NMU'd or otherwise updated directly into the Debian repositories,
    bypassing/ignoring that a packaging git repository existed. <snip>

    Hi Otto,

    Are any of these packages team maintained?
    I understand there is an issue whereby although uploading DDs
    have unrestricted access to the archive,
    they cannot update Salsa team repos if they are not a team member.
    Maybe this ought to be fixed?
    I can understand restricting access for DMs, but does it make sense for DDs?

    As I understand it, Salsa is not solely used for Debian development --
    i.e. I seem to recall Salsa maintainers explicitly ecouraging the use
    of Salsa also for personal/upstream use.

    If my understanding is correct, then it sounds wrong for DDs to be
    granted access to all Salsa projects.

    - Jonas

    --
    * Jonas Smedegaard - idealist & Internet-arkitekt
    * Tlf.: +45 40843136 Website: http://dr.jones.dk/
    * Sponsorship: https://ko-fi.com/drjones

    [x] quote me freely [ ] ask before reusing [ ] keep private

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Peter B@21:1/5 to All on Fri Oct 25 12:40:02 2024
    On 24/10/2024 21:36, Otto Kekäläinen wrote:
    Hi,

    I occasionally run into the situation that a package has been NMU'd or otherwise updated directly into the Debian repositories,
    bypassing/ignoring that a packaging git repository existed. <snip>

    Hi Otto,

    Are any of these packages team maintained?
    I understand there is an issue whereby although uploading DDs
    have unrestricted access to the archive,
    they cannot update Salsa team repos if they are not a team member.
    Maybe this ought to be fixed?
    I can understand restricting access for DMs, but does it make sense for DDs?


    Regards,
    Peter

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From weepingclown@21:1/5 to Peter B on Fri Oct 25 13:40:01 2024
    Hi,

    Each team has their own policy in place. Some teams just want you to request access if you want to work on a team package (eg: go team), but for some teams the membership is granted only after confirming they've read and accepted the team policy (eg:
    python team), regardless of whether they are a DD or not. Of course, for DDs it is mostly just a formality compared to new people who are typically granted access after seeing some debian contribution record. But regardless, it wouldn't be great to
    bypass the team policies, IMHO.

    Best,
    Ananthu

    On 25 October 2024 10:22:25 am UTC, Peter B <peter@pblackman.plus.com> wrote: >On 24/10/2024 21:36, Otto Kekäläinen wrote:
    I understand there is an issue whereby although uploading DDs
    have unrestricted access to the archive,
    they cannot update Salsa team repos if they are not a team member.
    Maybe this ought to be fixed?
    I can understand restricting access for DMs, but does it make sense for DDs?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andrey Rakhmatullin@21:1/5 to Peter B on Fri Oct 25 14:20:01 2024
    On Fri, Oct 25, 2024 at 11:22:25AM +0100, Peter B wrote:
    I occasionally run into the situation that a package has been NMU'd or otherwise updated directly into the Debian repositories,
    bypassing/ignoring that a packaging git repository existed. <snip>

    Hi Otto,

    Are any of these packages team maintained?
    I understand there is an issue whereby although uploading DDs
    have unrestricted access to the archive,
    they cannot update Salsa team repos if they are not a team member.

    NMUers don't update package repos because it's too much effort, not
    (just) because of permissions.


    --
    WBR, wRAR

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

    iQJhBAABCgBLFiEEolIP6gqGcKZh3YxVM2L3AxpJkuEFAmcbjEwtFIAAAAAAFQAP cGthLWFkZHJlc3NAZ251cGcub3Jnd3JhckBkZWJpYW4ub3JnAAoJEDNi9wMaSZLh kfUP/iUfl+qxSZ2TzvlLcy5XjRQclSAq0M8Owbsv3tRenFxLrNq9tB6Z4W7IL9JX 00Dt4uxVVUyQS2pNmOOEaX1SoSnTjUAvIUUEK7bLfcaofxCrZXNnjWKC7Lf+qfUj GdJxRP73ionkl+mbYq1m7KJzQo23UkM7QMgnu7UNwhLuCtBDMMLnyr3rjD0vRPPG JcGq1xG401EgM6JkGPq85GmeF5spSJYmIOUfQ8p4PyeMQd3M9QfoCAxx/AwdhsJG xJZCYmx5cy/755LdwN0dG4AY/ehMAGmaiKbompdbsKqfbUWuUaOuHAidZcLKxkkU kIAcmCHH9i451yjUGiu8UBx2wSOn68a87Zfk39CERJuUW5AUPjs6t43JdSvor59C KbU8zQ+Eiv8eWgS43Ps4u7C+pCwXPdzsPumwADiqXPhXkGz3h3aGi6LjrAoTVg0V q422rwgm7hfwAAg/r08ZN64mtBsxqjoTgyTqf6Y4EiBA+39S878UmuwCudjredDr e48Xa6eYqPM6tG+bpjoPkEYm9Es102yklUKR6YBy4wUKp9pByvgFAo9hJPJ9gqxk H2cGrXOrvelX3cD5QOCzqodp1+GiNUlNrNcEp0LTQsrdUw+Pm8hw0Q1giY6IczoA 1YEYBvXZIr9oAi1QRfwvFlu/NU7VkfKbn+xMMlLuiFU8pglo
    =Op02
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Charles Plessy@21:1/5 to All on Fri Oct 25 15:40:02 2024

    "the archive is the truth"
    "git is the truth"

    Maybe you can rephrase it to "the archive is the present and git is the future". For instance if a NMU is obsoleted by a new upstream release,
    you can ignore the NMU and continue from your latest upload.

    Have a nice day,

    Charles

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Noah Meyerhans@21:1/5 to Andreas Henriksson on Fri Oct 25 16:10:01 2024
    On Fri, Oct 25, 2024 at 08:45:16AM +0200, Andreas Henriksson wrote:
    I would very much prefer if it was possible in Debian to not allow
    the archive to get out of sync with packaging git repo (for example
    when it lives under salsa.debian.org/debian which uploaders should have access to already).
    That would probably also require some "tag to upload" solution to be implemented first I presume.

    Honestly I'd be happy if we could just establish some expectation that
    the NMUer open a merge request for their changes. It can be merged
    later without losing anything or requiring additional work. Enforcement
    of this expectation would be even better, of course.

    noah

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Sean Whitton@21:1/5 to Andrey Rakhmatullin on Fri Oct 25 16:10:01 2024
    Hello,

    On Fri 25 Oct 2024 at 12:37pm +05, Andrey Rakhmatullin wrote:

    Not sure what's the logic here, but I feel like what you thought about may require some "tag to upload" solution not to be just implemented but also mandated, which won't happen.

    We do intend to automatically import all uploads back into dgit-repos.
    So we will have a gitified source of truth, which is a step forward.

    --
    Sean Whitton

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Sean Whitton@21:1/5 to All on Fri Oct 25 16:10:01 2024
    Hello,

    On Thu 24 Oct 2024 at 09:36pm +01, Otto Kekäläinen wrote:

    Hi,

    I occasionally run into the situation that a package has been NMU'd or otherwise updated directly into the Debian repositories,
    bypassing/ignoring that a packaging git repository existed. I was
    wondering what techniques other DDs use to
    1) detect that the git packaging repository was bypassed/diverged?

    If you do all your uploads using 'dgit push', it will always detect this.

    2) bring the git repository back in sync with minimal effort?

    If you are using a patches-applied workflow or you have no patches,
    'dgit pull' will do this.

    If you are using patches-unapplied, you might be able to 'dgit fetch'
    and then manually merge.

    --
    Sean Whitton

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andrey Rakhmatullin@21:1/5 to Noah Meyerhans on Fri Oct 25 16:40:01 2024
    On Fri, Oct 25, 2024 at 10:06:56AM -0400, Noah Meyerhans wrote:
    I would very much prefer if it was possible in Debian to not allow
    the archive to get out of sync with packaging git repo (for example
    when it lives under salsa.debian.org/debian which uploaders should have access to already).
    That would probably also require some "tag to upload" solution to be implemented first I presume.

    Honestly I'd be happy if we could just establish some expectation that
    the NMUer open a merge request for their changes.

    I write this too often in the recent months (maybe because I did much
    fewer NMUs before 2024 than I did in 2024 for t64 and so I didn't care
    before), but: if a NMUer wants to modify a random repo, they need to:

    1. Identify if the repo is uptodate.
    2. Identify which workflow is used in the repo, and whether that workflow
    is some typical one or some random undocumented one.
    3. Study the workflow used, to know how to rebuild the package, and
    ideally at this step rebuild the package without modifications to make
    sure it works.
    4. Study the workflow used some more, to know how to add modifications to
    the package, add them, rebuild the package once again, make sure the
    built package is correct.

    This is literally impossible unless the workflow is typical and you
    guessed it correctly, and is too much additional work even when it's
    possible.

    --
    WBR, wRAR

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

    iQJhBAABCgBLFiEEolIP6gqGcKZh3YxVM2L3AxpJkuEFAmcbrRktFIAAAAAAFQAP cGthLWFkZHJlc3NAZ251cGcub3Jnd3JhckBkZWJpYW4ub3JnAAoJEDNi9wMaSZLh ycsP/jMxSysvMfN8jzlTXjDmKhmfP5n379G54tE9SGQu0GTcuhSxse9bTLesTDlL qMUA6awORBVyi8u7r6yvvqguLdn8Xhub9YWv1m2hXLKdPUVwBcmaCSeuyCPA4Sg+ GZGBxs5oPmLnndWF0s+CwRMbZ5IpegrDfb991NUFJnbjohxfM6UewcFHcyfZgdFy 2bqvjtmrMFha02oyPVY+8jXUNMFcV1vnKXKn03Ch1p/SitSgUgzWRY5cTCs/R6UM juMTH7qr/Pgg0j/Vdj0kYrOo2XgvWpCjoXzTB3VcTd4MuNRlVtyYAZF5iEVmmntn 0XpoMS5iOLXMmnqBmHOq0+MOD1zYQ97XixVtoYYjfBYzqcFn/mKmrg+Org3wYmOZ zMQzO9vIoPa6IR6YETEvTFkzQmSGU2UMsRRuPEJVRzk/ZdxmCckLOTcQue2AU8NX Je0awLjSmVe1P8zumTaVUdrAEsUXDlCK+o/s1EmMyvlL6UGZvu5gGtKfra2Nfe8i zbm8H3+GsBLnMgb+7S6ZV7eKoSn0rNTprR6UV7qHnmeh6I7qaN4ct6G67nOy0sZH vb47vKD/LL2SlL0BWU4UD/bg/mtUdei83Lo+YqvREJW6muuGS590fSRbMPiYc+wD fWD2SPHPoKr4G0ISelOuXDzL6Jetj0mjGU0Q0Ld/9gYy/oDU
    =6CfJ
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Holger Levsen@21:1/5 to Noah Meyerhans on Fri Oct 25 17:10:01 2024
    On Fri, Oct 25, 2024 at 10:06:56AM -0400, Noah Meyerhans wrote:
    Honestly I'd be happy if we could just establish some expectation that
    the NMUer open a merge request for their changes. It can be merged
    later without losing anything or requiring additional work. Enforcement
    of this expectation would be even better, of course.

    the current expectation is that an NMU bug is opened, which contains
    the debdiff.

    https://www.debian.org/doc/manuals/developers-reference/developers-reference.en.html#when-and-how-to-do-an-nmu

    "... Then, you must send a patch with the differences between the current
    package and your proposed NMU to the BTS. The nmudiff script in the
    devscripts package might be helpful...."


    --
    cheers,
    Holger

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

    "Der Tod der menschlichen Empathie ist eines der frühesten und deutlichsten Zeichen dafür, dass eine Kultur gerade in Barbarei verfällt." Hannah Arendt

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

    iQIzBAABCgAdFiEEuL9UE3sJ01zwJv6dCRq4VgaaqhwFAmcbs1kACgkQCRq4Vgaa qhyFrxAAoCgrT1bCiB1lY8wT1ZBwXNwbnDTiXZ+UVK+yZq5MLVVV8XFC/+4QdXuX egnDl30CReTuFA7a43xBkfAi6LK2OlxCHddSTGMbw4Urz6uatSa+zPUqdsS3FUj9 AWRW6ChnvGvhYDb+MhF2Hrlq9PHdsD4OorCl2rBMNu5REe0RH/4VfGatzeqSdyte 2lWGnJaJom5PjWqy6ALdExxeuUcGV5Vzp73x3SGkJu9CnD3ZmAgeikLjRr+Aq5xZ PGXwS/E4A/7u6r4cxd72jSwFYAtVlyvLdjOnp0F3DylWw+jxHZstR35Z1pB8lHA0 sPhy8UgX5z5ejp0liEVUtYxqZJDTVRXx2aAYORrx5d1TcpRz9CQaMaoLTqcjh4hq wmSh/dbBQWkAaqXrajFaAmMaBKK4B/QLqUQlVoD96i92/jgx9Vzj3itJIGtJ+tRe /mcH+lcCW9ZDcD277xbGKSOXyziUpQkNFq1pxeKnU2atFE+ZscS8MHf7zrWUNreW cz16XwBuVcOhDcxDk/lg2zW
  • From Noah Meyerhans@21:1/5 to Holger Levsen on Fri Oct 25 19:00:01 2024
    On Fri, Oct 25, 2024 at 03:03:53PM +0000, Holger Levsen wrote:
    Honestly I'd be happy if we could just establish some expectation that
    the NMUer open a merge request for their changes. It can be merged
    later without losing anything or requiring additional work. Enforcement
    of this expectation would be even better, of course.

    the current expectation is that an NMU bug is opened, which contains
    the debdiff.

    https://www.debian.org/doc/manuals/developers-reference/developers-reference.en.html#when-and-how-to-do-an-nmu

    "... Then, you must send a patch with the differences between the current
    package and your proposed NMU to the BTS. The nmudiff script in the
    devscripts package might be helpful...."

    Right, and that's not a whole lot more helpful than requiring me to
    download the sourcepackage and generate the debdiff myself. Sure all
    the content is there, but it's still a tedious amount of work that's
    easily forgotten. Further, it loses a little bit of metadata, in that
    the git commit now comes from me, rather than the person doing the
    actual NMU.

    Yes, I know this is trivial, and yes I know I can fix it with more work;
    I don't want NMUs to make more work for me. It makes me not like NMUs.

    noah

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andrey Rakhmatullin@21:1/5 to Noah Meyerhans on Fri Oct 25 19:40:02 2024
    On Fri, Oct 25, 2024 at 12:55:48PM -0400, Noah Meyerhans wrote:
    Honestly I'd be happy if we could just establish some expectation that the NMUer open a merge request for their changes. It can be merged
    later without losing anything or requiring additional work. Enforcement of this expectation would be even better, of course.

    the current expectation is that an NMU bug is opened, which contains
    the debdiff.

    https://www.debian.org/doc/manuals/developers-reference/developers-reference.en.html#when-and-how-to-do-an-nmu

    "... Then, you must send a patch with the differences between the current
    package and your proposed NMU to the BTS. The nmudiff script in the
    devscripts package might be helpful...."

    Right, and that's not a whole lot more helpful than requiring me to
    download the sourcepackage and generate the debdiff myself. Sure all
    the content is there, but it's still a tedious amount of work that's
    easily forgotten. Further, it loses a little bit of metadata, in that
    the git commit now comes from me, rather than the person doing the
    actual NMU.

    Yes, I know this is trivial, and yes I know I can fix it with more work;
    I don't want NMUs to make more work for me. It makes me not like NMUs.

    Sure.
    We have two options here: make the project do fewer NMUs by doing more maintainer uploads, or standardize and mandate a git workflow or two.
    We don't like *doing* NMUs either.

    --
    WBR, wRAR

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

    iQJhBAABCgBLFiEEolIP6gqGcKZh3YxVM2L3AxpJkuEFAmcb1cotFIAAAAAAFQAP cGthLWFkZHJlc3NAZ251cGcub3Jnd3JhckBkZWJpYW4ub3JnAAoJEDNi9wMaSZLh Wq8P/0rPW17X0XZ+BAmh68wBGB0eBIlERFwoCt/ZsKbwL6V7F/RKiEtBDPU69R8C djfhz81WA9zUzvYbVhUc4FGr8FR2W0UFuHnUb9RcJbrriVlQis7jR3YX39I9Gwmn 9wX+mfNnJ5XDNX7qtBN0dlUng+6QtjZHR2ic/b+0YMQeQyDy7kE+bIvpsSpp1W2Q 7pd2XNr2+qa9ffgy5AhUUTcLOzES8Dnyv4lTdCws6lXTg1dET0DlVzoVqn41P5vY 0CJC9FEET72LzrGrjM9qXmeWVdT/Ri8Pdm/55Dt/owotVOdZusikv5gvg55rLC4t tQIEOVZc536Rx37o4nAS9F8bGN2+SPm5w+5MzKEM8d0Ow8r81aWLjxVnfz0w7/L+ GYr5Nf/RZ2lRKLdNf1tXpkpn2VIRphtXMxZ06CKC457GgXbR49m83GULf3TiCQ+k SRCkinlqFj+8H2mqA1L5gpgNJ+JplByNRiHpDv0IvTRF/eZBsEHSKZHHC83sIl7v AihvC7iHJhtL8BATjGC7RFxWYYlGgrpsBym5tmC7z6Pqd4e3Hj2WbXmIzo9Z6p4Z +z9vfjskHiZP1spIyBdDe6W1NNW7YaRntK7FBxJaf/cWvlgMm+miadBGarU9pd2/ qg85M8+nsn1pOBWEh+B26j7s6Ki3EiA/iGd0BYWF2lyFMxm7
    =y3M1
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?T3R0byBLZWvDpGzDpGluZW4=?@21:1/5 to All on Fri Oct 25 21:10:01 2024
    Thanks for all the comments!

    Trying to summarize and expand on the points raised:

    Seems this is still the most optimal way to ensure git is correct:

    gbp import-dsc --verbose --pristine-tar apt:j4-dmenu-desktop/sid

    Also, dgit pull can be used to get the latest source automatically, but unfortunately those git commits are made as a custom "Debian as a git repo" representation, and is not compatible with using CI testing and code review before upload in the way many of us are doing on Salsa currently.

    Seems also others are occasionally annoyed by NMUs. Ideally mass change
    drivers would do mass bug filings and let maintainers upload instead of resorting immediately to NMUs.

    The post-upload NMU bug report and diff will help ensure the fact that a
    NMU happened is discovered by maintainer, but reconciling packaging git contents to 100% match what was uploaded is still best to be done with
    command above.

    Packages that are actively maintained should in general never need a NMU.
    If packages are abandoned they should move to salsa.debian.org/debian namespace, as it would solve the access permissions and allow for some
    changes to be pushed to git.

    The Debian Janitor could perhaps be used both to sync NMUs back to git
    repos, and as a replacement for NMUs in some cases. Any repo that has Salsa
    CI passing and/or a gbp.conf is pretty easy to do a MR on, but doing
    mass-MRs is a complex topic that deserves a documentation of its own.

    Also, wider standardization in packaging workflows, and use of
    machine-readable gbp.conf and such is needed to make it easier to work via
    git. However there is, and will likely be, an inherent long-term conflict
    in the duality that uploads can happen irrespective of version control in
    git and use Debian repositories themselves for version control.

    Anyway, a mass-MR filing does not result automatically in an upload
    happening for every package, so some NMUs are likely to occur. Thus,
    knowing the easiest one-liner to reconcile git packaging repo is still the
    most important thing for DDs.

    <div dir="auto">Thanks for all the comments!<div dir="auto"><br></div><div dir="auto">Trying to summarize and expand on the points raised:<br><div dir="auto"><br></div><div dir="auto">Seems this is still the most optimal way to ensure git is correct:<div
    dir="auto"><br></div><div dir="auto">   gbp import-dsc --verbose --pristine-tar apt:j4-dmenu-desktop/sid<br></div><div dir="auto"><br></div><div dir="auto">Also, dgit pull can be used to get the latest source automatically, but unfortunately those git
    commits are made as a custom &quot;Debian as a git repo&quot; representation, and is not compatible with using CI testing and code review before upload in the way many of us are doing on Salsa currently.</div><div dir="auto"><br></div><div dir="auto">
    Seems also others are occasionally annoyed by NMUs. Ideally mass change drivers would do mass bug filings and let maintainers upload instead of resorting immediately to NMUs.</div><div dir="auto"><br></div><div dir="auto">The post-upload NMU bug report
    and diff will help ensure the fact that a NMU happened is discovered by maintainer, but reconciling packaging git contents to 100% match what was uploaded is still best to be done with command above.</div><div dir="auto"><br></div><div dir="auto">
    Packages that are actively maintained should in general never need a NMU. If packages are abandoned they should move to <a href="http://salsa.debian.org/debian">salsa.debian.org/debian</a> namespace, as it would solve the access permissions and allow for
    some changes to be pushed to git.</div><div dir="auto"><br></div><div dir="auto">The Debian Janitor could perhaps be used both to sync NMUs back to git repos, and as a replacement for NMUs in some cases. Any repo that has Salsa CI passing and/or a gbp.
    conf is pretty easy to do a MR on, but doing mass-MRs is a complex topic that deserves a documentation of its own.</div><div dir="auto"><br></div><div dir="auto">Also, wider standardization in packaging workflows, and use of machine-readable gbp.conf and
    such is needed to make it easier to work via git. However there is, and will likely be, an inherent long-term conflict in the duality that uploads can happen irrespective of version control in git and use Debian repositories themselves for version
    control.</div><div dir="auto"><br></div><div dir="auto">Anyway, a mass-MR filing does not result automatically in an upload happening for every package, so some NMUs are likely to occur. Thus, knowing the easiest one-liner to reconcile git packaging repo
    is still the most important thing for DDs.</div></div></div></div>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Sean Whitton@21:1/5 to All on Sat Oct 26 00:20:01 2024
    Hello,

    On Fri 25 Oct 2024 at 08:07pm +01, Otto Kekäläinen wrote:

    Thanks for all the comments!

    Trying to summarize and expand on the points raised:

    Seems this is still the most optimal way to ensure git is correct:

    gbp import-dsc --verbose --pristine-tar apt:j4-dmenu-desktop/sid

    Also, dgit pull can be used to get the latest source automatically, but unfortunately those
    git commits are made as a custom "Debian as a git repo" representation, and is not
    compatible with using CI testing and code review before upload in the way many of us
    are doing on Salsa currently.

    'dgit pull' integrates the NMU automatically, when it can. It doesn't
    just fetch the source. I don't follow how it's different from 'gbp import-dsc'. Could you say more?

    --
    Sean Whitton

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Holger Levsen@21:1/5 to Holger Levsen on Sat Oct 26 11:40:01 2024
    On Fri, Oct 25, 2024 at 03:03:53PM +0000, Holger Levsen wrote:
    the current expectation is that an NMU bug is opened, which contains
    the debdiff.

    https://www.debian.org/doc/manuals/developers-reference/developers-reference.en.html#when-and-how-to-do-an-nmu

    "... Then, you must send a patch with the differences between the current
    package and your proposed NMU to the BTS. The nmudiff script in the
    devscripts package might be helpful...."

    FWIW, I think this should stay the default when doing NMUs but I also think
    it should be (spelled out that it's) equally fine to open a MR on salsa
    *if* the specific package somehow specifies this is ok.

    I also think that currently no package should be able to opt-out from
    getting NMUdiffs via the BTS, because it's good to have one workflow which works for *all* packages.


    --
    cheers,
    Holger

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

    There is no such thing as trans rights or gay rights or lesbian rights. There are human rights of people who are gay, human rights of people who are lesbian, and human rights of people who are trans. (@victor_madrigal)

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

    iQIzBAABCgAdFiEEuL9UE3sJ01zwJv6dCRq4VgaaqhwFAmccttgACgkQCRq4Vgaa qhxq9A//eoK5yM8jsMdQlcLPsaO0ri8uuktqH7uz/SN1jZmzC8axe7vuPI+8nAIU hNXSRsmZLPR8jaG1Cq9tF9ryAAmx97RI1skTp3buq/WM5l4i7ZweblFYQpopvV5O qb7ygKvtX63Q0qvh2yvS1/Z1KqyWkfDI7DRIwhDXmriTjWxij9uUkE91ZkLaMRmm lPVRt1EogWk5AdGJVZ7DBoyqEiqvZuS6cdYVRUmt4ULaMSCNDiiGD6uFO17TNFoV PIZi3LN9jULeBAe66kPvipoj0g3LdnPABYkYXjwf7tFpubzVg8WhvKrjCJNOLWAI DvuyxYGrkvA2Hvey5iHK0h1bjZpo7nlOf7M0ja2Fm2rsqhKw9drzduptpB0Wecjt PQCz50TzEXvkDt8DNvzzUQN2Yz6+ovjrLbwQXn+ra9KOb2WoDPBkDxixAPWVG3Ek PlRjKMMvIvriQBAxNOJIoTvs
  • From =?UTF-8?B?T3R0byBLZWvDpGzDpGluZW4=?@21:1/5 to All on Sun Oct 27 18:40:01 2024
    Hi!

    Seems this is still the most optimal way to ensure git is correct:

    gbp import-dsc --verbose --pristine-tar apt:j4-dmenu-desktop/sid

    Also, dgit pull can be used to get the latest source automatically, but unfortunately those
    git commits are made as a custom "Debian as a git repo" representation, and is not
    compatible with using CI testing and code review before upload in the way many of us
    are doing on Salsa currently.

    'dgit pull' integrates the NMU automatically, when it can. It doesn't
    just fetch the source. I don't follow how it's different from 'gbp import-dsc'. Could you say more?

    In a gbp checkout of git@salsa.debian.org:debian/j4-dmenu-desktop.git,
    how would you invoke 'dgit pull sid' to import the NMU?

    Without any parameters, it will create branch 'dgit/sid' which has
    unrelated history and patches are applied and nothing can be merged or cherry-picked to the git-buildpackage master branch. Perhaps I am just
    missing something on how this should work, or perhaps https://manpages.debian.org/unstable/dgit/dgit-maint-gbp.7.en.html#INCORPORATING_NMUS
    implies the functionality isn't yet there?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Sean Whitton@21:1/5 to All on Mon Oct 28 04:30:01 2024
    Hello,

    On Sun 27 Oct 2024 at 05:29pm GMT, Otto Kekäläinen wrote:

    Hi!

    Seems this is still the most optimal way to ensure git is correct:

    gbp import-dsc --verbose --pristine-tar apt:j4-dmenu-desktop/sid

    Also, dgit pull can be used to get the latest source automatically, but unfortunately those
    git commits are made as a custom "Debian as a git repo" representation, and is not
    compatible with using CI testing and code review before upload in the way many of us
    are doing on Salsa currently.

    'dgit pull' integrates the NMU automatically, when it can. It doesn't
    just fetch the source. I don't follow how it's different from 'gbp
    import-dsc'. Could you say more?

    In a gbp checkout of git@salsa.debian.org:debian/j4-dmenu-desktop.git,
    how would you invoke 'dgit pull sid' to import the NMU?

    Without any parameters, it will create branch 'dgit/sid' which has
    unrelated history and patches are applied and nothing can be merged or cherry-picked to the git-buildpackage master branch. Perhaps I am just missing something on how this should work, or perhaps https://manpages.debian.org/unstable/dgit/dgit-maint-gbp.7.en.html#INCORPORATING_NMUS
    implies the functionality isn't yet there?

    This is one of the cases where it can't do it completely automatically,
    but a manual merge may be possible.

    --
    Sean Whitton

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Helmut Grohne@21:1/5 to Andreas Henriksson on Tue Oct 29 21:30:01 2024
    Andrey has already said much of what I could add to the thread, but I
    think I can slightly clarify the needs of NMUers.

    On Fri, Oct 25, 2024 at 08:45:16AM +0200, Andreas Henriksson wrote:
    I would very much prefer if it was possible in Debian to not allow
    the archive to get out of sync with packaging git repo (for example
    when it lives under salsa.debian.org/debian which uploaders should have access to already).

    There are three quite fundamental pieces missing to achieve this.

    There needs to be simple way to turn a git commit into a source package.
    If the source of truth ever is to become git, the .dsc becomes an export
    format and then this becomes a hard requirement. We can turn git commits
    into source packages. The problem is that there is not one way to do
    this, but about a hundred and you need to know which package uses which.
    That does not scale.

    There needs to be a simple way to figure out the commit that corresponds
    to an upload. This problem has been approached in two ways. For one
    thing, there is DEP14 recommending a particular tag layout, but I think
    this is backwards. It assumes that the git repository is trusted, but in reality git repositories allow for much wider access than Debian
    uploads. What we really needs is a source package to know the commit id
    it was generated from.

    These operations need to round-trip. If you take a source package,
    identify the git commit and export it to .dsc, it must be functionality equivalent to what you started with. Timestamps may differ, but file
    content or contained files very much not.

    To me, these are hard requirements for using maintainer git
    repositories for performing NMUs.

    Now the dgit users among us will be grinning already as what I have
    written here, very much reads like a specification of (parts of) dgit.
    Once again, I question whether salsa as we use it now is the solution or
    the problem. I note that it is practically possible to push your dgit
    history to salsa and then NMUers can easily do meaningful MRs for their
    uploads even when your maintainer git has changes that have not yet been uploaded.

    Helmut

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?T3R0byBLZWvDpGzDpGluZW4=?@21:1/5 to All on Wed Oct 30 14:30:01 2024
    Hi,

    ma 28. lokak. 2024 klo 4.27 Sean Whitton <spwhitton@spwhitton.name> kirjoitti:

    Hello,

    On Sun 27 Oct 2024 at 05:29pm GMT, Otto Kekäläinen wrote:

    Hi!

    Seems this is still the most optimal way to ensure git is correct:

    gbp import-dsc --verbose --pristine-tar apt:j4-dmenu-desktop/sid

    Also, dgit pull can be used to get the latest source automatically, but unfortunately those
    git commits are made as a custom "Debian as a git repo" representation, and is not
    compatible with using CI testing and code review before upload in the way many of us
    are doing on Salsa currently.

    'dgit pull' integrates the NMU automatically, when it can. It doesn't
    just fetch the source. I don't follow how it's different from 'gbp
    import-dsc'. Could you say more?

    In a gbp checkout of git@salsa.debian.org:debian/j4-dmenu-desktop.git,
    how would you invoke 'dgit pull sid' to import the NMU?

    Without any parameters, it will create branch 'dgit/sid' which has unrelated history and patches are applied and nothing can be merged or cherry-picked to the git-buildpackage master branch. Perhaps I am just missing something on how this should work, or perhaps https://manpages.debian.org/unstable/dgit/dgit-maint-gbp.7.en.html#INCORPORATING_NMUS
    implies the functionality isn't yet there?

    Ah, I was thinking that you had already been using 'dgit --gbp push' to upload the package. In that case the histories would be related, just
    with some additional commits on top, and a manual merge would be
    possible.


    I can (and I did test already) do a merge with --allow-unrelated
    histories, but dgit history always has patches applied as separate
    commits that get rebased and thus there is no quilt/gbp pq -compatible
    git history to merge from. If I later do a 'dgit --gbp push' to
    upload, how do I push a development version to Salsa for review and CI
    testing?

    Based on docs and your previous replies it isn't possible, thus `gbp
    import-dsc --verbose --pristine-tar apt:j4-dmenu-desktop/sid` still
    seems to stand as the optimal way to import NMUs onto a Debian
    packaging git repo?

    The man pages of dgit are extensive and explains well how to interact
    with the Debian repository as if it was a git repository, but I am
    unable to find descriptions of how to use dgit in team maintained
    packages with testing and reviews prior to uploads.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Sean Whitton@21:1/5 to All on Sun Nov 3 08:10:02 2024
    Hello,

    On Wed 30 Oct 2024 at 01:24pm GMT, Otto Kekäläinen wrote:

    I can (and I did test already) do a merge with --allow-unrelated
    histories, but dgit history always has patches applied as separate
    commits that get rebased and thus there is no quilt/gbp pq -compatible
    git history to merge from. If I later do a 'dgit --gbp push' to
    upload, how do I push a development version to Salsa for review and CI testing?

    If the NMU was done with dgit, then dgit only appends commits to apply
    the patches. Thus if you look a few commits back in history, you'll
    find something you can merge.

    Based on docs and your previous replies it isn't possible, thus `gbp import-dsc --verbose --pristine-tar apt:j4-dmenu-desktop/sid` still
    seems to stand as the optimal way to import NMUs onto a Debian
    packaging git repo?

    If the upload was not done with dgit, then probably, yes.

    The man pages of dgit are extensive and explains well how to interact
    with the Debian repository as if it was a git repository, but I am
    unable to find descriptions of how to use dgit in team maintained
    packages with testing and reviews prior to uploads.

    The idea is that dgit is only needed when dealing with source packages.
    When collaborating with team members prior to upload, you don't really
    need any source packages -- you just build straight out of git.

    If you can identify a place in the docs where some reference to this
    could be added that would have been helpful to you, a patch would be
    very welcome.

    --
    Sean Whitton

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

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

    iQJNBAEBCgA3FiEEm5FwB64DDjbk/CSLaVt65L8GYkAFAmcnH98ZHHNwd2hpdHRv bkBzcHdoaXR0b24ubmFtZQAKCRBpW3rkvwZiQA2+EACTVyVIgiTLQV9RWGwFHayD p2e262bADaNc1aDRiQv8bgknmaKGFwZPbv00JQC/znzPN2oqwXiY4k1nQhF2zR+W PLxZE4YUfUqLu4oeQCZKWZdd9KLAa5OyWCcS61ftw4b/hLV+vFu3zUOa4cE2NAXs FAK2FBDzNsYHXJQn9lwELTktSDdp+0OWhW8OfA544c23yELSKdv86pJbSPlDPTa/ x6hMXlSDcO8tjlSdrI+nx4lbm+Ij2Gwlhh5BRtFRDB/FGoA0l1W9LO1ZL+2oMfP9 4Y+Uj+EQjMfTwhaYonscCQJwJtz43OIVjp3pfQAfWYMEMR6Mj2UlLC/MjQVDdN7u dZv9zbFS/j92SlDmpPaT81megWtZGAzpAnhcS2J20d4AA0Yh0RguLwR4NLyTVEKo nvm6b1SO0C8PHZ3QP8e7UWR+tSXapFCslbtIcXR1BTDF/yEKNellNNXOaCyW3OYj TmCIdf9gSSYWuMDAHOtKTUgUHiuHRfy9o/f/Zk3KjiOMurEqcLWFBomebUG0KR/h AIuakvrVigaKIb2GwwHBdLy4StKxU7PXKK5wHCvOKKHPZ0JZW6+ZENrMN3l50KKR aJhodFEpB1nv/nIYVbgiCST9LxgEXRdBrgLDmneUNFtXlr2pfDxBybVbIday1Bv3 NEkqsNAac7YdsejQAZKJdw==OdH5
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Us
  • From Sean Whitton@21:1/5 to Helmut Grohne on Mon Nov 4 02:30:01 2024
    Hello,

    On Tue 29 Oct 2024 at 02:48pm +01, Helmut Grohne wrote:

    Andrey has already said much of what I could add to the thread, but I
    think I can slightly clarify the needs of NMUers.

    On Fri, Oct 25, 2024 at 08:45:16AM +0200, Andreas Henriksson wrote:
    I would very much prefer if it was possible in Debian to not allow
    the archive to get out of sync with packaging git repo (for example
    when it lives under salsa.debian.org/debian which uploaders should have
    access to already).

    There are three quite fundamental pieces missing to achieve this.

    There needs to be simple way to turn a git commit into a source package.
    If the source of truth ever is to become git, the .dsc becomes an export format and then this becomes a hard requirement. We can turn git commits
    into source packages. The problem is that there is not one way to do
    this, but about a hundred and you need to know which package uses which.
    That does not scale.

    There needs to be a simple way to figure out the commit that corresponds
    to an upload. This problem has been approached in two ways. For one
    thing, there is DEP14 recommending a particular tag layout, but I think
    this is backwards. It assumes that the git repository is trusted, but in reality git repositories allow for much wider access than Debian
    uploads. What we really needs is a source package to know the commit id
    it was generated from.

    These operations need to round-trip. If you take a source package,
    identify the git commit and export it to .dsc, it must be functionality equivalent to what you started with. Timestamps may differ, but file
    content or contained files very much not.

    To me, these are hard requirements for using maintainer git
    repositories for performing NMUs.

    Now the dgit users among us will be grinning already as what I have
    written here, very much reads like a specification of (parts of) dgit.
    Once again, I question whether salsa as we use it now is the solution or
    the problem. I note that it is practically possible to push your dgit
    history to salsa and then NMUers can easily do meaningful MRs for their uploads even when your maintainer git has changes that have not yet been uploaded.

    Well, quite, this is dgit indeed.

    --
    Sean Whitton

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

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

    iQJNBAEBCgA3FiEEm5FwB64DDjbk/CSLaVt65L8GYkAFAmcoISQZHHNwd2hpdHRv bkBzcHdoaXR0b24ubmFtZQAKCRBpW3rkvwZiQOWlD/997nNoiNmP0SEPevaKEhes C1obJs6nqoaLzgvfzB/TlMpFownd8IumBjF+rpUpK1meEv9CNYhFDCB3nimXaXce FY22aivLG+YIXJ79PBdpXhNiK58ezs3SxWsnYlAslb1wHvEiwAg3JgY3PCx/1QYt b+MOPKWcJHsIWgNeFSnT4s16XCJfSD8qb0gpFGf2NI6k6UH6QJuwg9RMfNXT7fg2 lJtsC8RuchqPgXzlvZ2bUKKe2bDaR2kYfPXHrlbFwLP7gIgiGh2Ew6rf6yePoc1i c4GoDVp9s6dbccebUMPa1MnbpSX75AGY6XbmiPQKbb8MS7yl36QsrRXOh2H0TJq6 YL/VpvVDyKMQBou3Pdyp6fHXHGrh4MrAn0r2lBk6WDvLCeo/QblCwUtCobXd2ttb 0Gl3gh2T+X5S48LTULxPzvy8nIRDeJGnCx4t3JUax0+prR7AySsH1gsO5iNnvKwt uGbVR9HtO9PXm3E7v3lNLE9xDrrY8e+/+rkkAJxXCPncjhDK1EAjPs3KZQ9RAT4a 15Uu/wPe8AMo2aI/HfxgIiVYtZ9iHt5d6dgZJIXKK9/u7sqJK+6yV+WOVSoPn9oU L1i/vviG+DEIpbdNNvYC4C2B3M/Hl538X8CgvTOC/Kctdh+QQ6fuiX+vFcMADAp6 gGNsyr1N/TsJtJeGQMMzyg= Ir
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usen
  • From Sean Whitton@21:1/5 to Holger Levsen on Mon Nov 4 02:20:01 2024
    Hello,

    On Sat 26 Oct 2024 at 09:31am GMT, Holger Levsen wrote:

    On Fri, Oct 25, 2024 at 03:03:53PM +0000, Holger Levsen wrote:
    the current expectation is that an NMU bug is opened, which contains
    the debdiff.

    https://www.debian.org/doc/manuals/developers-reference/developers-reference.en.html#when-and-how-to-do-an-nmu

    "... Then, you must send a patch with the differences between the current
    package and your proposed NMU to the BTS. The nmudiff script in the
    devscripts package might be helpful...."

    FWIW, I think this should stay the default when doing NMUs but I also think it should be (spelled out that it's) equally fine to open a MR on salsa
    *if* the specific package somehow specifies this is ok.

    I also think that currently no package should be able to opt-out from
    getting NMUdiffs via the BTS, because it's good to have one workflow which works for *all* packages.

    I think so to.

    --
    Sean Whitton

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

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

    iQJNBAEBCgA3FiEEm5FwB64DDjbk/CSLaVt65L8GYkAFAmcoIRgZHHNwd2hpdHRv bkBzcHdoaXR0b24ubmFtZQAKCRBpW3rkvwZiQNUgD/9Puc0GkD45TgNQZZKhSW8j lAQhxXmmUZSnowBiq1rMadxz74AJaIOiQxYwa7xjGJniGWrdDVzQmgs608PF2LbD Ph5YT0zafYeDbLo3q4Zm9J+2OdIibvU8Ahz9S9vt1j97uy7vCq3vj1m8iRD/b2Kt FpgNSsxww8nOSneXYNo2AkRdvwXne7s/41vVxJv3HbrCAU2LgaJcNY/Av60Z8roZ NSAiKGwYjZDxXJJBjBn5MP75AqkNSycvKiHrgjp1l6H0UkOLNkWA88wXsL74imS1 zVOi1+E9oPxZpXr5+QVLJ7O1jlJgU25lqJYdqE+6Cbjl5p7ykjdPHltJvQuoNyEc YeoWLZ1/WomqvDyhlRzLZs6y1912HsChQ1ym/0rRa4YVkvA00cMTFcDOD87t+o4A PMbgaDBoD+WlorTsp021Wc4Rp7oFXaYQGo5a2DjrPHo0L+uy3mNYjsX0QlhHmfye G0SQtyPMMDB6p6xPta4uV5oRcypzY/hWL/zHMMUkVMAKFWREE2OTJzqKjmY3KlVu LdtfaOmcb3eb+c6/AFyVMfJ2NGbFC3B8ihCK/wJ1uTcwS0IqzodLy7qPTHAXaGJE 5Ju2gapwNM1fB0c9Y7VYDdhupLylzyKLOxA077EpEt4C849VDrPuo0/X1CFktlmG i8KlvKH4VTuyHp4dI2nuyQ==pyfi
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Us