← Back to team overview

duplicity-team team mailing list archive

[Merge] lp:~bllfr0g/duplicity/duplicity into lp:duplicity

 

Adam Jacobs has proposed merging lp:~bllfr0g/duplicity/duplicity into lp:duplicity.

Commit message:
fixes bug #1847885
fixes b2 backend so it is backwards compatible with v0 of b2sdk AND forward compatible with v1

Requested reviews:
  Kenneth Loafman (kenneth-loafman)
Related bugs:
  Bug #1847885 in Duplicity: "Fix for bug #1843995 incomplete"
  https://bugs.launchpad.net/duplicity/+bug/1847885

For more details, see:
https://code.launchpad.net/~bllfr0g/duplicity/duplicity/+merge/374070

re-submitting with additional fix for b2sdk v1, and changelog updates
-- 
Your team duplicity-team is subscribed to branch lp:duplicity.
=== modified file 'CHANGELOG'
--- CHANGELOG	2019-10-08 19:19:37 +0000
+++ CHANGELOG	2019-10-14 03:45:51 +0000
@@ -6,6 +6,11 @@
   that duplicity's ssh_paramiko_backend.py was not handling
   warning suppression and ended up clearing all warnings,
   including those that default to off.
+* Updated b2 backend to work with both v0 and v1 of b2sdk
+* Fixed bug #1847885 - B2 fails on string concatenation.
+  - use util.fsdecode() to get a string not bytes.
+  - Partially fixed in bug #1843995, this applies same fix to
+    remaining instances of the problem
 
 
 New in v0.8.05 (2019/10/06)

=== modified file 'Changelog.GNU'
--- Changelog.GNU	2019-10-08 19:19:37 +0000
+++ Changelog.GNU	2019-10-14 03:45:51 +0000
@@ -1,3 +1,11 @@
+2019-10-12  Adam Jacobs  <alj@xxxxxxxxxxxx>
+
+    * Updated b2 backend to work with both v0 and v1 of b2sdk
+    * Fixed bug #1847885 - B2 fails on string concatenation.
+      - use util.fsdecode() to get a string not bytes.
+      - Partially fixed in bug #1843995, this applies same fix to
+        remaining instances of the problem
+
 2019-10-08  Kenneth Loafman  <kenneth@xxxxxxxxxxx>
 
     * Fixed Resouce warnings when using paramiko.  It turns out

=== modified file 'duplicity/backends/b2backend.py'
--- duplicity/backends/b2backend.py	2019-10-05 15:55:30 +0000
+++ duplicity/backends/b2backend.py	2019-10-14 03:45:51 +0000
@@ -135,21 +135,21 @@
         u"""
         Delete filename from remote server
         """
-        log.Log(u"Delete: %s" % self.path + filename, log.INFO)
-        file_version_info = self.file_info(quote_plus(self.path + filename))
+        log.Log(u"Delete: %s" % self.path + util.fsdecode(filename), log.INFO)
+        file_version_info = self.file_info(quote_plus(self.path + util.fsdecode(filename)))
         self.bucket.delete_file_version(file_version_info.id_, file_version_info.file_name)
 
     def _query(self, filename):
         u"""
         Get size info of filename
         """
-        log.Log(u"Query: %s" % self.path + filename, log.INFO)
-        file_version_info = self.file_info(quote_plus(self.path + filename))
+        log.Log(u"Query: %s" % self.path + util.fsdecode(filename), log.INFO)
+        file_version_info = self.file_info(quote_plus(self.path + util.fsdecode(filename)))
         return {u'size': file_version_info.size
                 if file_version_info is not None and file_version_info.size is not None else -1}
 
     def file_info(self, filename):
-        response = self.bucket.list_file_names(filename, 1)
+        response = self.bucket.api.session.list_file_names(self.bucket.id_, filename, 1, None)
         for entry in response[u'files']:
             file_version_info = b2.file_version.FileVersionInfoFactory.from_api_response(entry)
             if file_version_info.file_name == filename:


Follow ups