- Fix support for custom metadata
- Add support for custom metadata
- Fix correct signing name for a few endpoints which were wrong
- Fix correct hostname for global endpoints
- Implement automatic retries
- Fix typo on S3 multipart upload doc
- Fix API Gateway Management API to include Stage on all endpoints
- Update generated code to include auto-generated types and specs for everything
- Move to new version of aws-codegen (aws-codegen/issues/103) which uses aws-sdk-go-v2
- Fix endpoints for global AWS services
- Add support for the ec2 protocol
- Add docs for multipart upload to S3
- Allow call-site specification of http client options
All notable changes to this project will be documented in this file.
- Skip signature without access_key_id and secret_access_key
- Fix AWS.S3.delete_objects which requires a content md5 header
v0.13.1 - 2022-09-07
- Fix the generator to commit removed files to the repository. This prevents problems with renamed modules, or removed ones. We also removed the modules with problems.
v0.13.0 - 2022-09-02
- Fix services that need a host prefix before the endpoint prefix. This makes services like "Location" to work properly.
- Update the AWS generated modules to reflect v1.44.90 of Go SDK. This may cause breaking changes.
v0.12.0 - 2022-07-18
- Fix the encoding of query strings for complex values.
- Update the AWS generated modules to reflect v1.44.60 of Go SDK. This may cause breaking changes.
v0.11.0 - 2022-05-24
- Update the AWS generated modules to reflect v1.44.21 of Go SDK. This may cause breaking changes.
- Change
aws_signature
requirement to~> 0.3
in order to support newer versions.
v0.10.1 - 2022-02-02
- Update
AWS.Client
typespecs to acceptnil
for theendpoint
field. - Isolate Hackney connection pool for requests. Now the pool is named
:aws_pool
. - Don't display the
:session_token
field when inspectingAWS.Client
.
v0.10.0 - 2021-12-03
- Don't display access key or secret key when inspecting
AWS.Client
. - Add the
region
toAWS.Client.t
- Update the APIs to the version 1.42.18 of Go SDK. There is a breaking
change:
AWS.API.Pricing
changed toAWS.Pricing
. Several modules were added. - Require Elixir ~> 1.10
v0.9.2 - 2021-10-27
- Fix decoding of UTF8 chars when parsing XML responses.
v0.9.1 - 2021-10-26
- Fix encode of payload for GET/HEAD/OPTIONS requests. It shouldn't be encoded because the body should be empty. This fixes a signature error problem.
v0.9.0 - 2021-09-01
- Add support for configuring the endpoint used by
AWS.Client
. This change enable the usage of AWS compatible APIs.
- Move functions and modules related to AWS Signature to a new package
and add this package -
aws_signature
- as a new dependency.
- Fix encode of URIs to use the correct escaping rule.
v0.8.0 - 2021-07-18
- Add support for OTP 24 by updating the usage of
:crypto
functions to the new API. - Add support for more services - update to be in sync with aws-sdk-go 1.40.2.
- Change
AWS.Client
port value to an integer instead of string. - Use "us-east-1" as default region for global services.
- Improve ExDocs configuration for a better documentation.
- Skip decoding of "REST" responses when body is binary.
- Fix HEAD requests for the default HTTP client.
- Fix "content-type" for "REST" requests that have the body as binary. It uses "application/octet-stream" now.
- Fix handle of HTTP status from requests - consider anything in the range of 2xx as successful, but check for exact status if the service requires one.
- Fix two signature bugs: when the headers are similar and when the canonical URL has colons (:).
v0.7.0 - 2020-12-22
- Add support for more AWS APIs. There are more than 170 new modules, which includes the majority of AWS services.
- Load AWS credentials from env if available.
- Add header
X-Amz-Content-SHA256
required for APIs using the rest-xml protocol. - Handle querystring parameters.
- Allow the user to configure the HTTP client, as well as the JSON parser.
- Update structure of error response from
{:error, {exception, reason}}
to{:error, {:unexpected_response, response}}
.- You can obtained the previous
exception
andreason
in this version by decoding theresponse.body
, whereexception
is mapped toresponse.body["__type"]
andreason
is mapped toresponse.body["message"]
.
- You can obtained the previous
- Update module naming for certain AWS services. E.g.:
AWS.Cognito
is renamed toAWS.CognitoIdentity
AWS.Cognito.IdentityProvider
is renamed toAWS.CognitoIdentityProvider
- Improve documentation by using more markdown and removing HTML tags.
- Rename modules and function names to consider the correct use of abbreviations, like SQS or DB.
- Migrate to Jason (JSON parser) and hackney (HTTP client) as the default dependencies. Hackney is an optional dependency.
- Fixed the way we send the payload to endpoints that accepts binaries as body (S3 is an example).
- Normalize querystring when signing.
- Remove duplicated headers.
v0.6.0 - 2020-08-20
- Includes support for more AWS APIs.
- Pass security token for signed POST requests.
v0.5.0 - 2017-03-07
AWS.APIGateway
module uses a service URL without a trailing slash (apparently AWS behaviour with regard to URL signing is inconsistent). Thanks Richard Foster (@zuren).
v0.4.0 - 2017-03-06
AWS.AppStream
module for AWS AppStream service.AWS.Batch
module for AWS Batch service.AWS.Budgets
module for AWS Budgets service.AWS.CloudDirectory
module for AWS CloudDirectory service.AWS.CodeBuild
module for AWS CodeBuild service.AWS.CostAndUsageReport
module for AWS Cost and Usage Report service.AWS.Health
module for AWS Health service.AWS.Kinesis.Analytics
module for Kinesis Analytics service.AWS.LexRuntime
module for AWS Lex Runtime service.AWS.Lightsail
module for AWS Lightsail service.AWS.MechanicalTurk
module for AWS Mechanical Turk service.AWS.OpsWorks.ChefAutomate
module for AWS OpsWorks for Chef Automate service.AWS.Organizations
module for AWS Organizations service.AWS.Polly
module for AWS Polly service.AWS.Rekognition
module for AWS Rekognition service.AWS.Shield
module for AWS Shield service.AWS.SMS
moduule for AWS Server Migration service.AWS.Snowball
module for AWS Snowball service.AWS.StepFunctions
module for AWS Step Functions service.AWS.WAF.Regional
module for WAF Regional service.AWS.XRay
module for AWS X-Ray service.
- Elixir 1.4 with Erlang 19.1 are the minimally supported versions of Elixir and Erlang/OTP.
- README has been simplified and improved. Thanks Paulo Ancheta (@pauloancheta).
- Bumped
httpoison
dependency from~> 0.10.0
to~> 0.11.1
. Thanks Wojtek Piekutowski (@wpiekutowski). - Bumped
poison
dependency from~> 1.5 or ~> 2.0
to~> 3.1
. - Bumped
timex
dependency from~> 2.1
to~> 3.1
. Thanks Christian Blavier (@cblavier). AWS.APIGateway
module has updated documentation and support for managing documentation parts and versions, usage plans and keys, getting SDK types and importing API keys.AWS.AutoScaling
module has updated documentation.AWS.CertificateManager
module has updated documentation.AWS.CloudTrail
module has updated documentation and support for event selectors.AWS.CodeCommit
module has updated documentation and support for blobs and differences.AWS.CodeDeploy
module has updated documentation and support for skipping wait times before terminating instances in blue/green deployments.AWS.CodePipeline
module has updated documentation and support for getting pipeline executions.AWS.Cognito
module has updated documentation.AWS.Cognito.IdentityProvider
module has updated documentation and support for admin operations.AWS.Config
module has updated documentation and support for evaluations results.AWS.DeviceFarm
module has updated documentation and support for managing remote access sessions.AWS.DirectConnect
module has updated documentation and support for managing hosted connections, lag and BGP peers.AWS.DirectoryService
module has updated documentation and support for managing schema extensions.AWS.Discovery
module has updated documentation and support for managing application configuration and fetching summaries.AWS.DMS
module has updated documentation and support for modifying replication tasks.AWS.DynamoDB
module has updated documentation and support for managing resource tags and managing the lifetime of individual table items.AWS.DynamoDB.Streams
has updated documentation.AWS.ECR
module has updated documentation and support for describing images.AWS.ECS
module has updated documentation and support for managing attributes and updating container instance states.AWS.EFS
module has updated documentation.AWS.EMR
module has updated documentation and support for canceling steps and managing security configuration and auto scaling policy.AWS.GameLift
module has updated documentation and support for managing instances, game session queues and game session placement.AWS.Glacier
module has updated documentation and support for purchasing provisions capacity.AWS.IoT
module has updated documentation and support for managing thing types and outgoing certificates.AWS.Kinesis
module has updated documentation and support for managing limits.AWS.Kinesis.Firehose
module has updated documentation.AWS.KMS
module has updated documentation and support for import parameters and resource tags.AWS.Lambda
module has updated documentation and support for managing account settings.AWS.Logs
module has updated documentation and support for log group tags.AWS.MachineLearning
module has updated documentation.AWS.Marketplace.CommerceAnalytics
module has updated documentation and support for starting support data export.AWS.Marketplace.Metering
module has updated documentation and support for batch metering and resolving customers.AWS.OpsWorks
module has updated documentation.AWS.Route53.Domains
module has updated documentation and support for domain suggestions, billing and domain renewal.AWS.ServiceCatalog
module has updated documentation and support for portfolios, products and constraints.AWS.SSM
module has updated documentation and support for maintenance windows, parameters and patch baselines.AWS.StorageGateway
module has updated documentation and support for NFS file shares.AWS.Support
module has updated documentation.AWS.WAF
module has updated documentation.AWS.Workspaces
module has updated documentation and support for workspace properties and connection status.
v0.3.0 - 2016-12-11
- Bumped
httpoison
dependency from~0.9.1
to~0.10.0
.
v0.2.0 - 2016-08-20
- Bumped
httpoison
dependency from~0.8.0
to~0.9.1
to be compatible with Elixir 1.3.2.
v0.1.0 - 2016-07-13
AWS.AutoScaling
module for AWS Auto Scaling service.AWS.CertificateManager
module has support for adding, listing and removing tags from certificates along with updated documentation.AWS.CloudHSM
module has updated documentation.AWS.CloudTrail
module has updated documentation.AWS.CodePipeline
module has support for putting approval results, retrying stage execution and updated documentation.AWS.Config
module has support to delete configuration recorders and updated documentation.AWS.DirectConnect
module has support to fetch letters of authorization for connections and interconnects and has updated documentation.AWS.DirectoryService
module has support to add, list and remove tags from resources.AWS.Discovery
module for AWS Application Discovery Service.AWS.DMS
module has support to import, delete and describe certifications and has updated documentation.AWS.DynamoDB
module has updated documentation.AWS.DyanamoDB.Streams
module has updated documentation.AWS.ECS
module has updated documentation.AWS.EFS
module has updated documentation.AWS.GameLift
module has support to describe and update a runtime configuration for a fleet and has updated documentation.AWS.Inspector
module has updated documentation.AWS.IoT
module has support to list policy principals and has updated documentation.AWS.Kinesis.Firehose
module has updated documentation.AWS.KMS
module has updated documentation.AWS.MachineLearning
module has support to add, describe and delete tags on an object and has updated documentation.AWS.OpsWorks
module has updated documentation.AWS.Route53.Domains
module has support to get and resent contact reachability status and has updated documentation.AWS.ServiceCatalog
module for AWS Service Catalog service.AWS.SSM
module has support to add, list and remove tags from resources, to create, describe and delete activations, to deregister managed instances, to describe and modify document permissions, to update managed instance roles and has updated documentation.AWS.StorageGateway
module has support to list taps and has updated documentation.AWS.Workspaces
module has support to create, describe and delete tags.
AWS.CognitoIdentityProvider
module removes support to get JSON web keys or OpenID configuration information for user pools.
v0.0.12 - 2016-07-13
- Bumped
poison
dependency from~1.0
to~1.5 or ~2.0
to be compatible with the latest version of Phoenix.
v0.0.11 - 2016-04-21
AWS.CertificateManager
module for AWS Certificate Manager service.AWS.CloudWatch.Events
module for AWS CloudWatch Events service.AWS.Cognito.IdentityProvider
module for AWS Cognito Identity Provider service.AWS.DMS
module for AWS Database Migration Service.AWS.ECR
module for AWS EC2 Container Registry service.AWS.Inspector
module for AWS Inspector service.AWS.IoT
module for AWS IoT service.AWS.IoT.DataPlane
module for AWS IoT Data Plane service.AWS.Kinesis.Firehose
module for AWS Kinesis Firehose service.AWS.MachineLearning
module for AWS Machine Learning service.AWS.Marketplace.Metering
module for AWS Marketplace Metering service.
AWS.CodePipeline
module has updated documentation.AWS.Cognito
module has updated documentation.AWS.DirectoryService
module has support for creating, deleting, describing and updating conditional forwarders.AWS.Kinesis
module has updated documentation and enabling and disabling enhanced monitoring.AWS.MCA
module has been renamed toAWS.Marketplace.CommerceAnalytics
.AWS.StorageGateway
module has updated documentation.AWS.WAF
module has support for creating, deleting, getting, listing and updating XSS match sets.- Timex dependency upgrade from 1.x to 2.x (Fixes #40).
- Bump minimum Elixir version to 1.2.
- Link to
aws-codegen
added and broken AWS SDK specification links fixed in README. Thanks Brenton Annan (@brentonannan).
v0.0.10 - 2016-03-22
AWS.CloudHSM
module has support to add, list and remove tags on resources.AWS.CodeCommit
module has support for getting commits, and working with repository triggers.AWS.CodeDeploy
module has support for batch operations related to application revisions, deployment groups and deployment instances.AWS.DeviceFarm
module has support for offering status, offering transactions, offerings and stopping of runs.AWS.DirectoryService
module has support managing event topics.AWS.GameLift
module has support for managing game session details and scaling policies.AWS.StorageGateway
module has support for creating tapes with barcodes.
AWS.Cognito.Sync
module uses header locations instead of parameter names when making requests.AWS.Glacier
module uses header locations instead of parameter names when making requests and processing responses.AWS.Lambda
module uses header locations instead of parameter names when making requests and processing responses.AWS.MobileAnalytics
module uses header locations instead of parameter names when making requests.
v0.0.9 - 2016-03-22
AWS.CloudSearch.Domain
module has been removed because it doesn't work correctly and adding support for it to the code generator not a priority.
v0.0.8 - 2016-02-09
AWS.GameLift
module for AWS GameLift service.AWS.MCA
module for AWS Marketplace Commerce Analytics service.AWS.WAF
module for AWS Web Application Firewall service.- Experimental/unstable support for generating v4 signatures that can be
embedded in query strings is taking shape in
AWS.Request.sign_v4_query
.
- Requests that error now return
{:error, {exception, message}}
2-tuples instead of the{:error, exception}
2-tuples that were returned before.
v0.0.7 - 2016-01-13
- Trailing slashes that were causing signing errors in generated URLs in the Lambda client have been removed. Thanks Akash Manohar aka @HashNuke.
- REST-JSON clients, including
AWS.CloudSearchDomain
,AWS.CognitoSync
,AWS.EFS
,AWS.Glacier
,AWS.Lambda
,AWS.MobileAnalytics
andAWS.Transcoder
correctly handle responses with empty bodies. Thanks Akash Manohar (@HashNuke).
v0.0.6 - 2016-01-06
AWS.DirectoryService
module has new functionality for managing and verifying trust relationships.AWS.Client
has newproto
andport
members that can be used to create a client that is suitable for use with Local DynamoDB. In this situation, the region should be set tolocal
, the protocol tohttp
and the port should match the running Local DynamoDB instance.AWS.ECS
has updated documentation.AWS.Logs
has updated documentation.AWS.SSM
has updated documentation.
- Services return an
{:ok, nil, response}
3-tuple, instead of the{:ok, response}
2-tuple that was previously returned, when an AWS service endpoint returns a successful HTTP status with an empty response body. - Relax
Poison
dependency to 1.2.0 to maintain compatibility with ex_aws.
v0.0.5 - 2015-11-06
- All services return a
{:error, reason, response}
tuple when an unsuccessful HTTP status code is returned (previously theresponse
was not included).
- An empty body returned alongside an HTTP 200 from an AWS service isn't parsed by Poison (which was causing exceptions to be raised). Thanks Mike Coleman (@fivebats).
v0.0.4 - 2015-08-05
AWS.CloudSearch.Domain
module for Cloud Search Service.AWS.Cognito.Sync
module for Cognito Sync Service.AWS.DeviceFarm
module for DeviceFarm Service.AWS.EFS
module for Elastic File System Service.AWS.Glacier
module for Glacier Service.AWS.Lambda
module for Lambda Service.AWS.MobileAnalytics
module for Mobile Analytics Service.AWS.Transcoder
module for Elastic Transcoder Service.
AWS.CloudHSM
module has updated documentation.AWS.CognitoIdentity
module has been renamed toAWS.Cognito
.AWS.Logs
module has support for newDeleteDestination
,DescribeDestinations
,PutDestination
andPutDestinationPolicy
actions.AWS.OpsWorks
module has updated documentation and new support for theDeregisterEcsCluster
,DescribeEcsClusters
andRegisterEcsCluster
actions.AWS.Route53Domains
module has been renamed toAWS.Route53.Domains
.AWS.StorageGateway
module has updated documentation.
v0.0.3 - 2015-07-14
AWS.DynamoDB.Streams
module for DynamoDB Streams Service.
AWS.DynamoDB
module has updated documentation.
v0.0.2 - 2015-07-09
AWS.CodeCommit
module for CodeCommit Service.AWS.CodePipeline
module for CodePipeline Service.AWS.CognitoIdentity
module for Cognito Service.AWS.DirectoryService
module for Directory Service.AWS.Route53Domains
module for Route53 Domains Service.AWS.Workspaces
module for Workspaces Service.
AWS.CodeDeploy
module has new functionality for managing on premises instances.AWS.Config
module has updated documentation.AWS.DynamoDB
module has updated documentation.AWS.ECS
module has updated documentation and new support for theUpdateContainerAgent
action.AWS.Kinesis
module has updated documentation.AWS.KMS
module has updated documentation and new support for theUpdateAlias
action.AWS.Logs
module has updated documentation and new functionality for managing log events and subscription filters.AWS.OpsWorks
module has updated documentation and new support for theDescribeAgentVersions
andGrantAccess
actions.AWS.SSM
module has updated documentation.AWS.StorageGateway
module has updated documentation and new support for theListVolumeInitiators
action.
v0.0.1 - 2015-05-29
AWS.CloudHSM
module for CloudHSM Service.AWS.CloudTrail
module for CloudTrail Service.AWS.CodeDeploy
module for CodeDeploy Service.AWS.Config
module for Config Service.AWS.DataPipeline
module for DataPipeline Service.AWS.DirectConnect
module for DirectConnect Service.AWS.DynamoDB
module for DynamoDB Service.AWS.ECS
module for EC2 Container Service.AWS.EMR
module for Elastic MapReduce Service.AWS.KMS
module for Key Management Service.AWS.Kinesis
module for Kinesis Service.AWS.Logs
module for CloudWatch Logs Service.AWS.OpsWorks
module for OpsWorks Service.AWS.SSM
module for Simple Systems Management Service.AWS.SWF
module for Simple Workflow Service.AWS.StorageGateway
module for Storage Gateway ServiceAWS.Support
module for Support Service.