Permalink
Commits on Feb 22, 2012
  1. Merge pull request #21 from aral/s3-static-site-cloudfront-invalidation

    mludvig committed Feb 22, 2012
    Added S3 static site support for Amazon CloudFront invalidation on sync.
  2. Merge pull request #23 from jbraeuer/master

    mludvig committed Feb 22, 2012
    Follow symlinks, when requested, drop recursion detection.
  3. Merge pull request #26 from interra/patch-1

    mludvig committed Feb 22, 2012
    Don't report "Disabled MD5 check for FILE" when --no-check-md5 used
  4. info() reports "Disabled MD5 check for FILE" even if --check-no-md5 u…

    interra committed Feb 22, 2012
    …sed. If statement is still true if file fails md5 check.
Commits on Jan 31, 2012
  1. Remove recursion detection for symlinks.

    jbraeuer committed Jan 31, 2012
    Recursion detection on symlinks was too restrictive. It would detect the following as recursion:
    
    dir/
        main-1234/
                  file1
                  file2
        main -> main-1234
    
    This is clearly not a recursion and a common pattern, eg when hosting package repositories.
    Python's os.walk also does not do recursion detection. So lets behave like Python stdlib.
Commits on Jan 17, 2012
  1. Compute speed and elapsed time for Multipart uploads

    mludvig committed Jan 17, 2012
    By the way fixes a crash with:
    s3cmd put /xyz/big-file s3://bucket/ > /dev/null
    Reported by HanJingYu
Commits on Jan 15, 2012
Commits on Jan 12, 2012
  1. Released version 1.1.0-beta3

    mludvig committed Jan 12, 2012
    * S3/PkgInfo.py: Updated to 1.1.0-beta3
    * s3cmd.1: Regenerated.
  2. Enable multipart for [sync] - do not check MD5

    mludvig committed Jan 12, 2012
    Multipart-uploaded files don't have a valid MD5 sum in their ETag.
    We can detect it and disable MD5 comparison when deciding whether
    to sync these files. In such a case only the size (and later on a
    timestamp) is compared.
  3. Improved compatibility with Python 2.4

    mludvig committed Jan 12, 2012
    Apparently in Py2.4 the Exception class doesn't have 'message'
    attribute.
Commits on Jan 9, 2012
  1. Improved compatibility with old python-magic

    mludvig committed Jan 9, 2012
    Sadly there are two "magic" modules for python with
    different APIs.  Improving compatibility wrapper to
    better handle both.
Commits on Jan 7, 2012
  1. Merge pull request #20 from pulseenergy/master

    mludvig committed Jan 7, 2012
    Fixing KeyError when copying multiple keys (SourceForge bug 3091912)
  2. Fixing bug 3091912 - KeyError when copying multiple keys

    canadianveggie committed Jan 7, 2012
    When you use 's3cmd cp' to copy multiple keys (without using the recursive flag) you get a Key Error.
    s3cmd cp s3://source-bucket/prefix* s3://target-bucket
    
    Logged here: http://sourceforge.net/tracker/?func=detail&aid=3091912&group_id=178907&atid=887015
    and here: https://bugs.launchpad.net/ubuntu/+source/s3cmd/+bug/523586
  3. Import S3.Exceptions.ParameterError

    mludvig committed Jan 7, 2012
    Reported by Andy McGregor
Commits on Jan 6, 2012
  1. Released version 1.1.0-beta2

    mludvig committed Jan 6, 2012
    * S3/PkgInfo.py: Updated to 1.1.0-beta2
    * NEWS: Updated.
    * s3cmd.1: Regenerated.
  2. Improved format-manpage.pl

    mludvig committed Jan 6, 2012
  3. Fixed help text

    mludvig committed Jan 6, 2012
Commits on Jan 5, 2012
  1. Reorder metadata handling in S3.object_put()

    mludvig committed Jan 5, 2012
    Now we set the mime-type, reduced redundancy and other
    attributes also for multipart upload files.
  2. Temporarily disabled MultiPart for 's3cmd sync'

    mludvig committed Jan 5, 2012
    sync depends on ETag == MD5 sum of the remote object
    in the bucket listings. Unfortunately for multipart
    uploaded objects this is not true. We need to come up
    with some other way to store the MD5 sum for sync to
    work.
  3. Removed Config.multipart_num_threads

    mludvig committed Jan 5, 2012
    - not needed in this branch
  4. Reworked Multipart upload

    mludvig committed Jan 5, 2012
    - Converted to non-threaded upload again
      (will add threading for all uploads, not only multipart, later on)
    - Using S3.send_file() instead of S3.send_request()
    - Don't read data in the main loop, only compute offset and chunk size
      and leave it to S3.send_file() to read the data.
    - Re-enabled progress indicator.
    
    Still broken:
    - "s3cmd sync" doesn't work with multipart uploaded files because
      the ETag no longer contains MD5sum of the file. MAJOR!
    - Multipart upload abort is not triggered with all failures.
    - s3cmd commands "mplist" and "mpabort" to be added.
    - s3cmd should resume failed multipart uploads.
Commits on Jan 2, 2012
  1. Renamed multipart_chunk_size to multipart_chunk_size_mb

    mludvig committed Jan 2, 2012
    Simplifies handling, avoids confusion.
  2. Cleanup: pass enable_multipart via Config()

    mludvig committed Jan 2, 2012
    Remove all the newly introduced parameters for passing enable_multipart
    and keep it in Config() instead.
    
    Also renames --enable-multipart to --disable-multipart and
    introduces --multipart-chunk-size=SIZE parameter.
  3. Support for non-threaded multipart upload

    mludvig committed Jan 2, 2012
    Don't create thread-pool with Config().multipart_num_threads=1.