Bug#1013954: transition: opencv

2022-06-27 Thread Jochen Sprickerhof
Package: release.debian.org
Severity: normal
User: release.debian@packages.debian.org
Usertags: transition

Hi release team,

I would like to transition the new opencv version, containing a fix for
building with ffmpeg 5.0 (#1004718). The autogenerated ben tracker looks
fine and I've successfully rebuild all reverse dependencies listed on it
except:

already ftbfs due to other changes:

digikam #1004769
openimageio #1012176
os-autoinst #1013533
pytorch #1004782

newly filled:

sight #1013903

Cheers Jochen



Bug#1013944: bullseye-pu: package cyrus-imapd/3.2.6-2+deb11u2

2022-06-27 Thread Yadd
Package: release.debian.org
Severity: normal
Tags: bullseye
User: release.debian@packages.debian.org
Usertags: pu

[ Reason ]
Bookworm will provide cyrus-imapd 3.6.x. To permit a safe upgrade from
3.2.6, updtream provided a patch for versions 3.4 and 3.2. It ensure
that mailboxes have an unique id.

[ Impact ]
Risk during Bullseye to Bookworm upgrade.

[ Tests ]
Test passed
(https://salsa.debian.org/debian/cyrus-imapd/-/pipelines/393112)

[ Risks ]
This patch is the difference between 3.2.9 and 3.2.10, applied without
any change.

[ 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
  [X] the issue is verified as fixed in unstable

[ Changes ]
Cyrus tools now check if mailbox id is really unique.

Cheers,
Yadd
diff --git a/debian/changelog b/debian/changelog
index ca4d2a92..209a040f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+cyrus-imapd (3.2.6-2+deb11u2) bullseye; urgency=medium
+
+  * Ensure that ctl_cyrusdb -r and reconstruct now ensure the "uniqueid" field
+is present in and synchronised between mailboxes.db and cyrus.header.
+Required before 3.6.x upgrade
+
+ -- Yadd   Mon, 27 Jun 2022 21:41:17 +0200
+
 cyrus-imapd (3.2.6-2+deb11u1) bullseye; urgency=high
 
   * Replace string hashing algorithm (Closes: #993433, CVE-2021-33582)
diff --git a/debian/patches/prepare-3.6-upgrade.patch 
b/debian/patches/prepare-3.6-upgrade.patch
new file mode 100644
index ..a7b8aea0
--- /dev/null
+++ b/debian/patches/prepare-3.6-upgrade.patch
@@ -0,0 +1,244 @@
+Description: reconstruct mailboxes to prepare
+ ctl_cyrusdb -r and reconstruct now ensure the "uniqueid" field is present
+ in and synchronised between mailboxes.db and cyrus.header.
+Author: ellie timoney 
+Origin: upstream, https://github.com/cyrusimap/cyrus-imapd/commit/360e5d153
+ https://github.com/cyrusimap/cyrus-imapd/commit/93b01dd83
+ https://github.com/cyrusimap/cyrus-imapd/commit/0f59f9f36
+ https://github.com/cyrusimap/cyrus-imapd/commit/0ee7d128a
+ https://github.com/cyrusimap/cyrus-imapd/commit/2918ce8f0
+ https://github.com/cyrusimap/cyrus-imapd/commit/a330b471f
+ https://github.com/cyrusimap/cyrus-imapd/commit/df58b26cb
+Bug: https://github.com/cyrusimap/cyrus-imapd/pull/4100
+Forwarded: not-needed
+Reviewed-By: Yadd 
+Last-Update: 2022-06-27
+
+--- a/imap/ctl_cyrusdb.c
 b/imap/ctl_cyrusdb.c
+@@ -129,7 +129,7 @@
+ static int fixmbox(const mbentry_t *mbentry,
+void *rock __attribute__((unused)))
+ {
+-int r;
++int r, r2;
+ 
+ /* if MBTYPE_RESERVED, unset it & call mboxlist_delete */
+ if (mbentry->mbtype & MBTYPE_RESERVE) {
+@@ -172,12 +172,66 @@
+mbentry->name, cyrusdb_strerror(r));
+ }
+ 
++/* make sure every local mbentry has a uniqueid!  */
++if (!mbentry->uniqueid && mbentry_is_local_mailbox(mbentry)) {
++struct mailbox *mailbox = NULL;
++struct mboxlock *namespacelock = NULL;
++mbentry_t *copy = NULL;
++
++r = mailbox_open_iwl(mbentry->name, );
++if (r) {
++/* XXX what does it mean if there's an mbentry, but the mailbox
++ * XXX was not openable?
++ */
++syslog(LOG_DEBUG, "%s: mailbox_open_iwl %s returned %s",
++  __func__, mbentry->name, error_message(r));
++goto skip_uniqueid;
++}
++
++if (!mailbox->uniqueid) {
++/* yikes, no uniqueid in header either! */
++mailbox_make_uniqueid(mailbox);
++syslog(LOG_INFO, "mailbox %s header had no uniqueid, creating %s",
++ mbentry->name, mailbox->uniqueid);
++}
++
++copy = mboxlist_entry_copy(mbentry);
++copy->uniqueid = xstrdup(mailbox->uniqueid);
++syslog(LOG_INFO, "mbentry %s had no uniqueid, setting %s from header",
++ copy->name, copy->uniqueid);
++
++namespacelock = mboxname_usernamespacelock(copy->name);
++r = mboxlist_update(copy, /*localonly*/1);
++mboxname_release();
++if (r) {
++syslog(LOG_ERR, "failed to update mboxlist for %s: %s",
++mbentry->name, error_message(r));
++r2 = mailbox_abort(mailbox);
++if (r2) {
++syslog(LOG_ERR, "DBERROR: error aborting transaction: %s",
++cyrusdb_strerror(r2));
++}
++}
++else {
++r2 = mailbox_commit(mailbox);
++if (r2) {
++syslog(LOG_ERR, "DBERROR: error committing transaction: %s",
++cyrusdb_strerror(r2));
++}
++}
++mailbox_close();
++mboxlist_entry_free();
++
++skip_uniqueid:
++;   /* hush "label at end of compound statement" warning */
++}
++
+ return 0;
+ }
+ 
+ static void