Hi!

On Sun, 2025-07-20 at 09:45:37 +0200, Niels Thykier wrote:
> I have cloned and reassign a bug for `dpkg` to make it announce
> postinst abort-upgrade, so this becomes less of a problem in the
> future. @Guillem: Concretely, the issue is we were only informed
> about `preinst` failing but in reality `preinst` failed and then
> `postinst abort-upgrade` failed as well. The output we saw from the
> maintscript itself was from `postinst` (the preinst failure was
> silent, so the postinst failure was the only output we had to go
> from).

I took a quick look at the involved code before departing from DebConf
yesterday, and came up with a potential fix. But afterwards when trying
to create a minimal test case for the functional test suite, I'm actually
getting the expected stacked error messages, such as:

  ,---
  (Reading database ... 1 file or directory currently installed.)
  Preparing to unpack pkg-stacked-error-1.deb ...
  dpkg: error processing archive pkg-stacked-error-1.deb (--unpack):
   new pkg-stacked-error package pre-installation script subprocess returned 
error exit status 1
  dpkg: error while cleaning up:
   installed pkg-stacked-error package post-installation script subprocess 
returned error exit status 1
  Errors were encountered while processing:
   pkg-stacked-error-1.deb
  `---

So I think I'm probably missing some step or my test case is not doing
the same as what is going on in the report. I'll try to run the provided
mmdebstrap rune with dpkg set to include maintscript debugging logging,
to try to see what's exactly going on later today.

>  - A new bug (important) about the preinst being silent on aborting
>    the upgrade. It would have helped a lot of the preinst had explicitly
>    echo'ed "Aborting upgrade as requested" (or something along those
>    lines), as it would have been easier to identify the root cause
>    here

Indeed.

> Thanks to Lucas and Chris for their work identifying the bug and
> finding the root cause.

Yes!

Thanks,
Guillem

Reply via email to