Merge lp://qastaging/~mterry/duplicity/giobackend-display-name-0.7 into lp://qastaging/~duplicity-team/duplicity/0.8-series

Proposed by Michael Terry
Status: Superseded
Proposed branch: lp://qastaging/~mterry/duplicity/giobackend-display-name-0.7
Merge into: lp://qastaging/~duplicity-team/duplicity/0.8-series
Diff against target: 1277 lines (+477/-47) (has conflicts)
7 files modified
CHANGELOG (+24/-0)
Changelog.GNU (+22/-0)
bin/duplicity (+11/-0)
duplicity/backends/giobackend.py (+13/-4)
duplicity/collections.py (+39/-0)
po/duplicity.pot (+348/-43)
testing/unit/test_collections.py (+20/-0)
Text conflict in CHANGELOG
Text conflict in Changelog.GNU
Text conflict in bin/duplicity
Text conflict in duplicity/collections.py
Text conflict in po/duplicity.pot
Text conflict in testing/unit/test_collections.py
To merge this branch: bzr merge lp://qastaging/~mterry/duplicity/giobackend-display-name-0.7
Reviewer Review Type Date Requested Status
duplicity-team Pending
Review via email: mp+328632@code.qastaging.launchpad.net

This proposal has been superseded by a proposal from 2017-08-05.

Description of the change

I was doing some testing on the google-drive: GIO backend (this is not the gdoc: duplicity backend, but rather using GNOME's abstraction layer to talk to Google through the giobackend code) and noticed some problems.

(A) Getting a list of files was broken because this backend chooses to use internal IDs for all its filename. Only the display_name() call gets the real user-set filename. Which, OK. We can use that instead. This will work for google-drive: as well as all other backends, since that is the user-set/user-visible name that we want to work with anyway.

(B) Getting files wasn't working because we had been passing NOFOLLOW_SYMLINKS. Apparently the google-drive: backend treats all internal files as symlinks to other internal files? Doesn't matter, we can avoid having to care about what a backup does in that regard by simply not passing that flag. It was a level of precaution that we don't really need. Normally, duplicity will always be dealing with real files. If it's trying to get a symlink, it's because the user manually created one. In which case, maybe we should follow it, since the user wants us to.

Together, these fixes let google-drive: work (and maybe other similarly bizarre GIO backends). I also tested on a couple other backends (SSH and local) and they worked fine still.

To post a comment you must log in.

Unmerged revisions

1305. By Michael Terry

giobackend: handle a wider variety of gio backends by making less assumptions; in particular, this fixes the google-drive: backend

1304. By Kenneth Loafman

* Fixed encrypted remote manifest handling to merely put out a non-fatal
  error message and continue if the private key is not available.

1303. By Kenneth Loafman

* Comment out profiling code.

1302. By Kenneth Loafman

* Fixed slowness in 'collection-status' by basing the status on the
  remote system only. The local cache is treated as empty.

1301. By Kenneth Loafman

* Fix date of last change.

1300. By Kenneth Loafman

* Merged in lp:~dawgfoto/duplicity/skip_sync_collection_status
  - collection-status should not sync metadata
  - up-to-date local metadata is not needed as collection-status is
    generated from remote file list
  - syncing metadata might require to download several GBs

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches