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