Duplicity 0.6.24

Milestone information

Project:
Duplicity
Series:
0.6
Version:
0.6.24
Released:
 
Registrant:
Kenneth Loafman
Release registered:
Active:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
No users assigned to blueprints and bugs.
Blueprints:
No blueprints are targeted to this milestone.
Bugs:
11 Fix Released

Download files for this release

After you've downloaded a file, you can verify its authenticity using its MD5 sum or signature. (How do I verify a download?)

File Description Downloads
download icon duplicity-0.6.24-0.fdr.6.i386.rpm (md5, sig) duplicity binary rpm 655
last downloaded 59 weeks ago
download icon duplicity-0.6.24-0.fdr.6.src.rpm (md5, sig) duplicity src rpm 396
last downloaded 17 weeks ago
download icon duplicity-0.6.24.tar.gz (md5, sig) duplicity tarball 11,738
last downloaded 5 days ago
Total downloads: 12,789

Release notes 

New in v0.6.24 (2014/05/09)
---------------------------
Enhancements:
* Applied two patches from mailing list message at:
  https://lists.nongnu.org/archive/html/duplicity-talk/2014-01/msg00030.html
  "Added command line options to use different prefixes for duplicity files"
  This resolves https://bugs.launchpad.net/duplicity/+bug/1170161 and provides
  a workaround for https://bugs.launchpad.net/duplicity/+bug/1170113
* Merged in lp:~mterry/duplicity/gpg-encode
  - getpass.getpass(prompt) eventually calls str(prompt). Which is a no go,
    if the prompt contains unicode. Here's a patch to always pass getpass() a
    byte string.
  - Our tests didn't catch this because they always set PASSPHRASE. I've added
    a test that passes the passphrase via stdin.
* Merged in lp:~mterry/duplicity/pexpect-fix
  - duplicity has its own copy of pexpect. Use that instead of requiring one
    from the system.
* Merged in lp:~prateek/duplicity/s3-glacier
  - Fixes https://bugs.launchpad.net/duplicity/+bug/1039511
    - Adds support to detect when a file is on Glacier and initiates a restore
      to S3. Also merges overlapping code in the boto backends
  - Fixes https://bugs.launchpad.net/duplicity/+bug/1243246
    - Adds a --s3_multipart_max_timeout input option to limit the max execution
      time of a chunked upload to S3. Also adds debug message to calculate
      upload speed.
* Merged in lp:~ed.so/duplicity/fix.dpbx
  - Fix dpbx backend "NameError: global name 'rest' is not defined"
* Merged in lp:~prateek/duplicity/botoimportfix
  - Switches the boto backend back to using lazy imports so there are no
    complaints during the importing of backends.
* Merged in lp:~germer/duplicity/par2
  - This branch adds Par2 recovery files to duplicity. It is a wrapper backend
    which will create the recovery files and upload them all together with the
    wrapped backend. Corrupt archives will be detected and repaired (if
    possible) on the fly during restore.
  - It can be used with url-string par2+webdavs://USER@HOST/PATH
  - Fixes https://bugs.launchpad.net/duplicity/+bug/426282
* Merged in lp:~fredrik-loch/duplicity/duplicity-S3-SSE
  - Adds support for server side encryption as requested in Bug #996660
* Merged in lp:~mterry/duplicity/modern-testing
  - Enable/use more modern testing tools like nosetests and tox as well as more
    common setup.py hooks like test and sdist.
  - Specifically:
    * move setup.py to toplevel where most tools and users expect it
    * Move and adjust test files to work when running "nosetests" in toplevel
      directory. Specifically, do a lot more of the test setup in
      tests/__init__.py rather than the run-tests scripts
    * Add small tox.ini file for using tox, which is a wrapper for using
      virtualenv. Only enable for py26 and py27 right now, since modern
      setuptools dropped support for <2.6 (and tox 1.7 recently dropped <2.6)
    * Add setup.py hooks for test and sdist which are both standard targets
      (sdist just outsources to dist/makedist right now)
* Merged in lp:~mterry/duplicity/drop-u1
  - Ubuntu One is closing shop. So no need to support a u1 backend anymore.
* Merged in lp:~mterry/duplicity/fix-drop-u1
  - Looks like when the drop-u1 branch got merged, its conflict got resolved
    badly. Here is the right version of backend.py to use (and also drops
    u1backend.py from POTFILES).
* Merged in lp:~mterry/duplicity/encode-for-print
  - Encode translated strings before passing them to 'print'.
  - The print command can only apparently handle bytes. So when we pass it
    unicode, it freaks out. There were only four instances I saw where we used
    print, so I figured it was easiest to just convert them to use the log
    framework too.
  - That way all user-visible strings go through that framework and are subject
    to the same encoding rules.
