[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1007001: bullseye-pu: package gtk+3.0/3.24.24-4+deb11u2



Package: release.debian.org
Severity: normal
Tags: bullseye
User: release.debian.org@packages.debian.org
Usertags: pu
X-Debbugs-Cc: debian-gtk-gnome@lists.debian.org, debian-printing@lists.debian.org, debian-desktop@lists.debian.org
Control: block -1 by 1005694
Control: block 982925 by -1
Control: block 1006281 by -1

[ Reason ]

Two unrelated changes, which can be separated if required:

* Backport a fix for Wayland clipboard handling as requested in #1006281
* Improve printing to mDNS-discovered printers as requested in #982925

This version supersedes +deb11u1 from #1005694, but if the release team are
unable to review +deb11u2 before the 11.3 deadline, I would prefer to have
+deb11u1 (or a +deb11u2 with just the Wayland fix) than no update at all.

[ Impact ]

The Wayland issue causes copy/paste to become inoperable when pasting into
an application that doesn't accept the format initially offered by GTK.

The printing issue causes GTK to display several printers with very
similar names, which at a minimum is confusing. Depending on the printer,
the driver, the level of support in CUPS and the phase of the moon,
often only a subset of the duplicate printers will work for printing
(they might not accept print jobs at all, or they might print nonsense).

The proposed change aims to make printing equivalent to bookworm's GTK,
and also bullseye/bookworm's Qt 5. Depending on CUPS behaviour, this
still might not be perfect, but at least it'll be consistent.

[ Tests ]

The upstream bug for the Wayland issue has a straightforward reproducer,
which I have confirmed fails on bullseye, succeeds on sid, and succeeds
on bullseye with the proposed change.

For the printing issue, I tested several candidate versions manually
with my single printer in multiple CUPS configurations, and also
requested testing from affected users on #982925. The results are not
100% conclusive, but don't seem to be any worse than the status quo,
and are usually better. What I'm proposing here is equivalent to the
release candidate labelled "~mr6.1" in #982925 (except that this version
adds the unrelated Wayland change, which wasn't in the release candidate
that was used to test printing).

Build-time tests and autopkgtests still pass, but I don't think they cover
either of the code paths altered by this update.

Most of the printing changes have been in use in EndlessOS for a while,
apparently without known regressions, and they proposed them for inclusion
in bullseye r0. Unfortunately, the proposal was during hard freeze,
so we weren't able to accept significant changes at that point.

[ Risks ]

Obviously this is a high-visibility package, which is essential to our
default desktop environment and most of our non-default desktops. If the
changes cause regressions, I would expect the scope of any regressions to
be similar to the bugs we're fixing: Wayland copy/paste, and CUPS printing.

The majority of the changes here are straightforward backports from
bookworm. The patches result in gdk/wayland/gdkselection-wayland.c being
identical to the version in bookworm/sid, and
modules/printbackends/cups/*.[ch] almost identical to bookworm/sid:
I think that will have a lower regression risk than trying to minimize
the diffstat by writing new code.

There is one change here that is new to bullseye (and also not in EndlessOS),
d/p/debian/cups-Use-the-same-name-mangling-as-Debian-11-s-cups-brows.patch,
so that's higher-risk, but necessary for interoperability with bullseye's
cups-browsed (without this change, we'd still generate near-duplicate
entries for some printers, including mine). It's 1 line of straightforward
code, so should be reasonably safe.

The proposed change makes GTK's own printer discovery avoid duplicating
printers that were manually configured in CUPS or discovered by
cups-browsed. From user testing, it seems that printers detected by
cups-browsed don't always work (which would be a CUPS bug that should be
handled separately). If that's the case, and a user was previously working
around this by using the near-duplicate printer discovered by GTK, then
that workaround will no longer work. However, I think this is unlikely,
because GTK's own printer discovery did not work reliably before this
update anyway. If a user is affected by this, they can restore their
workaround by uninstalling cups-browsed or by configuring the printer
manually.

[ Checklist ]

  [x] *all* changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in (old)stable
      - the debdiff is against the older update that was already approved
        by Adam D. Barratt in #1005694
  [x] the issue is verified as fixed in unstable

[ Changes ]

All changes other than d/changelog are via quilt patches. The attached
debdiff shows the changes both as patches and as direct changes, please
review whichever "view" you prefer.

wayland-Ensure-clipboard-handling-doesn-t-lock-up-in-cert.patch is the
Wayland copy/paste fix (#1006281).

printing-Create-temporary-queues-for-Avahi-printers.patch,
printing-Show-all-Avahi-advertised-printers.patch,
Don-t-try-to-create-local-cups-printers-before-CUPS-2.2.patch backport
the whole CUPS printing implementation from bookworm. I had previously
considered a more minimal version that just adjusts the naming that GTK
will use when it discovers printers via mDNS, but I think if we're going
to take the regression risk of touching this code at all, we should upgrade
it to the best available version.

debian/cups-Use-the-same-name-mangling-as-Debian-11-s-cups-brows.patch
adjusts printer naming so that it matches bullseye instead of bookworm
cups-browsed. If we don't do this, printer names that start or end with
a parenthesis will still end up as duplicates.

[ Other info ]

src:gtk+3.0 technically builds udebs, but kibi confirmed on #1005694 that
d-i doesn't use them, so maybe we can skip the d-i ack?

Like everyone else who has had to interact with them, I hate printers.

Attachment: gtk+3.0_3.24.24-4+deb11u2.diff.gz
Description: application/gzip


Reply to: