Package: duplicity Version: 0.8.22-1+b3 Severity: normal X-Debbugs-Cc: timon.degr...@hypernode.com
Dear Maintainer, * What led up to the situation? We create write offsite backups to s3 with duply/duplicity. We run duplicity with the following params (from duply): --s3-european-buckets --s3-use-new-style --s3-multipart-chunk-size=25 --s3-use-multiprocessing --s3-use-ia * What exactly did you do (or not do) that was effective (or ineffective)? When we run the duply backup, we get to see the error: During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/duplicity/backends/_boto_multi.py", line 223, in _upload mp.upload_part_from_file(fd, offset + 1, cb=_upload_callback, File "/usr/lib/python3/dist-packages/boto/s3/multipart.py", line 257, in upload_part_from_file key.set_contents_from_file(fp, headers=headers, replace=replace, File "/usr/lib/python3/dist-packages/boto/s3/key.py", line 1307, in set_contents_from_file self.send_file(fp, headers=headers, cb=cb, num_cb=num_cb, File "/usr/lib/python3/dist-packages/boto/s3/key.py", line 760, in send_file self._send_file_internal(fp, headers=headers, cb=cb, num_cb=num_cb, File "/usr/lib/python3/dist-packages/boto/s3/key.py", line 932, in _send_file_internal self.content_type = mimetypes.guess_type(self.path)[0] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/mimetypes.py", line 307, in guess_type return _db.guess_type(url, strict) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/mimetypes.py", line 123, in guess_type scheme, url = urllib.parse._splittype(url) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/urllib/parse.py", line 1038, in _splittype match = _typeprog.match(url) ^^^^^^^^^^^^^^^^^^^^ TypeError: cannot use a string pattern on a bytes-like object Giving up after 5 attempts. BackendException: Multipart upload failed. Aborted. * What outcome did you expect instead? Duplicity to finish the backup and upload to S3, not crash For your info/convenience, we repackaged bookworm duplicity in our own repo with this patch applied: https://gitlab.com/duplicity/duplicity/-/merge_requests/99 Our repackaged duplicity: https://apt.hypernode.com/pool/hypernode/d/duplicity/duplicity_0.8.22-1%2Bhypernode1_amd64.deb Upstream issue: https://gitlab.com/duplicity/duplicity/-/issues/126 Ubuntu also has related issue: https://bugs.launchpad.net/ubuntu/+source/duplicity/+bug/1908971 -- System Information: Debian Release: 12.5 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 6.1.0-18-amd64 (SMP w/2 CPU threads; PREEMPT) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages duplicity depends on: ii gnupg 2.2.40-1.1 ii libc6 2.36-9+deb12u4 ii librsync2 2.3.2-1+b1 ii python3 3.11.2-1+b1 ii python3-fasteners 0.17.3-2 ii python3-future 0.18.2-6 ii python3-lockfile 1:0.12.2-2.2 ii python3.11 3.11.2-6 Versions of packages duplicity recommends: ii python3-oauthlib 3.2.2-1 ii python3-paramiko 2.12.0-2 ii python3-pexpect 4.8.0-4 ii python3-urllib3 1.26.12-1 ii rsync 3.2.7-1 Versions of packages duplicity suggests: pn lftp <none> pn ncftp <none> pn par2 <none> pn python3-boto <none> ii python3-pip 23.0.1+dfsg-1 pn python3-swiftclient <none> pn tahoe-lafs <none> -- no debconf information