Dear s3cmd users and contributors,
I'm glad to announce that
s3cmd v2.0.0 is now available on github, sourceforge, and PyPi.
After almost 1 year and half, and the contributions from 23 different
developers,
this release is an important milestone because it adds the support for
Python 3!
This is my first release and so I would like to thanks Matt Domsch for his
support
and all the contributors, the testers and the issue reporters.
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
Shortlog below.
Thanks,
Florent
Abhishek Varshney (1):
fix: handle empty md5 in find_md5_one
Alex Harford (1):
Ensure testsuite-out is created before running dd
Andrew Gaul (1):
Handle missing ETag in subcmd_bucket_list
Arturas Moskvinas (1):
Do not close stdout, it might be used when file is downloaded and
destination is "-"
Christian Rodriguez (1):
Fix #849 by adding requester pays header to HEAD requests
Daniel Gryniewicz (1):
Add getlifecycle command
David Eckelkamp (1):
Let Makefile determine version number from PkgInfo.py file
Florent Viard (96):
Don't ask to set access_token in run_configure as it should not be
used very often.
Fix for local2remote in the case of "." as a source. Fixes #706
Fixes #709 : Fixes sync command with windows + cleanup
Fix the error message to avoid confusion in a special cases like "no
space left on device".
Fixes #744 - Ensure to check non None or empty bucket names before
calling check_bucket_name.
Minor optimization and cosmetic fix in ConnMan.
Fix Issue #672 - Patch based on PR #729 proposed by MLopez-Ibanez.
Fixes getBucketFromHostname for when host_bucket config has no
"bucket" element.
Fix the infamous "UnboundLocalError" for conn exception hidding
meaningful exceptions
Added an explicit error message when the servers hostname are wrong
or unresolvable.
Avoid having an error when user uses "https://" prefix to host_base...
Fixes #741 Issues validating ssl certs when using a custom port for
host_bucket address.
Real fix for #772. Use urlparse to extract hostnames in connman
Follow up on #779, not using a CONNECT "tunnel" for http proxies as
it is not the most common case.
Fixes #777 : Fix __repr__ returning unicode and sign_v2 not encoded
to s3.
Fixes recursive delete that was broken by the new "truncated" tag.
Fixes orphan var in "du" exception handler.
run-tests.py Update expirations tests dates to the future.
Fix failure of copy or rename for s3-like servers that don't have
support for acl.
Fix error of "info" command when s3-like servers don't implement
"acl" or another feature.
Avoid errors with modify command when s3-like servers don't support
acl.
Fix possible bug in previous change for info command and
get_lifecycle.
Fixes #722 : basename fonction was broken for local files for windows
as the os path separator is not the same on linux.
Aws sometimes uses 301 code for redirects + redirect to aws base host.
Fix signature v4 when aws redirect to aws base host.
Fixes #778 : Workaround for aws sending early errors before requests
are completed + support for http expect continue feature.
Updated maintainer in setup.py.
Fixes #797 : unicodisation missing for exclude patterns coming from
files.
Fixes #800 (second part): "cfg.include" was not checked like is
cfg.exclude to use the non memory optimal del subcmd.
Fix for part of #660: fix detection for "sync single-file.txt
s3://mybucket/single-file.txt"
Fix to supporting python 1.6. Use "List" for http methods and not a
kind of dict.
Backport more code from httplib for compatibility with python 2.6
Fix previous patch on custom httpconnection, it is _send_output and
not send_output.
Attemps to fix last issues of #769 .
Initial version of a .travis.yml and it's .travis.s3cfg configuration
for CI with travis-ci.
custom_httplib27 - Missing symbols in python 2.6
Missing bit in previous commit.
[travis] Fixes allow_failures not being strings.
[travis] Added run-test-minio.py + have travis run it.
Added travis-ci build status of master in the github displayed readme.
Fixes #810 : Also handle redirects for path styles syntax.
Fixes #816 : Fix recv_file 3xx,4xx, handlers + add region extraction
of 3xx redirections.
Fixes #798 : HEAD request can't parse xml response to get redirection
url.
Fix missing imports in custom_httplib27.
Move urlencode func into Utils and fix encoding issues when having
uid groupid with special chars.
Small cleanup in S3.py
Py3 support: remove usage of deprecated has_key.
Py3 support: fix SortedDict (keys() are now views and iterators need
__next__)
Update README to indicate python versions supported by s3cmd.
Changed unicodise/deunicodise wrappers to fit with python3 string
model.
Python3 support: Fixed stderrr, stdout unicode output.
Remove some code that was there for supporting py version < 2.6
Use the stdout/stderr buffer directly instead of detaching.
Python3 support: fix error reporting at import time and unicode.
Python3 support WIP: Added Custom_httplib3x to patch python3 version
of httplib as it is done for py2.
[Py3 WIP] Fix for compatibility.
PY3 support: fixed S3Uri and Exceptions regarding unicode/str
compatibility.
Missing change that was needed for custom_httplib functions...
PY3 support: more unicode related things.
PY3 support: long was removed in py3. Replace by int
PY3 support: ensure to use the adequate / sign for division with
python3.
PY3 support: Added a warning at runtime to warn of WIP
PY3 support: Added silent versions for unicodise/deunicodise funcs
Small cosmetic changes in Custom_httplib(s)
Remove legacy code. s3cmd is now only compatible py >2.6
Py3 support: Reworked request/signature regarding unicode/bytes mix.
Py3 support: signature v2 - limit list of subresources url that are
signed
Py3 support: ensure that request body are encoded when "unicode"
strings
Signature v2: add "cors" to list of subresources to include in
signature
Improve get_bucket_location to be able to work all the time with aws
Use pretty print everywhere in debug for request responses
Getlocation for each type of request when region is not set and
signature v4 used
PY3 support: more fixes for str/unicode related issues.
Typo fix in debug log message
PY3 support: use getitem instead of getslices for slices
PY3 support: Fix for regexp/unicode in runtest-minio
Use io buffers everywhere for files or stdin/stdout + Use custom
stream_name attribute.
Fixes signurl (v2) for python3.
run-tests-minio: re-activated a test that is now working.
Urlencode string only when formatting the url and not earlier.
Get ride of the "extra" parameter for requests and use a clean
"params" dict for all the query strings.
Ensure to not have "{}" in functions parameters to be safe.
In the v4 canonical query string, parameter without values should
still have an equal sign.
Fixes signature v2 invalid call to format_param_str.
PY3 support: Fixes acl.py use of repr.
Remove bad duplicated code.
Little performance + memory improvement. + Fixes randomless in auto
tests.
Typo fixes.
Sort headers in requests to always have the same order.
Fixes failing tests with special chars for PY3
Small changes on run-tests.py
Change .travis.yml now all tests are passing with minio.
Documentation: Fixes #872 . Updated following the proposal of
@cthorley.
Fix error message to be accurate with all cases + Fixed auto tests
for last change.
Update setup.py classifiers to indicate that Python3 is supported.
Guy Gur-Ari (4):
run-tests.py: use lowercase bucket name
don't allow mv/cp of multiple files to single file
raise exception for missing '/' during mv, cp
remove unreachable code
Harshavardhana (2):
Missing etag in HTTP headers, handle gracefully.
build: Do not throw exceptions if no arguments were passed for
setup.py
Jan Kasiak (1):
Change proxy SSL URI to relative
Joe Mifsud (2):
Add support for invalidating multiple CF distributions with
--cf-inval when the bucket is the origin for multiple distributions
Switching to set()
Krzysztof Warunek (1):
support endpoint with custom path
Marco Jakob (7):
Get the access token from the environment
Do not refresh role
Do not refresh role
Add option for token-refresh
Add option for token-refresh
Add option for token-refresh
Add option for token-refresh
Mark Titorenko (2):
Generalize wildcard certificate forgiveness
Updated based on feedback.
Masashi Ozawa (2):
add "limit" option to "ls" and "la" commands to return the specified
number of objects instead of returning all objects in the bucket.
Enable to configure "host_base" as "S3 Endpoint" in interactive
configuration.
Matt Domsch (2):
Catch 'connection reset by peer' (errno 104) and retry
pretty print server responses
Robert Palmer (1):
Added support for S3 Glacier archive retrieval speed options
Shaform (11):
use print function
Fix has_key with 2to3
Fix except with 2to3
Fix numliterals with 2to3
update relative import
actually run python3 for tests
run python3 for run-tests.py
fix relative imports
fix imports
fix logging
fix has_key, numliterals, except, imports on s3cmd
Simone Esposito (1):
S3/Config: `os.environ.get` -> `os.getenv`
Vincent (1):
FIX: update s3cmd.1 --disable man entry option
Yossi Abraham (1):
Properly passing parsed hostname and port
marcojakob (3):
Remove optparser switches
Make _access_token_refresh private and set it to true if access_token
was already set
Add CLI option for specifying access_token, see PR #694
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
S3tools-general mailing list
S3tools-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/s3tools-general