From: simon@josefsson.org   
      
   Ian Jackson writes:   
      
   > Control: reopen -1   
   > Control: retitle -1 Docs and messages about NEW/REJECT need overhaul   
   >   
   > Simon Josefsson writes ("Re: Bug#1127666: how to recover from   
   > intermittent SSH push.dgit.d.o issue?"):   
   >> Ian Jackson writes:   
   >> > Did you in fact rewind history to no longer include the REJECT-worthy   
   >> > material ?   
   >>    
   >> No. Where is rewinding discussed? I see nothing relevant in dgit(1).   
   >   
   > Indeed, it's not discussed explicitly. It's implied by the option   
   > name, but the option doesn't say *what* it's not fast forward from.   
   >   
   >> What do you actually mean by "rewind history"? Is that a   
   >> well-established term for anything specific?   
   >   
   > Yes. Err. As an experienced git user you must surely be familiar   
   > with this concept. You must know it by a different name. The kind of   
   > thing that results in a force push.   
      
   Ah. I think this may partially explain why I haven't understood what   
   --deliberately-* is about, and consequently have tried hard to avoid   
   understanding them.   
      
   If the documentation would explain what to actually DO in each of a   
   carefully explained siatuion, maybe that helps people understand better.   
   Right now I found the text theoretical and not practically relevant.   
      
   > If the problematic package had legally dnagerous files, then we would   
   > have to not ship them at all ever, even in git history on Salsa. So   
   > you'd then need to filter them out (with git-filter-branch or   
   > something maybe, or discarding upstream history entirely, or   
   > something) and the you'd force push to all your Salsa branches.   
      
   Maybe that manual already says that, but I think that explains the   
   matter succintly in a way I didn't understand before.   
      
   I'm trying to ignore that I think this may be a controversial take, or   
   at least not clearly settled, and I think there are people who believe   
   storing verbatim upstream code on Salsa is okay even when it doesn't   
   pass DFSG tests. But it is fine for tools to support this way of   
   working. Encouraging the workflow doesn't have to be dgit(1)'s job.   
      
   > If you had done that, then you'd need to pass   
   > --deliberately-not-fast-forward   
   > to tell the dgit git server that yes, you are deliberately force   
   > pushing. (Normally that's not even allowed by the server; but this   
   > NEW/REJECT state is exceptional.)   
      
   It's not clear to me what the difference compared to   
   --deliberately-fresh-repo in practice would be. In what situation is   
   that parameter applicable?   
      
   >> > I assume that the REJECTed material is included in the history you're   
   >> > publishing there ?   
   >>    
   >> Yes. The copyright REJECTs were because d/copyright had bugs, not   
   >> because the content is undistributable. This seems like common   
   >> scenario.   
   >   
   > Right. --deliberately-include-questionable-history is precisely   
   > right, then.   
      
   I think the current documentation in dgit(1) really doesn't say suggest   
   that, but instead actually says to not use it: "only use this option   
   after verifying that: none of the rejected-from-NEW ... versions in the   
   git history of your current push, were rejected by ftpmaster for   
   copyright ... reasons". That was what happened here.   
      
   >> jas@frallan:~/dpkg/golang-filippo-nistec$ dgit push-built --new   
   >> --deliberately-not-fast-forward   
   >> -Cgolang-filippo-nistec_0.0.4-3_amd64.changes   
   > ...   
   >> History contains tainted commit 089445ef0355a294a39643e8f4d476fd88844fb5   
   >> Taint recorded at time 2026-02-11 00:43:10 Z for any package   
   >> Reason: tag archive/debian/0.0.4-1 referred to this object in git   
   >> tree but all previously pushed versions were found to have been   
   >> removed from NEW (ie, rejected) (or never arrived)   
   >> Could perhaps be forced using --deliberately-. See dgit(1).   
   >   
   > This is expected. The system doesn't know that that commit wasn't   
   > legally dangerous, and you haven't reassured it.   
      
   I did pass --deliberately-not-fast-forward, shouldn't that reassue it?   
   Maybe I still don't understand.   
      
   > I think this exchange demonstrates that our documentation (and perhaps   
   > messages) need rather more work. I'm reopening this bug.   
   >   
   > Would you be willing to cast your eye over our revised docs/message   
   > wording? Eg by Assigning you Review on Salsa ?   
      
   Feel free -- I will try to read and comment, but given that I don't yet   
   understand this it will be a rather weak review, but hopefully one that   
   will be useful for you as a "novice user without dgit developer mindset"   
   reaction.   
      
   /Simon   
      
   --=-=-Content-Type: application/pgp-signature; name="signature.asc"   
      
   -----BEGIN PGP SIGNATURE-----   
      
   iQNoBAEWCgMQFiEEo8ychwudMQq61M8vUXIrCP5HRaIFAmmTKIYUHHNpbW9uQGpv   
   c2Vmc3Nvbi5vcmfCHCYAmDMEXJLOtBYJKwYBBAHaRw8BAQdACIcrZIvhrxDBkK9f   
   V+QlTmXxo2naObDuGtw58YaxlOu0JVNpbW9uIEpvc2Vmc3NvbiA8c2ltb25Aam9z   
   ZWZzc29uLm9yZz6IlgQTFggAPgIbAwULCQgHAgYVCAkKCwIEFgIDAQIeAQIXgBYh   
   BLHSvRN1vst4TPT4xNc89jjFPAa+BQJn0XQkBQkNZGbwAAoJENc89jjFPAa+BtIA   
   /iR73CfBurG9y8pASh3cbGOMHpDZfMAtosu6jbpO69GHAP4p7l57d+iVty2VQMsx   
   +3TCSAvZkpr4P/FuTzZ8JZe8BrgzBFySz4EWCSsGAQQB2kcPAQEHQOxTCIOaeXAx   
   I2hIX4HK9bQTpNVei708oNr1Klm8qCGKiPUEGBYIACYCGwIWIQSx0r0Tdb7LeEz0   
   +MTXPPY4xTwGvgUCZ9F0SgUJDWRmSQCBdiAEGRYIAB0WIQSjzJyHC50xCrrUzy9R   
   cisI/kdFogUCXJLPgQAKCRBRcisI/kdFoqdMAQCgH45aseZgIrwKOvUOA9QfsmeE   
   8GZHYNuFHmM9FEQS6AD6A4x5aYvoY6lo98pgtw2HPDhmcCXFItjXCrV4A0GmJA4J   
      
   [continued in next message]   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|