Amazon-S3

 view release on metacpan or  search on metacpan

README.md  view on Meta::CPAN

> benefits of scale and to pass those benefits on to
> developers.
>
> To sign up for an Amazon Web Services account, required to
> use this library and the S3 service, please visit the Amazon
> Web Services web site at http://www.amazonaws.com/.
>
> You will be billed accordingly by Amazon when you use this
> module and must be responsible for these costs.
>
> To learn more about Amazon's S3 service, please visit:
> http://s3.amazonaws.com/.
>
> The need for this module arose from some work that needed
> to work with S3 and would be distributed, installed and used
> on many various environments where compiled dependencies may
> not be an option. [Net::Amazon::S3](https://metacpan.org/pod/Net%3A%3AAmazon%3A%3AS3) used [XML::LibXML](https://metacpan.org/pod/XML%3A%3ALibXML)
> tying it to that specific and often difficult to install
> option. In order to remove this potential barrier to entry,
> this module is forked and then modified to use [XML::SAX](https://metacpan.org/pod/XML%3A%3ASAX)
> via [XML::Simple](https://metacpan.org/pod/XML%3A%3ASimple).

# LIMITATIONS AND DIFFERENCES WITH EARLIER VERSIONS

As noted, this module is no longer a _drop-in_ replacement for
`Net::Amazon::S3` and has limitations and differences that may impact
the use of this module in your applications. Additionally, one of the
original intents of this fork of `Net::Amazon::S3` was to reduce the
number of dependencies and make it _easy to install_. Recent changes
to this module have introduced new dependencies in order to improve
the maintainability and provide additional features. Installing CPAN
modules is never easy, especially when the dependencies of the
dependencies are impossible to control and include may include XS
modules.

- MINIMUM PERL

    Technically, this module should run on versions 5.10 and above,
    however some of the dependencies may require higher versions of
    `perl` or some lower versions of the dependencies due to conflicts
    with other versions of dependencies...it's a crapshoot when dealing
    with older `perl` versions and CPAN modules.

    You may however, be able to build this module by installing older
    versions of those dependencies and take your chances that those older
    versions provide enough working features to support `Amazon::S3`. It
    is likely they do...and this module has recently been tested on
    version 5.10.0 `perl` using some older CPAN modules to resolve
    dependency issues.

    To build this module on an earlier version of `perl` you may need to
    downgrade some modules.  In particular I have found this recipe to
    work for building and testing on 5.10.0.

    In this order install:

        HTML::HeadParser 2.14
        LWP 6.13
        Amazon::S3

    ...other versions _may_ work...YMMV. If you do decide to run on an
    earlier version of `perl`, you are encouraged to run the test
    suite. See the ["TESTING"](#testing) section for more details.

- API Signing

    Making calls to AWS APIs requires that the calls be signed.  Amazon
    has added a new signing method (Signature Version 4) to increase
    security around their APIs. This module no longer utilizes Signature
    Version V2.

    **New regions after January 30, 2014 will only support Signature Version 4.**

    See ["Signature Version V4"](#signature-version-v4) below for important details.

    - Signature Version 4

        [https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html](https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html)

        _IMPORTANT NOTE:_

        Unlike Signature Version 2, Version 4 requires a regional
        parameter. This implies that you need to supply the bucket's region
        when signing requests for any API call that involves a specific
        bucket. Starting with version 0.55 of this module,
        `Amazon::S3::Bucket` provides a new method (`region()`) and accepts
        in the constructor a `region` parameter.  If a region is not
        supplied, the region for the bucket will be set to the region set in
        the `account` object (`Amazon::S3`) that you passed to the bucket's
        new constructor.  Alternatively, you can request that the bucket's new
        constructor determine the bucket's region for you by calling the
        `get_location_constraint()` method.

        When signing API calls, the region for the specific bucket will be
        used. For calls that are not regional (`buckets()`, e.g.) the default
        region ('us-east-1') will be used.

    - Signature Version 2

        [https://docs.aws.amazon.com/AmazonS3/latest/userguide/RESTAuthentication.html](https://docs.aws.amazon.com/AmazonS3/latest/userguide/RESTAuthentication.html)

- Multipart Upload Support

    There are some recently added unit tests for multipart uploads that
    seem to indicate this feature is working as expected.  Please report
    any deviation from expected results if you are using those methods.

    For more information regarding multipart uploads visit the link below.

    [https://docs.aws.amazon.com/AmazonS3/latest/API/API\_CreateMultipartUpload.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)

# METHODS AND SUBROUTINES

Unless otherwise noted methods will return an `undef` if an error
occurs.  You can get more information about the error by calling
`err()` and `errstr()`.

## new 

Create a new S3 client object. Takes some arguments:



( run in 0.573 second using v1.01-cache-2.11-cpan-99c4e6809bf )