Special characters in an error message

Bug #1731995 reported by Stefan Radke on 2017-11-13
8
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Duplicity
Medium
Unassigned

Bug Description

Special characters in an error message (which can contain a path name, for example) lead to another error because the duplicate developers cannot handle special characters. This has apparently been noticed in 2014, the proposed fix has been adopted, but no one has checked whether the bug has been fixed.

Traceback (most recent call last):
  File "/usr/bin/duplicity", line 1546, in <module>
    with_tempdir(main)
  File "/usr/bin/duplicity", line 1540, in with_tempdir
    fn()
  File "/usr/bin/duplicity", line 1391, in main
    do_backup(action)
  File "/usr/bin/duplicity", line 1510, in do_backup
    full_backup(col_stats)
  File "/usr/bin/duplicity", line 575, in full_backup
    globals.backend)
  File "/usr/bin/duplicity", line 456, in write_multivol
    (tdp, dest_filename, vol_num)))
  File "/usr/lib/python2.7/dist-packages/duplicity/asyncscheduler.py", line 146, in schedule_task
    return self.__run_synchronously(fn, params)
  File "/usr/lib/python2.7/dist-packages/duplicity/asyncscheduler.py", line 172, in __run_synchronously
    ret = fn(*params)
  File "/usr/bin/duplicity", line 455, in <lambda>
    vol_num: put(tdp, dest_filename, vol_num),
  File "/usr/bin/duplicity", line 344, in put
    backend.put(tdp, dest_filename)
  File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 376, in inner_retry
    % exception_traceback())
  File "/usr/lib/python2.7/dist-packages/duplicity/util.py", line 52, in exception_traceback
    return uexc(msg)
  File "/usr/lib/python2.7/dist-packages/duplicity/util.py", line 80, in uexc
    e = unicode(e).encode('utf-8')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 736: ordinal not in range(128)

Download full text (4.6 KiB)

What version are you running? 0.7.15 was released today with a few more
unicode fixes, so give that a try.

There are three options:

* Release tarball Install - https://launchpad.net/duplicity/+download
* Daily duplicity builds -
https://launchpad.net/~duplicity-team/+archive/ubuntu/daily
* Stable duplicity builds -
https://launchpad.net/~duplicity-team/+archive/ubuntu/ppa

NOTE: UNinstall duplicity first if it was installed via the distribution
repository. For Ubuntu, that would be "sudo apt-get purge duplicity".

On Mon, Nov 13, 2017 at 12:15 PM, Stefan Radke <email address hidden> wrote:

> Public bug reported:
>
> Special characters in an error message (which can contain a path name,
> for example) lead to another error because the duplicate developers
> cannot handle special characters. This has apparently been noticed in
> 2014, the proposed fix has been adopted, but no one has checked whether
> the bug has been fixed.
>
> Traceback (most recent call last):
> File "/usr/bin/duplicity", line 1546, in <module>
> with_tempdir(main)
> File "/usr/bin/duplicity", line 1540, in with_tempdir
> fn()
> File "/usr/bin/duplicity", line 1391, in main
> do_backup(action)
> File "/usr/bin/duplicity", line 1510, in do_backup
> full_backup(col_stats)
> File "/usr/bin/duplicity", line 575, in full_backup
> globals.backend)
> File "/usr/bin/duplicity", line 456, in write_multivol
> (tdp, dest_filename, vol_num)))
> File "/usr/lib/python2.7/dist-packages/duplicity/asyncscheduler.py",
> line 146, in schedule_task
> return self.__run_synchronously(fn, params)
> File "/usr/lib/python2.7/dist-packages/duplicity/asyncscheduler.py",
> line 172, in __run_synchronously
> ret = fn(*params)
> File "/usr/bin/duplicity", line 455, in <lambda>
> vol_num: put(tdp, dest_filename, vol_num),
> File "/usr/bin/duplicity", line 344, in put
> backend.put(tdp, dest_filename)
> File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 376,
> in inner_retry
> % exception_traceback())
> File "/usr/lib/python2.7/dist-packages/duplicity/util.py", line 52, in
> exception_traceback
> return uexc(msg)
> File "/usr/lib/python2.7/dist-packages/duplicity/util.py", line 80, in
> uexc
> e = unicode(e).encode('utf-8')
> UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 736:
> ordinal not in range(128)
>
> ** Affects: duplicity
> Importance: Undecided
> Status: New
>
> --
> You received this bug notification because you are subscribed to
> Duplicity.
> https://bugs.launchpad.net/bugs/1731995
>
> Title:
> Special characters in an error message
>
> Status in Duplicity:
> New
>
> Bug description:
> Special characters in an error message (which can contain a path name,
> for example) lead to another error because the duplicate developers
> cannot handle special characters. This has apparently been noticed in
> 2014, the proposed fix has been adopted, but no one has checked
> whether the bug has been fixed.
>
> Traceback (most recent call last):
> File "/usr/bin/duplicity", line 1546, in <module>
> with_tempdir(main)
> File "/usr/bin/duplicity", li...

Read more...

mclovin (asdflea) wrote :

I tried version 0.7.15 from the ppa after getting the same error as stated above on 0.7.12 on Ubuntu 17.10. It doesn't solve the issue, though.

What environ are you running in? terminal? cron?

Try this from terminal:
$ python -c "import sys; print sys.getfilesystemencoding();"

You should see utf-8, or anything but ascii.

On Fri, Nov 17, 2017 at 3:24 AM, mclovin <email address hidden> wrote:

> I tried version 0.7.15 from the ppa after getting the same error as
> stated above on 0.7.12 on Ubuntu 17.10. It doesn't solve the issue,
> though.
>
> --
> You received this bug notification because you are subscribed to
> Duplicity.
> https://bugs.launchpad.net/bugs/1731995
>
> Title:
> Special characters in an error message
>
> Status in Duplicity:
> New
>
> Bug description:
> Special characters in an error message (which can contain a path name,
> for example) lead to another error because the duplicate developers
> cannot handle special characters. This has apparently been noticed in
> 2014, the proposed fix has been adopted, but no one has checked
> whether the bug has been fixed.
>
> Traceback (most recent call last):
> File "/usr/bin/duplicity", line 1546, in <module>
> with_tempdir(main)
> File "/usr/bin/duplicity", line 1540, in with_tempdir
> fn()
> File "/usr/bin/duplicity", line 1391, in main
> do_backup(action)
> File "/usr/bin/duplicity", line 1510, in do_backup
> full_backup(col_stats)
> File "/usr/bin/duplicity", line 575, in full_backup
> globals.backend)
> File "/usr/bin/duplicity", line 456, in write_multivol
> (tdp, dest_filename, vol_num)))
> File "/usr/lib/python2.7/dist-packages/duplicity/asyncscheduler.py",
> line 146, in schedule_task
> return self.__run_synchronously(fn, params)
> File "/usr/lib/python2.7/dist-packages/duplicity/asyncscheduler.py",
> line 172, in __run_synchronously
> ret = fn(*params)
> File "/usr/bin/duplicity", line 455, in <lambda>
> vol_num: put(tdp, dest_filename, vol_num),
> File "/usr/bin/duplicity", line 344, in put
> backend.put(tdp, dest_filename)
> File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line
> 376, in inner_retry
> % exception_traceback())
> File "/usr/lib/python2.7/dist-packages/duplicity/util.py", line 52,
> in exception_traceback
> return uexc(msg)
> File "/usr/lib/python2.7/dist-packages/duplicity/util.py", line 80,
> in uexc
> e = unicode(e).encode('utf-8')
> UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position
> 736: ordinal not in range(128)
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/duplicity/+bug/1731995/+subscriptions
>

Changed in duplicity:
status: New → Incomplete
Changed in duplicity:
importance: Undecided → Medium
milestone: none → 0.7.16
status: Incomplete → Fix Committed
Changed in duplicity:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers