Revision history for Net-Async-Webservice-S3
0.19 2021-03-16
[CHANGES]
* Use Test::Async::HTTP
* General modernisation of code:
+ Neater Build.PL
+ Use Future-construction forms of Future->done / Future->fail
+ Documentation style
* Follow NextMarker when listing keys (RT119183)
* Enable SSL by default (RT133977)
0.18 2014/01/23 01:33:53
[CHANGES]
* Allow fetching byte ranges
* Wrap the If-Match HTTP header
* Repair stall_timeout by using a ranged GET
0.17 2013/11/25 19:07:21
[CHANGES]
* Support multiple concurrent uploads of parts in ->put_object
* Allow (part) value to be a Future returning a CODE/size pair
[BUGFIXES]
* Avoid die()ing with an entire content string interpolated into $@
0.16 2013/11/12 00:48:18
[BUGFIXES]
* Bugfixes to head_then_get for non-200 responses, and cancellation
0.15 2013/10/20 17:23:42
[CHANGES]
* Support ->head_then_get_object->cancel
* Neaten up failure results in line with IO::Async standard
0.14 2013/10/12 03:09:11
[CHANGES]
* Added ->head_then_get_object method
0.13 2013/09/26 21:02:25
[CHANGES]
* Added 'on_write' callback parameter to ->put_object
* Pass 'stall_timeout' to ->do_request rather than ->configure'ing it
on the NaHTTP object; reducing the API surface
* Yield total generated content length from ->put_object result
[BUGFIXES]
* Ensure that a 'multipart' put of no parts creates an empty object
instead of failing
0.12 2013/09/14 00:03:53
[CHANGES]
* Use Net::Async::HTTP 0.28 so the stall_timeout logic works during
write; can avoid having custom handling for it now
0.11 2013/09/05 16:29:07
[CHANGES]
* Configurable hostname for S3 service - allows use of other service
providers
* More succinct documentation of Future-returning methods to include
the Future yield values in the =head2 line itself
0.10 CHANGES:
* Much improved timeout logic, including stall timer for PUT
* Don't retry on HTTP 4xx errors, they should fail immediately
0.09 CHANGES:
* Add a small delay after failures before retrying, to let HTTP
connections properly reset/recover
* Pass through timeout and stall_timeout to underlying NaHTTP object
0.08 CHANGES:
* Optionally support SSL
* Sanity-check bucket names that are used as DNS names
* Added SYNOPSIS example code
0.07 BUGFIXES:
* length(undef) on pre 5.14 perl causes undef warnings
* lc() MD5sum hashes before comparison, for extra robustness
0.06 CHANGES:
* Added ->head_object
* Support setting and retrieving S3 metadata on keys
* Allow ->configure keys to be set back to undef
* Deleted now-deprecated legacy 'multipart_chunk_size' configure key
0.05 CHANGES:
* Completely rewritten (multipart) PUT logic - can now use plain
strings, Futures, or CODE generator functions.
* Better detection of when multipart is or isn't required
* Created some little example scripts that perform simple
list/get/put/delete operations
0.04 CHANGES:
* New 'gen_parts' multipart generator to replace 'gen_value'
* Support generating parts from Futures
* Renamed 'multipart_chunk_size' to 'part_size'
0.03 CHANGES:
* Allow storing an optional bucket name and key name prefix
* List in batches of 1000 by default, rather than 100
* Declare explicit dependency on Future 0.13
0.02 CHANGES:
* Initial implementation of multipart upload
* Changed gen_value callback API to pass in position/length
* Changed put_object future return value to yield ETag directly
* Declare that we need NaHTTP at least 0.19
0.01 First version, released on an unsuspecting world.