* Merged in lp:~mterry/duplicity/more-test-reorg
  - Here's another test reorganization / modernization branch. It does the
    following things:
    - Drop duplicity/misc.py. It is confusing to have both misc.py and util.py,
      and most of the code in misc.py was no longer used. I moved the one
      function that was still used into util.py.
    - Consolidated the various ways to run tests into just one. I made tox runs
      go through ./setup.py test, rather than nosetests. And I made the
      ./testing/run-tests scripts just call tox. Now we no longer need nosetests
      as a test dependency (although you can still use it if you want).
    - Added two more code quality automated tests: a pep8 one and a pylint one.
      I disabled almost all checks in each program that gave a warning. These
      tests just establish a baseline for future improvement.
    - Moved the test helper code into TestCase subclasses that all tests can
      use. And used more code sharing and setUp/tearDown cleverness to remove
      duplicated code.
    - Reorganized the tests in ./testing/tests into ./testing/functional and
      ./testing/unit -- for whether they drive duplicity as a subprocess or
      whether they import and test code directly. Each dir can have specialized
      TestCase subclasses now.
    - Renamed the files in ./testing/unit to more clearly indicate which file
      in ./duplicity they are unit testing.
    - Added some helper methods for tests to set environment and globals.*
      parameters more safely (i.e. without affecting other tests) by
      automatically cleaning up any such changes during test tearDown.
    - Removed test_unicode.py, since it is kind of dumb. It used to be more
      useful, but now with py2.6, we are just testing that one line of code
      in it is actually there.
* Fixed bug #1312328 WebDAV backend can't understand 200 OK response to DELETE
  - Allow both 200 and 204 as valid response to delete
* Merged in lp:~mterry/duplicity/encode-exceptions
  - Because exceptions often contain file paths, they have the same problem
    with Python 2.x's implicit decoding using the 'ascii' encoding that we've
    experienced before. So I added a new util.uexc() method that uses the
    util.ufn() method to convert an exception to a unicode string and used it
    around the place.
  - Bugs fixed: 1289288, 1311176, 1313966
* Applied expat fix from edso. See answer #12 in
  https://answers.launchpad.net/duplicity/+question/248020

Changelog 

View the full changelog

2014-05-07 Kenneth Loafman <email address hidden>

    * Applied expat fix from edso. See answer #12 in
      https://answers.launchpad.net/duplicity/+question/248020

2014-04-30 Kenneth Loafman <email address hidden>

    * Merged in lp:~mterry/duplicity/encode-exceptions
      - Because exceptions often contain file paths, they have the same problem
        with Python 2.x's implicit decoding using the 'ascii' encoding that we've
        experienced before. So I added a new util.uexc() method that uses the
        util.ufn() method to convert an exception to a unicode string and used it
        around the place.
      - Bugs fixed: 1289288, 1311176, 1313966

2014-04-25 Kenneth Loafman <email address hidden>

    * Fixed bug #1312328 WebDAV backend can't understand 200 OK response to DELETE
      - Allow both 200 and 204 as valid response to delete

2014-04-20 Kenneth Loafman <email address hidden>

    * Merged in lp:~mterry/duplicity/more-test-reorg
      - Here's another test reorganization / modernization branch. It does the
        following things:
        - Drop duplicity/misc.py. It is confusing to have both misc.py and util.py,
          and most of the code in misc.py was no longer used. I moved the one
          function that was still used into util.py.
        - Consolidated the various ways to run tests into just one. I made tox runs
          go through ./setup.py test, rather than nosetests. And I made the
          ./testing/run-tests scripts just call tox. Now we no longer need nosetests
          as a test dependency (although you can still use it if you want).
        - Added two more code quality automated tests: a pep8 one and a pylint one.
          I disabled almost all checks in each program that gave a warning. These
          tests just establish a baseline for future improvement.
        - Moved the test helper code into TestCase subclasses that all tests can
          use. And used more code sharing and setUp/tearDown cleverness to remove
          duplicated code.
        - Reorganized the tests in ./testing/tests into ./testing/functional and
          ./testing/unit -- for whether they drive duplicity as a subprocess or
          whether they import and test code directly. Each dir can have specialized
          TestCase subclasses now.
        - Renamed the files in ./testing/unit to more clearly indicate which file
          in ./duplicity they are unit testing.
        - Added some helper methods for tests to set environment and globals.*
          parameters more safely (i.e. without affecting other tests) by
          automatically cleaning up any such changes during test tearDown.
        - Removed test_unicode.py, since it is kind of dumb. It used to be more
          useful, but now with py2.6, we are just testing that one line of code
          in it is actually there.

2014-04-19 Kenneth Loafman <email address hidden>

    * Merged in lp:~mterry/duplicity/encode-for-print
      - Encode translated strings before passing them to 'print'.
      - The print command can only apparently handle bytes. So when we pass it
        unicode, it freaks out. There were only four instances I saw where we used
        print, so I figured it was easiest to just convert them to use the log
        framework too.
      - That way all user-visible strings go through that framework and are subject
        to the same encoding rules.

2014-04-17 Kenneth Loafman <email address hidden>

    * Merged in lp:~fredrik-loch/duplicity/duplicity-S3-SSE
      - Adds support for server side encryption as requested in Bug #996660
    * Merged in lp:~mterry/duplicity/consolidate-tests
      - Consolidate all the duplicity-running code in the test framework.
      - This takes the four test files [1] that run duplicity itself (i.e. the
        high-level functional test files) and consolidates their code. Before, it
        was madness. Each one had its own run_duplicity method, with its own
        slightly tweaked features. This should reduce a lot of duplication.
      - [1] cleanuptest.py, finaltest.py, restarttest.py, and badupload.py
    * Merged in lp:~mterry/duplicity/modern-testing
      - Enable/use more modern testing tools like nosetests and tox as well as more
        common setup.py hooks like test and sdist.
      - Specifically:
        * move setup.py to toplevel where most tools and users expect it
        * Move and adjust test files to work when running "nosetests" in toplevel
          directory. Specifically, do a lot more of the test setup in
          tests/__init__.py rather than the run-tests scripts
        * Add small tox.ini file for using tox, which is a wrapper for using
          virtualenv. Only enable for py26 and py27 right now, since modern
          setuptools dropped support for <2.6 (and tox 1.7 recently dropped <2.6)
        * Add setup.py hooks for test and sdist which are both standard targets
          (sdist just outsources to dist/makedist right now)
    * Merged in lp:~mterry/duplicity/drop-u1
      - Ubuntu One is closing shop. So no need to support a u1 backend anymore.
    * Merged in lp:~mterry/duplicity/fix-drop-u1
      - Looks like when the drop-u1 branch got merged, its conflict got resolved
        badly. Here is the right version of backend.py to use (and also drops
        u1backend.py from POTFILES).

2014-03-10 Kenneth Loafman <email address hidden>

     * Merged in lp:~germer/duplicity/par2
      - This branch adds Par2 recovery files to duplicity. It is a wrapper backend
        which will create the recovery files and upload them all together with the
        wrapped backend. Corrupt archives will be detected and repaired (if
        possible) on the fly during restore.
      - It can be used with url-string par2+webdavs://USER@HOST/PATH
      - Fixes https://bugs.launchpad.net/duplicity/+bug/426282

2014-03-06 Kenneth Loafman <email address hidden>

    * Merged in lp:~ed.so/duplicity/fix.dpbx
      - Fix dpbx backend "NameError: global name 'rest' is not defined"
    * Merged in lp:~prateek/duplicity/botoimportfix
      - Switches the boto backend back to using lazy imports so there are no
        complaints during the importing of backends.

2014-02-26 Kenneth Loafman <email address hidden>

    * Merged in lp:~prateek/duplicity/s3-glacier
      - Fixes https://bugs.launchpad.net/duplicity/+bug/1039511
        - Adds support to detect when a file is on Glacier and initiates a restore
          to S3. Also merges overlapping code in the boto backends
      - Fixes https://bugs.launchpad.net/duplicity/+bug/1243246
        - Adds a --s3_multipart_max_timeout input option to limit the max execution
          time of a chunked upload to S3. Also adds debug message to calculate
          upload speed.

2014-02-24 Kenneth Loafman <email address hidden>

    * Merged in lp:~mterry/duplicity/pexpect-fix
      - duplicity has its own copy of pexpect. Use that instead of requiring one
        from the system.

2014-02-05 Kenneth Loafman <email address hidden>

    * Merged in lp:~mterry/duplicity/gpg-encode
      - getpass.getpass(prompt) eventually calls str(prompt). Which is a no go,
        if the prompt contains unicode. Here's a patch to always pass getpass() a
        byte string.
      - Our tests didn't catch this because they always set PASSPHRASE. I've added
        a test that passes the passphrase via stdin.

2014-01-31 Kenneth Loafman <email address hidden>

    * Applied two patches from mailing list message at:
      https://lists.nongnu.org/archive/html/duplicity-talk/2014-01/msg00030.html
      "Added command line options to use different prefixes for manifest/sig/archive files"
      This resolves https://bugs.launchpad.net/duplicity/+bug/1170161 and provides
      a workaround for https://bugs.launchpad.net/duplicity/+bug/1170113

0 blueprints and 11 bugs targeted

Bug report Importance Assignee Status
996660 #996660 Support S3 server side encryption 4 Medium   10 Fix Released
1039511 #1039511 Support for Amazon Glacier 4 Medium   10 Fix Released
1170161 #1170161 FeatReq: alternate filenames to support S3/Glacier 4 Medium   10 Fix Released
1182088 #1182088 Large File upload fails when uploading to S3 4 Medium   10 Fix Released
1243246 #1243246 Duplicity Hangs intermittently when using multiprocess uploads to S3 4 Medium   10 Fix Released
1286845 #1286845 UnicodeEncode error from "Backup Statistics" 4 Medium   10 Fix Released
1289288 #1289288 duplicity crashed with UnicodeDecodeError in done_with_mount(): 'ascii' codec can't decode byte 0xc3 in position 4: ordinal not in range(128) 4 Medium   10 Fix Released
1311176 #1311176 crash deja-dup backup ascii' codec can't decode byte 0xc3 4 Medium   10 Fix Released
1312328 #1312328 WebDAV backend can't understand 200 OK response to DELETE 4 Medium   10 Fix Released
1313966 #1313966 duplicity cannot back up files from Russian file directory 4 Medium   10 Fix Released
426282 #426282 Please add support for par2 creating 6 Wishlist   10 Fix Released
This milestone contains Public information
Everyone can see this information.