#1105815 git-debpush: suggest --force parameter on errors

#1105815#5
Date:
2025-05-15 09:32:52 UTC
From:
To:
Here is another small UX improvement idea.  On errors it looks like
this:

jas@kaka:~/dpkg/gsasl$ git debpush -t
git-debpush: check failed: last upload targeted unstable, now targeting
experimental; might be a mistake? ('changed-suite' check)
git-debpush: some check(s) failed; you can pass --force to ignore them
jas@kaka:~/dpkg/gsasl$

This is very close to a perfect error message but could be improved by
1) adding keyword 'error:' so the user understands that this is what
actually triggers the failure (rather than some unrelated warning), and
2) suggest the --force=changed-suite explicitly to make it more
actionable.  So how about:

git-debpush: error: check failed: last upload targeted unstable but now
targeting experimental; use '--force=changed-suite' to override

The last error line above then becomes a bit redundant and could be
removed.

/Simon

#1105815#10
Date:
2025-05-15 09:41:27 UTC
From:
To:
Simon Josefsson writes ("Bug#1105815: git-debpush: suggest --force parameter on errors"):

I like this idea.  I might suggest formatting it this way instead to
try to minimise the clutter:

  git-debpush: error: check failed: last upload targeted unstable but now
  targeting experimental (--force=changed-suite to override)

Ian.

#1105815#15
Date:
2025-05-15 09:52:36 UTC
From:
To:
tor 2025-05-15 klockan 10:41 +0100 skrev Ian Jackson:

Perhaps make sure whitespace is around the parameter, to make
cut'n'paste work better:

git-debpush: error: check failed: last upload targeted unstable but now
targeting experimental (use --force=changed-suite to override)

Similar concerns is one of few UX issues I have with gbp, but I didn't
bother to report these and cannot recall which situation it was right
now.

/Simon

#1105815#20
Date:
2025-05-17 08:58:47 UTC
From:
To:
Hello,

I do not want git-debpush to suggest anything other than --force to the
user in its interactive output.
In the code there is a comment about that:

    # We don't mention the --force=check options here as those are
    # mainly for use by scripts, or when you already know what check
    # is going to fail before you invoke git-debpush.  Keep the
    # script's terminal output as simple as possible.  No "see the
    # manpage"!

This is an important part of how git-debpush is trying to be different
from dgit.  Adding "error:" is fine; I'll do that.

#1105815#25
Date:
2025-05-17 11:07:59 UTC
From:
To:
Sean Whitton writes ("Bug#1105815: git-debpush: suggest --force parameter on errors"):
*are* actionable - they say "please pass --force".

So maybe "error:" should be added to that line, rather than the check
failed line.

While thinking about this it occurred to me that we could make
git-debpush prompt for confirmation.  Sean, IDK if you like that idea.

Ian.

#1105815#30
Date:
2025-05-18 11:41:12 UTC
From:
To:
Hello,

I think it could work.  I'll experiment.

#1105815#37
Date:
2025-06-13 15:04:31 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
dgit, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1105815@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Ian Jackson <ijackson@chiark.greenend.org.uk> (supplier of updated dgit package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Fri, 13 Jun 2025 15:07:04 +0100
Source: dgit
Architecture: source
Version: 13.1
Distribution: experimental
Urgency: medium
Maintainer: Debian tag2upload Delegates <dgit-owner@debian.org>
Changed-By: Ian Jackson <ijackson@chiark.greenend.org.uk>
Closes: 1105756 1105815 1105862 1105878 1106078 1106481 1107226 1107550
Changes:
 dgit (13.1) experimental; urgency=medium
 .
   git-debpush behavioural improvements [Sean Whitton]:
   * Detect apparent intent to use pristine-tar (which is not supported).
     Closes: #1105862.  [Reports from Simon Josefsson, Anton Gladky]
   * Detect presence of git submodules, and fail early.
     Closes: #1107226.  [Report from Andrea Pappacoda]  See also #726953.
   * When checks fail, prompt interactively, asking whether to proceed.
     Closes: #1105815, #1107550.
   * Rename hazardous --quilt=auto, to --quilt=try-linear.
     [Prompted by report from Anton Gladky]
 .
   git-debpush(1) improvements [Sean Whitton]:
   * Document that we never do a git force push.
     Closes: #1105756.  [Report from Simon Josefsson]
   * --quilt=gbp: Mention quilt(1) explicitly.  [Report from Anton Gladky]
   * Fix erroneous dedent location for end of list of options.
 .
   tag2upload infrastructure:
   * t2u-b-rebuild: Improve logging and error handling.
   * tag2upload-oracled: Predeclare some function prototypes.
     Closes: #1105878.  [Sean Whitton]
 .
   Documentation:
   * Update to non-ancient distribution names in many docs.  [Marc Haber]
   * tag2upload(t5); Fix and clarify semantics of unknown tags,
     multiplicity, ordering, and syntax of keyword=value.
     Closes: #1106078.  [Report from Matthias Urlichs]
   * i18n: Updated message translation for nl.
     Closes: #1106481.  [Frans Spiesschaert]
Checksums-Sha1:
 181aea32ab01d93753bf6743db24aeebceb441f8 2050 dgit_13.1.dsc
 93df9c97bff90d5fefd58b98adb6913ef2363ba9 761885 dgit_13.1.tar.gz
Checksums-Sha256:
 2163074b54233784aae995e0388506c3cfd94683dcdf5348b1da83babcf3363b 2050 dgit_13.1.dsc
 5d4a7a997eee5bf447396510df3d800fa03523746dd41c6716710e5c7d252d19 761885 dgit_13.1.tar.gz
Files:
 bebb4d2e1437a947eb978f83c64df91c 2050 devel optional dgit_13.1.dsc
 62454e70ccfe131e7ad6891e2bab0dfc 761885 devel optional dgit_13.1.tar.gz
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEVZrkbC1rbTJl58uh4+M5I0i1DTkFAmhMOZQACgkQ4+M5I0i1
DTkHMwf+OJ/FCw1nhaPRsRTKZIXtVCqRjdWTNtqgP2l1YMxUifDE4aaLMwGjm9qn
mCQZlR6TM7Gw7/hIW07CMotKudOEnP6DLVImO++dbfLryd9pXy2h/IB4k74fzMwb
RKoLV91qKAi8P83QKoEuWvWQao6T9coVB6mb8xyQcvaLyB23PuxaC97B23sxWSOf
dPupUr7JdcZgYGtjYOm3oC+QUzjSrk/VJDTsMAcpqiT7EKZUgUkhnNmpPCYr6qwP
GjU4XeM7nVLEBzaSHgxJTKhff3DzLrX+of2e47P7MURS8SCzotvGzcNnbhH7JSMu
4qMVLCOw3ruWyELPnMmSP+jGl4Taew==
=EGP9
-----END PGP SIGNATURE-----