forked from s3tools/s3cmd
-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
530 lines (481 loc) · 25.8 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
s3cmd-2.4.0 - 2023-12-12
===============
* Added "setversioning" command for versioning configuration (Kuan-Chun Wang)
* Added "settagging", "gettagging", and "deltagging" commands for bucket/object tagging (Kuan-Chun Wang)
* Added "setobjectretention" and "setobjectlegalhold" commands (Etienne Adam/Withings SAS)
* Added "setownership" and "setblockpublicaccess" commands
* Added "cfinval" command to request Cloudfront to invalidate paths (#1256)
* Added "--keep-dirs" option to have the folder structure preserved on remote side
* Added --skip-destination-validation option for "setnotification" command (Kuan-Chun Wang)
* Added "--max-retries" flag and "max_retries" config option (#914)
* Added FIPS support (Michael Roth)
* Added "object ownership" and block public access" values to "info" command output for buckets
* Added to "ls" command a "DIROBJ" tag for directory objects in S3 remote
* Added server profiles to run-tests.py to skip tests depending on the server type
* Fixed "TypeError: sequence item 1: expected str instance, bytes found" error with Python 3.12 (#1343)
* Fixed a missing return for "object_batch_delete" of S3.py (James Hewitt)
* Fixed "object is not callable" error because of md5 FIPS test (#1005)
* Fixed "compute_content_md5 is not defined" error for "setversioning" (#1312) (Gavin John)
* Fixed list objects to use NextMarker when only prefixes are returned (Albin Parou)
* Fixed upload to not retry when an S3 compatible server is full
* Fixed recursive delete of objects named with whitespace (#976)
* Fixed the mime type when uploading directories to be "application/x-directory"
* Fixed "string indices must be integers" error for sync when in dry-run mode (#1313) (Shohei Tanaka)
* Fixed SignatureDoesNotMatch error when modifying an object on Cloudflare R2 (#1332) (Philip C Nilsson)
* Fixed Cloudfront invalidation issue for paths with wildcard or special characters
* Fixed Cloudfront crash because of error reporting for retries
* Fixed Cloudfront "unable to parse URL" error (#1292)
* Improved the handling of "empty" files on the remote side to sync with local folders
* Improved "abortmp" command by requiring an object to avoid bad accidents when using Ceph (Joshua Haas)
* Improved file download by retrying when encountering SlowDown or TooManyRequests errors (Robin Geiger)
* Improved error messages in case of connection error or host unreachable
* Improved error messages to be more explicit for upload errors after retries
* Improved remote2local attributes setting code
* Improved remote2local with more explicit error messages when setting attributes (#1288)
* Improved remote2local output messages by using the "mkdir" prefix instead of "make dir"
* Improved the SortedDict class
* Improved run-test.py by using "--include" when calling Curl instead of "-include" (Matthew James Kraai)
* Improved GitHub CI by enabling pip cache in actions/setup-python (Anton Yakutovich)
* Improved GitHub CI by adding a "codespell" check on push and PRs (Yaroslav Halchenko)
* Updated GitHub CI tests to use more recent versions of Minio and Python
* Upgraded GitHub actions (Anton Yakutovich)
* Cleanup and update of copyright headers, docs, comments and setup.py
* Cleanup to fix "invalid escape sequence" syntax warnings
* Many other bug fixes and cleanups
s3cmd-2.3.0 - 2022-10-03
===============
* Added "getnotification", "setnotification", and "delnotification" commands for notification policies (hrchu)
* Added support for AWS_STS_REGIONAL_ENDPOINTS (#1218, #1228) (Johan Lanzrein)
* Added ConnectionRefused [111] exit code to handle connection errors (Salar Nosrati-Ershad)
* Added support for IMDSv2. Should work automatically on ec2 (Anthony Foiani)
* Added --list-allow-unordered to list objects unordered. Only supported by Ceph based s3-compatible services (#1269) (Salar Nosrati-Ershad)
* Fixed --exclude dir behavior for python >= 3.6 (Daniil Tararukhin)
* Fixed Cloudfront invalidate retry issue (Yuan-Hsiang Lee)
* Fixed 0 byte cache files crashing s3cmd (#1234) (Carlos Laviola)
* Fixed --continue behavior for the "get" command (#1009) (Anton Ustyugov)
* Fixed unicode issue with fixbucket (#1259)
* Fixed CannotSendRequest and ConnectionRefusedError errors at startup (#1261)
* Fixed error reporting for object info when the object does not exist
* Fixed "setup.py test" to do nothing to avoid failure that could be problematic for distribution packaging (#996)
* Improved expire command to use Rule/Filter/Prefix for LifecycleConfiguration (#1247)
* Improved PASS/CHECK/INCLUDE/EXCLUDE debug log messages
* Improved setup.py with python 3.9 and 3.10 support info(Ori Avtalion)
* Many other bug fixes
s3cmd-2.2.0 - 2021-09-27
===============
* Added support for metadata modification of files bigger than 5 GiB
* Added support for remote copy of files bigger than 5 GiB using MultiPart copy (Damian Martinez, Florent Viard)
* Added progress info output for multipart copy and current-total info in output for cp, mv and modify
* Added support for all special/foreign character names in object names to cp/mv/modify
* Added support for SSL authentication (Aleksandr Chazov)
* Added the http error 429 to the list of retryable errors (#1096)
* Added support for listing and resuming of multipart uploads of more than 1000 parts (#346)
* Added time based expiration for idle pool connections in order to avoid random broken pipe errors (#1114)
* Added support for STS webidentity authentication (ie AssumeRole and AssumeRoleWithWebIdentity) (Samskeyti, Florent Viard)
* Added support for custom headers to the mb command (#1197) (Sébastien Vajda)
* Improved MultiPart copy to preserve acl and metadata of objects
* Improved the server errors catching and reporting for cp/mv/modify commands
* Improved resiliency against servers sending garbage responses (#1088, #1090, #1093)
* Improved remote copy to have consistent copy of metadata in all cases: multipart or not, aws or not
* Improved security by revoking public-write acl when private acl is set (#1151) (ruanzitao)
* Improved speed when running on an EC2 instance (#1117) (Patrick Allain)
* Reduced connection_max_age to 5s to avoid broken pipes as AWS closes https conns after around 6s (#1114)
* Ensure that KeyboardInterrupt are always properly raised (#1089)
* Changed sized of multipart copy chunks to 1 GiB
* Fixed ValueError when using more than one ":" inside add_header in config file (#1087)
* Fixed extra label issue when stdin used as source of a MultiPart upload
* Fixed remote copy to allow changing the mime-type (ie content-type) of the new object
* Fixed remote_copy to ensure that meta-s3cmd-attrs will be set based on the real source and not on the copy source
* Fixed deprecation warnings due to invalid escape sequences (Karthikeyan Singaravelan)
* Fixed getbucketinfo that was broken when the bucket lifecycle uses the filter element (Liu Lan)
* Fixed RestoreRequest XML namespace URL (#1203) (Akete)
* Fixed PARTIAL exit code that was not properly set when needed for object_get (#1190)
* Fixed a possible infinite loop when a file is truncated during hashsum or upload (#1125) (Matthew Krokosz, Florent Viard)
* Fixed report_exception wrong error when LANG env var was not set (#1113)
* Fixed wrong wiki url in error messages (Alec Barrett)
* Py3: Fixed an AttributeError when using the "files-from" option
* Py3: Fixed compatibility issues due to the removal of getchildren() from ElementTree in python 3.9 (#1146, #1157, #1162, # 1182, #1210) (Ondřej Budai)
* Py3: Fixed compatibility issues due to the removal of encodestring() in python 3.9 (#1161, #1174) (Kentaro Kaneki)
* Fixed a crash when the AWS_ACCESS_KEY env var is set but not AWS_SECRET_KEY (#1201)
* Cleanup of check_md5 (Riccardo Magliocchetti)
* Removed legacy code for dreamhost that should be necessary anymore
* Migrated CI tests to use github actions (Arnaud Jaffre)
* Improved README with a link to INSTALL.md (Sia Karamalegos)
* Improved help content (Dmitrii Korostelev, Roland Van Laar)
* Improvements for setup and build configurations
* Many other bug fixes
s3cmd-2.1.0 - 2020-04-07
===============
* Changed size reporting using k instead of K as it a multiple of 1024 (#956)
* Added "public_url_use_https" config to generate public url using https (#551, #666) (Jukka Nousiainen)
* Added option to make connection pooling configurable and improvements (Arto Jantunen)
* Added support for path-style bucket access to signurl (Zac Medico)
* Added docker configuration and help to run test cases with multiple Python versions (Doug Crozier)
* Relaxed limitation on special chars for --add-header key names (#1054)
* Fixed all regions that were automatically converted to lower case (Harshavardhana)
* Fixed size and alignment of DU and LS output reporting (#956)
* Fixes for SignatureDoesNotMatch error when host port 80 or 443 is specified, due to stupid servers (#1059)
* Fixed the useless retries of requests that fail because of ssl cert checks
* Fixed a possible crash when a file disappears during cache generation (#377)
* Fixed unicode issues with IAM (#987)
* Fixed unicode errors with bucked Policy/CORS requests (#847) (Alex Offshore)
* Fixed unicode issues when loading aws_credential_file (#989)
* Fixed an issue with the tenant feature of CephRGW. Url encode bucket_name for path-style requests (#1080)
* Fixed signature v2 always used when bucket_name had special chars (#1081)
* Allow to use signature v4 only, even for commands without buckets specified (#1082)
* Fixed small open file descriptor leaks.
* Py3: Fixed hash-bang in headers to not force using python2 when setup/s3cmd/run-test scripts are executed directly.
* Py3: Fixed unicode issues with Cloudfront (#1006)
* Py3: Fixed http.client.RemoteDisconnected errors (#1014) (Ryan Huddleston)
* Py3: Fixed 'dictionary changed size during iteration' error when using a cache-file (#945) (Doug Crozier)
* Py3: Fixed the display of file sizes (Vlad Presnyak)
* Py3: Python 3.8 compatibility fixes (Konstantin Shalygin)
* Py2: Fixed unicode errors sometimes crashing remote2remote sync (#847)
* Added s3cmd.egg-info to .gitignore (Philip Dubé)
* Improved run-test script to not use hard-coded bucket names(#1066) (Doug Crozier)
* Renamed INSTALL to INSTALL.md and improvements (Nitro, Prabhakar Gupta)
* Improved the restore command help (Hrchu)
* Updated the storage-class command help with the recent aws s3 classes (#1020)
* Fixed typo in the --continue-put help message (Pengyu Chen)
* Fixed typo (#1062) (Tim Gates)
* Improvements for setup and build configurations
* Many other bug fixes
s3cmd-2.0.2 - 2018-07-15
===============
* Fixed unexpected timeouts encountered during requests or transfers due to AWS strange connection short timeouts (#941)
* Fixed a throttle issue slowing down too much transfers in some cases (#913)
* Added support for $AWS_PROFILE (#966) (Taras Postument)
* Added clarification comment for the socket_timeout configuration value OS limit
* Avoid distutils usage at runtime (Matthias Klose)
* Python 2 compatibility: Fixed import error of which with fallback code (Gianfranco Costamagna)
* Fixed Python 3 bytes string encoding when getting IAM credentials (Alexander Allakhverdiyev)
* Fixed handling of config tri-state bool values (like acl_public) (Brian C. Lane)
* Fixed V2 signature when restore command is used (Jan Kasiak)
* Fixed setting full_control on objects with public read access (Matthew Vernon)
* Fixed a bug when only one path is supplied with Cloudfront. (Mikael Svensson)
* Fixed signature errors with 'modify' requests (Radek Simko)
* Fixed #936 - Fix setacl command exception (Robert Moucha)
* Fixed error reporting if deleting a source object failed after a move (#929)
* Many other bug fixes (#525, #933, #940, #947, #957, #958, #960, #967)
Important info: AWS S3 doesn't allow anymore uppercases and underscores in bucket names since march 1, 2018
s3cmd-2.0.1 - 2017-10-21
===============
* Support for Python 3 is now stable
* Fixed signature issues due to upper cases in hostname (#920)
* Improved support for Minio Azure gateway (Julien Maitrehenry, Harshavardhana)
* Added signurl_use_https option to use https prefix for signurl (Julien Recurt)
* Fixed a lot of remaining issues and regressions for Python 3 (#922, #921, #908)
* Fixed --configure option with Python 3
* Fixed non string cmdline parameters being ignored
* Windows support fixes (#922)
* Don't force anymore to have a / on last parameter for the "modify" command (#886)
* Removed the python3 support warning
* Detect and report error 403 in getpolicy for info command (#894)
* Added a specific error message when getting policy by non owner (#885)
* Many other bug fixes (#905, #892, #890, #888, #889, #887)
s3cmd-2.0.0 - 2017-06-26
===============
* Added support for Python 3 (Shaform, Florent Viard)
* Added getlifecycle command (Daniel Gryniewicz)
* Added --cf-inval for invalidating multiple CF distributions (Joe Mifsud)
* Added --limit to "ls" and "la" commands to return the specified number of objects (Masashi Ozawa)
* Added --token-refresh and --no-token-refresh and get the access token from the environment (Marco Jakob)
* Added --restore-priority and --restore-days for S3 Glacier (Robert Palmer)
* Fixed requester pays header with HEAD requests (Christian Rodriguez)
* Don't allow mv/cp of multiple files to single file (Guy Gur-Ari)
* Generalize wildcard certificate forgiveness (Mark Titorenko)
* Multiple fixes for SSL connections and proxies
* Added support for HTTP 100-CONTINUE
* Fixes for s3-like servers
* Big cleanup and many unicode fixes
* Many other bug fixes
s3cmd-1.6.1 - 2016-01-20
===============
* Added --host and --host-bucket
* Added --stats
* Fix for newer python 2.7.x SSL library updates
* Many other bug fixes
s3cmd-1.6.0 - 2015-09-18
===============
* Support signed URL content disposition type
* Added 'ls -l' long listing including storage class
* Added --limit-rate=RATE
* Added --server-side-encryption-kms-id=KEY_ID
* Added --storage-class=CLASS
* Added --requester-pays, [payer] command
* Added --[no-]check-hostname
* Added --stop-on-error, removed --ignore-failed-copy
* Added [setcors], [delcors] commands
* Added support for cn-north-1 region hostname checks
* Output strings may have changed. Scripts calling s3cmd expecting
specific text may need to be updated.
* HTTPS is now the default
* Many unicode fixes
* Many other bug fixes
s3cmd-1.5.2 - 2015-02-08
===============
* Handle unvalidated SSL certificate. Necessary on Ubuntu 14.04 for
SSL to function at all.
* packaging fixes (require python-magic, drop ez_setup)
s3cmd-1.5.1.2 - 2015-02-04
===============
* fix PyPi install
s3cmd-1.5.1 - 2015-02-04
===============
* Sort s3cmd ls output by bucket name (Andrew Gaul)
* Support relative expiry times in signurl. (Chris Lamb)
* Fixed issue with mixed path separators with s3cmd get --recursive on
Windows. (Luke Winslow)
* fix S3 wildcard certificate checking
* Handle headers with spaces in their values properly (#460)
* Fix lack of SSL certificate checking libraries on older python
* set content-type header for stdin from command line or Config()
* fix uploads from stdin (#464)
* Fix directory exclusions (#467)
* fix signurl
* Don't retry in response to HTTP 405 error (#422)
* Don't crash when a proxy returns an invalid XML error document
s3cmd-1.5.0 - 2015-01-12
===============
* add support for newer regions such as Frankfurt that
require newer authorization signature v4 support
(Vasileios Mitrousis, Michal Ludvig, Matt Domsch)
* drop support for python 2.4 due to signature v4 code.
python 2.6 is now the minimum, and python 3 is still not supported.
* handle redirects to the "right" region for a bucket.
* add --ca-cert=FILE for self-signed certs (Matt Domsch)
* allow proxied SSL connections with python >= 2.7 (Damian Gerow)
* add --remove-headers for [modify] command (Matt Domsch)
* add -s/--ssl and --no-ssl options (Viktor Szakáts)
* add --signature-v2 for backwards compatibility with S3 clones.
* bugfixes by 17 contributors
s3cmd 1.5.0-rc1 - 2014-06-29
===============
* add environment variable S3CMD_CONFIG (Devon Jones),
access key and secre keys (Vasileios Mitrousis)
* added modify command (Francois Gaudin)
* better debug messages (Matt Domsch)
* faster batch deletes (Matt Domsch)
* Added support for restoring files from Glacier storage (Robert Palmer)
* Add and remove full lifecycle policies (Sam Rudge)
* Add support for object expiration (hrchu)
* bugfixes by 26 contributors
s3cmd 1.5.0-beta1 - 2013-12-02
=================
* Brougt to you by Matt Domsch and contributors, thanks guys! :)
* Multipart upload improvements (Eugene Brevdo, UENISHI Kota)
* Allow --acl-grant on AWS groups (Dale Lovelace)
* Added Server-Side Encryption support (Kevin Daub)
* Improved MIME types detections and content encoding (radomir,
Eric Drechsel, George Melika)
* Various smaller changes and bugfixes from many contributors
s3cmd 1.5.0-alpha3 - 2013-03-11
==================
* Persistent HTTP/HTTPS connections for massive speedup (Michal Ludvig)
* New switch --quiet for suppressing all output (Siddarth Prakash)
* Honour "umask" on file downloads (Jason Dalton)
* Various bugfixes from many contributors
s3cmd 1.5.0-alpha2 - 2013-03-04
==================
* IAM roles support (David Kohen, Eric Dowd)
* Manage bucket policies (Kota Uenishi)
* Various bugfixes from many contributors
s3cmd 1.5.0-alpha1 - 2013-02-19
==================
* Server-side copy for hardlinks/softlinks to improve performance
(Matt Domsch)
* New [signurl] command (Craig Ringer)
* Improved symlink-loop detection (Michal Ludvig)
* Add --delete-after option for sync (Matt Domsch)
* Handle empty return bodies when processing S3 errors.
(Kelly McLaughlin)
* Upload from STDIN (Eric Connell)
* Updated bucket locations (Stefhen Hovland)
* Support custom HTTP headers (Brendan O'Connor, Karl Matthias)
* Improved MIME support (Karsten Sperling, Christopher Noyes)
* Added support for --acl-grant/--acl-revoke to 'sync' command
(Michael Tyson)
* CloudFront: Support default index and default root invalidation
(Josep del Rio)
* Command line options for access/secret keys (Matt Sweeney)
* Support [setpolicy] for setting bucket policies (Joe Fiorini)
* Respect the $TZ environment variable (James Brown)
* Reduce memory consumption for [s3cmd du] (Charlie Schluting)
* Rate limit progress updates (Steven Noonan)
* Download from S3 to a temp file first (Sumit Kumar)
* Reuse a single connection when doing a bucket list (Kelly McLaughlin)
* Delete empty files if object_get() failed (Oren Held)
s3cmd 1.1.0 - (never released)
===========
* MultiPart upload enabled for both [put] and [sync]. Default chunk
size is 15MB.
* CloudFront invalidation via [sync --cf-invalidate] and [cfinvalinfo].
* Increased socket_timeout from 10 secs to 5 mins.
* Added "Static WebSite" support [ws-create / ws-delete / ws-info]
(contributed by Jens Braeuer)
* Force MIME type with --mime-type=abc/xyz, also --guess-mime-type
is now on by default, -M is no longer shorthand for --guess-mime-type
* Allow parameters in MIME types, for example:
--mime-type="text/plain; charset=utf-8"
* MIME type can be guessed by python-magic which is a lot better than
relying on the extension. Contributed by Karsten Sperling.
* Support for environment variables as config values. For instance
in ~/.s3cmd put "access_key=$S3_ACCESS_KEY". Contributed by Ori Bar.
* Support for --configure checking access to a specific bucket instead
of listing all buckets.
Listing buckets requires the S3 ListAllMyBuckets permission which
is typically not available to delegated IAM accounts. With this change,
s3cmd --configure accepts an (optional) bucket uri as a parameter
and if it's provided, the access check will just verify access to this
bucket individually. Contributed by Mike Repass.
* Allow STDOUT as a destination even for downloading multiple files.
They will be output one after another without any delimiters!
Contributed by Rob Wills.
s3cmd 1.0.0 - 2011-01-18
===========
* [sync] now supports --no-check-md5
* Network connections now have 10s timeout
* [sync] now supports bucket-to-bucket synchronisation
* Added [accesslog] command.
* Added access logging for CloudFront distributions
using [cfmodify --log]
* Added --acl-grant and --acl-revoke [Timothee Groleau]
* Allow s3:// URI as well as cf:// URI as a distribution
name for most CloudFront related commands.
* Support for Reduced Redundancy Storage (--reduced-redundancy)
* Follow symlinks in [put] and [sync] with --follow-symlinks
* Support for CloudFront DefaultRootObject [Luke Andrew]
s3cmd 0.9.9.91 - 2009-10-08
==============
* Fixed invalid reference to a variable in failed upload handling.
s3cmd 0.9.9.90 - 2009-10-06
==============
* New command 'sign' for signing e.g. POST upload policies.
* Fixed handling of filenames that differ only in
capitalisation (eg blah.txt vs Blah.TXT).
* Added --verbatim mode, preventing most filenames
pre-processing. Good for fixing unreadable buckets.
* Added --recursive support for [cp] and [mv], including
multiple-source arguments, --include/--exclude, --dry-run, etc.
* Added --exclude/--include and --dry-run for [del], [setacl].
* Neutralise characters that are invalid in XML to avoid ExpatErrors.
http://boodebr.org/main/python/all-about-python-and-unicode
* New command [fixbucket] for for fixing invalid object names
in a given Bucket. For instance names with  in them
(not sure how people manage to upload them but they do).
s3cmd 0.9.9 - 2009-02-17
===========
New commands:
* Commands for copying and moving objects, within or
between buckets: [cp] and [mv] (Andrew Ryan)
* CloudFront support through [cfcreate], [cfdelete],
[cfmodify] and [cfinfo] commands. (sponsored by Joseph Denne)
* New command [setacl] for setting ACL on existing objects,
use together with --acl-public/--acl-private (sponsored by
Joseph Denne)
Other major features:
* Improved source dirname handling for [put], [get] and [sync].
* Recursive and wildcard support for [put], [get] and [del].
* Support for non-recursive [ls].
* Enabled --dry-run for [put], [get] and [sync].
* Allowed removal of non-empty buckets with [rb --force].
* Implemented progress meter (--progress / --no-progress)
* Added --include / --rinclude / --(r)include-from
options to override --exclude exclusions.
* Added --add-header option for [put], [sync], [cp] and [mv].
Good for setting e.g. Expires or Cache-control headers.
* Added --list-md5 option for [ls].
* Continue [get] partially downloaded files with --continue
* New option --skip-existing for [get] and [sync].
Minor features and bugfixes:
* Fixed GPG (--encrypt) compatibility with Python 2.6.
* Always send Content-Length header to satisfy some http proxies.
* Fixed installation on Windows and Mac OS X.
* Don't print nasty backtrace on KeyboardInterrupt.
* Should work fine on non-UTF8 systems, provided all
the files are in current system encoding.
* System encoding can be overridden using --encoding.
* Improved resistance to communication errors (Connection
reset by peer, etc.)
s3cmd 0.9.8.4 - 2008-11-07
=============
* Stabilisation / bugfix release:
* Restored access to upper-case named buckets.
* Improved handling of filenames with Unicode characters.
* Avoid ZeroDivisionError on ultrafast links (for instance
on Amazon EC2)
* Re-issue failed requests (e.g. connection errors, internal
server errors, etc).
* Sync skips over files that can't be open instead of
terminating the sync completely.
* Doesn't run out of open files quota on sync with lots of
files.
s3cmd 0.9.8.3 - 2008-07-29
=============
* Bugfix release. Avoid running out-of-memory in MD5'ing
large files.
s3cmd 0.9.8.2 - 2008-06-27
=============
* Bugfix release. Re-upload file if Amazon doesn't send ETag
back.
s3cmd 0.9.8.1 - 2008-06-27
=============
* Bugfix release. Fixed 'mb' and 'rb' commands again.
s3cmd 0.9.8 - 2008-06-23
===========
* Added --exclude / --rexclude options for sync command.
* Doesn't require $HOME env variable to be set anymore.
* Better checking of bucket names to Amazon S3 rules.
s3cmd 0.9.7 - 2008-06-05
===========
* Implemented 'sync' from S3 back to local folder, including
file attribute restoration.
* Failed uploads are retried on lower speed to improve error
resilience.
* Compare MD5 of the uploaded file, compare with checksum
reported by S3 and re-upload on mismatch.
s3cmd 0.9.6 - 2008-02-28
===========
* Support for setting / guessing MIME-type of uploaded file
* Correctly follow redirects when accessing buckets created
in Europe.
* Introduced 'info' command both for buckets and objects
* Correctly display public URL on uploads
* Updated TODO list for everyone to see where we're heading
* Various small fixes. See ChangeLog for details.
s3cmd 0.9.5 - 2007-11-13
===========
* Support for buckets created in Europe
* Initial 'sync' support, for now local to s3 direction only
* Much better handling of multiple args to put, get and del
* Tries to use ElementTree from any available module
* Support for buckets with over 1000 objects.
s3cmd 0.9.4 - 2007-08-13
===========
* Support for transparent GPG encryption of uploaded files
* HTTP proxy support
* HTTPS protocol support
* Support for non-ASCII characters in uploaded filenames
s3cmd 0.9.3 - 2007-05-26
===========
* New command "du" for displaying size of your data in S3.
(Basil Shubin)
s3cmd 0.9.2 - 2007-04-09
===========
* Lots of new documentation
* Allow "get" to stdout (use "-" in place of destination file
to get the file contents on stdout)
* Better compatibility with Python 2.4
* Output public HTTP URL for objects stored with Public ACL
* Various bugfixes and improvements
s3cmd 0.9.1 - 2007-02-06
===========
* All commands now use S3-URIs
* Removed hard dependency on Python 2.5
* Experimental support for Python 2.4
(requires external ElementTree module)
s3cmd 0.9.0 - 2007-01-18
===========
* First public release brings support for all basic Amazon S3
operations: Creation and Removal of buckets, Upload (put),
Download (get) and Removal (del) of files/objects.