duplicity cannot back up files from Russian file directory
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Duplicity |
Fix Released
|
Medium
|
Unassigned | ||
duplicity (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Trusty |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[Impact]
Any user of the gio backend in duplicity (used by Deja Dup) backing up to a directory with utf8 characters in it is unable to complete a single backup.
[Test Case]
mkdir /tmp/source
echo test > /tmp/source/test
mkdir /tmp/Ж
duplicity --gio --no-encryption /tmp/source file:///tmp/Ж
[Regression Potential]
The upstream patch to fix this mostly affects various exception or logging code paths. But each one is pretty simple change (just upgrading ascii to unicode).
[Original Report]
After upgrading to Ubuntu 14.04 from 13.10, Duplicity cannot backup files. The location it will backup and the location to backup have both Russian characters in path. I believe this is the reason of the problem.
After failure, duplicity shows this log:
-------
Traceback (most recent call last):
File "/usr/bin/
with_
File "/usr/bin/
fn()
File "/usr/bin/
do_
File "/usr/bin/
incremental
File "/usr/bin/
globals.
File "/usr/bin/
(tdp, dest_filename, vol_num)))
File "/usr/lib/
return self.__
File "/usr/lib/
ret = fn(*params)
File "/usr/bin/
async_
File "/usr/bin/
backend.
File "/usr/lib/
self.
File "/usr/lib/
return fn(*args, **kwargs)
File "/usr/lib/
log.
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 36: ordinal not in range(128)
-------
I believe the related script shall be fixed with "u" prefix, as explained here:
http://
Ozgur
ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: duplicity 0.6.23-1ubuntu4
ProcVersionSign
Uname: Linux 3.13.0-24-generic i686
ApportVersion: 2.14.1-0ubuntu3
Architecture: i386
CurrentDesktop: Unity
Date: Tue Apr 29 01:37:39 2014
SourcePackage: duplicity
UpgradeStatus: Upgraded to trusty on 2014-04-18 (10 days ago)
Related branches
- duplicity-team: Pending requested
-
Diff: 254 lines (+32/-20)10 files modifiedbin/duplicity (+4/-4)
duplicity/backend.py (+3/-3)
duplicity/backends/_cf_cloudfiles.py (+2/-1)
duplicity/backends/_cf_pyrax.py (+2/-1)
duplicity/backends/dpbxbackend.py (+3/-2)
duplicity/backends/giobackend.py (+2/-1)
duplicity/backends/swiftbackend.py (+2/-1)
duplicity/backends/webdavbackend.py (+2/-1)
duplicity/patchdir.py (+1/-1)
duplicity/util.py (+11/-5)
description: | updated |
description: | updated |
Changed in duplicity: | |
importance: | Undecided → Medium |
milestone: | none → 0.6.24 |
description: | updated |
tags: |
added: verification-done removed: verification-needed |
Changed in duplicity: | |
status: | Fix Committed → Fix Released |
Upstream has fixed this in trunk coincidentally already, by moving the "Writing %s" line elsewhere and not using the full path name.