Skip to content

Commit d02a7f0

Browse files
authored
Release October 15th, 2021 (#258)
* update changelog and versions * Import v0.25.1 from smithy-rs * Add changelog about retry config * ignore the rustsec advisory * Update audit.yaml Add ignore for the chrono version of the issue
1 parent c5d6c8d commit d02a7f0

File tree

1,629 files changed

+110656
-35082
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,629 files changed

+110656
-35082
lines changed

.github/workflows/audit.yaml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,13 @@ jobs:
1919
run: cargo install cargo-audit
2020
- name: Run audit
2121
working-directory: sdk
22-
run: cargo audit
22+
# chrono, a Rust date-time crate we use for timestamp parsing was added
23+
# to the RustSec vulnerability database because of a call to localtime_r.
24+
# We use chrono for an extremely narrow use case of converting epoch timestamps to UTC dates
25+
# (so we never invoke the problematic behavior that results from attempting to determine
26+
# the local time of the current platform).
27+
#
28+
# There currently is no release from chrono that rectifies the issue, and we are working
29+
# on a mitigation to ensure that we either use a patched version of chrono or add a deny-lint
30+
# to call any chrono methods other than the method we use currently.
31+
run: cargo audit --ignore RUSTSEC-2020-0071 --ignore RUSTSEC-2020-0159

AWS_SERVICES_SUPPORTED.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,7 @@ These services have not yet been manually tested by the SDK team and may not hav
174174
- [x] Amazon Macie
175175
- [x] Amazon Macie2
176176
- [x] Amazon Managedblockchain
177+
- [x] Amazon Managed Grafana
177178
- [x] Amazon Marketplace-Catalog
178179
- [x] Amazon Marketplacecommerceanalytics
179180
- [x] Amazon Mediaconnect

CHANGELOG.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,23 @@
1+
v0.0.21-alpha (October 15th, 2021)
2+
==================================
3+
4+
**New this week**
5+
6+
- Prepare crate manifests for publishing to crates.io (smithy-rs#755)
7+
- Add support for IAM Roles for tasks credential provider (smithy-rs#765, aws-sdk-rust#123)
8+
- All service crates now have generated README files (smithy-rs#766)
9+
- Update AWS service models (smithy-rs#772)
10+
- :tada: Add support for Amazon Managed Grafana (smithy-rs#772)
11+
- :tada: Make retry behavior configurable
12+
- With env vars `AWS_MAX_ATTEMPTS` and `AWS_RETRY_MODE`
13+
- With `~/.aws/config` settings `max_attempts` and `retry_mode`
14+
- By calling the `with_retry_config` method on a `Config` and passing in a `RetryConfig`
15+
- Only the `Standard` retry mode is currently implemented. `Adaptive` retry mode will be implemented at a later
16+
date.
17+
- For more info, see the AWS Reference pages on configuring these settings:
18+
- [Setting global max attempts](https://docs.aws.amazon.com/sdkref/latest/guide/setting-global-max_attempts.html)
19+
- [Setting global retry mode](https://docs.aws.amazon.com/sdkref/latest/guide/setting-global-retry_mode.html)
20+
121
v0.0.20-alpha (October, 7, 2021)
222
================================
323

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# The AWS SDK for Rust [![Docs](https://img.shields.io/badge/docs-v0.0.20--alpha-blue)](https://awslabs.github.io/aws-sdk-rust/) ![MSRV](https://img.shields.io/badge/msrv-1.53-red)
1+
# The AWS SDK for Rust [![Docs](https://img.shields.io/badge/docs-v0.0.21--alpha-blue)](https://awslabs.github.io/aws-sdk-rust/) ![MSRV](https://img.shields.io/badge/msrv-1.53-red)
22

33
This repo contains the new AWS SDK for Rust (the SDK) and its [public roadmap](https://github.com/awslabs/aws-sdk-rust/projects/1)
44

@@ -18,8 +18,8 @@ The SDK provides one crate per AWS service. You must add [Tokio](https://crates.
1818

1919
```toml
2020
[dependencies]
21-
aws-config = { git = "https://github.com/awslabs/aws-sdk-rust", tag = "v0.0.20-alpha", package = "aws-config" }
22-
aws-sdk-dynamodb = { git = "https://github.com/awslabs/aws-sdk-rust", tag = "v0.0.20-alpha", package = "aws-sdk-dynamodb" }
21+
aws-config = { git = "https://github.com/awslabs/aws-sdk-rust", tag = "v0.0.21-alpha", package = "aws-config" }
22+
aws-sdk-dynamodb = { git = "https://github.com/awslabs/aws-sdk-rust", tag = "v0.0.21-alpha", package = "aws-sdk-dynamodb" }
2323
tokio = { version = "1", features = ["full"] }
2424
```
2525

sdk/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
[workspace]
22
members = [
3-
"migrationhub","accessanalyzer","account","acmpca","acm","alexaforbusiness","amp","amplify","amplifybackend","apigateway","apigatewaymanagement","apigatewayv2","appconfig","appflow","appintegrations","applicationautoscaling","applicationinsights","applicationcostprofiler","appmesh","apprunner","appstream","appsync","athena","auditmanager","autoscalingplans","autoscaling","backup","batch","braket","budgets","costexplorer","chimesdkidentity","chimesdkmessaging","chime","cloud9","cloudcontrol","clouddirectory","cloudformation","cloudfront","cloudhsm","cloudhsmv2","cloudsearch","cloudsearchdomain","cloudtrail","codeartifact","codebuild","codecommit","codedeploy","codegurureviewer","codeguruprofiler","codepipeline","codestarconnections","codestarnotifications","codestar","cognitoidentity","cognitoidentityprovider","cognitosync","comprehend","comprehendmedical","computeoptimizer","config","connectcontactlens","connect","connectparticipant","costandusagereport","customerprofiles","databrew","dataexchange","datapipeline","datasync","dax","detective","devicefarm","devopsguru","directconnect","applicationdiscovery","dlm","databasemigration","docdb","directory","dynamodb","ebs","ec2instanceconnect","ec2","ecrpublic","ecr","ecs","eks","elasticinference","elasticache","elasticbeanstalk","efs","elasticloadbalancing","elasticloadbalancingv2","emr","elastictranscoder","ses","emrcontainers","marketplaceentitlement","elasticsearch","eventbridge","cloudwatchevents","finspacedata","finspace","firehose","fis","fms","forecast","forecastquery","frauddetector","fsx","gamelift","globalaccelerator","glue","greengrass","greengrassv2","groundstation","guardduty","health","healthlake","honeycode","iam","identitystore","imagebuilder","inspector","iotdataplane","iotjobsdataplane","iot","iot1clickdevices","iot1clickprojects","iotanalytics","iotdeviceadvisor","ioteventsdata","iotevents","iotfleethub","iotsecuretunneling","iotsitewise","iotthingsgraph","iotwireless","ivs","kafka","kafkaconnect","kendra","kinesisvideoarchivedmedia","kinesisvideomedia","kinesisvideosignaling","kinesis","kinesisanalytics","kinesisanalyticsv2","kinesisvideo","kms","lakeformation","lambda","lexmodelbuilding","licensemanager","lightsail","location","cloudwatchlogs","lookoutequipment","lookoutmetrics","lookoutvision","machinelearning","macie","macie2","managedblockchain","marketplacecatalog","marketplacecommerceanalytics","mediaconnect","mediaconvert","medialive","mediapackagevod","mediapackage","mediastoredata","mediastore","mediatailor","memorydb","marketplacemetering","mgn","migrationhubconfig","mobile","lexmodelsv2","cloudwatch","mq","mturk","mwaa","neptune","networkfirewall","networkmanager","nimble","opensearch","opsworks","opsworkscm","organizations","outposts","personalizeevents","personalizeruntime","personalize","pi","pinpointemail","pinpoint","polly","pricing","proton","qldbsession","qldb","quicksight","ram","rdsdata","rds","redshiftdata","redshift","rekognition","resourcegroups","resourcegroupstagging","robomaker","route53recoverycluster","route53recoverycontrolconfig","route53recoveryreadiness","route53","route53domains","route53resolver","lexruntime","lexruntimev2","sagemakerruntime","s3","s3control","s3outposts","sagemakera2iruntime","sagemakeredge","sagemakerfeaturestoreruntime","sagemaker","savingsplans","schemas","secretsmanager","securityhub","serverlessapplicationrepository","servicequotas","servicecatalogappregistry","servicecatalog","servicediscovery","sesv2","shield","signer","pinpointsmsvoice","sms","snowdevicemanagement","snowball","sns","sqs","ssmcontacts","ssmincidents","ssm","ssoadmin","ssooidc","sso","sfn","storagegateway","dynamodbstreams","sts","support","swf","synthetics","textract","transcribestreaming","transcribe","transfer","translate","voiceid","wafregional","waf","wafv2","wellarchitected","wisdom","workdocs","worklink","workmail","workmailmessageflow","workspaces","xray","protocol-test-helpers","smithy-async","smithy-client","smithy-eventstream","smithy-http","smithy-http-tower","smithy-json","smithy-query","smithy-types","smithy-xml","aws-auth","aws-config","aws-endpoint","aws-http","aws-hyper","aws-sig-auth","aws-sigv4","aws-types","examples/s3","examples/cognitoidentityprovider","examples/autoscaling","examples/snowball","examples/dynamodb","examples/sns","examples/kinesis","examples/iam","examples/config","examples/secretsmanager","examples/mediapackage","examples/route53","examples/sqs","examples/ec2","examples/cognitosync","examples/sagemaker","examples/lambda","examples/autoscalingplans","examples/ses","examples/ssm","examples/ecs","examples/rdsdata","examples/transcribestreaming","examples/cloudformation","examples/batch","examples/rds","examples/kms","examples/eks","examples/polly","examples/apigateway","examples/cloudwatchlogs","examples/applicationautoscaling","examples/qldb","examples/medialive","examples/cloudwatch","examples/ecr","examples/cognitoidentity","examples/ebs"
3+
"migrationhub","accessanalyzer","account","acmpca","acm","alexaforbusiness","amp","amplify","amplifybackend","apigateway","apigatewaymanagement","apigatewayv2","appconfig","appflow","appintegrations","applicationautoscaling","applicationinsights","applicationcostprofiler","appmesh","apprunner","appstream","appsync","athena","auditmanager","autoscalingplans","autoscaling","backup","batch","braket","budgets","costexplorer","chimesdkidentity","chimesdkmessaging","chime","cloud9","cloudcontrol","clouddirectory","cloudformation","cloudfront","cloudhsm","cloudhsmv2","cloudsearch","cloudsearchdomain","cloudtrail","codeartifact","codebuild","codecommit","codedeploy","codegurureviewer","codeguruprofiler","codepipeline","codestarconnections","codestarnotifications","codestar","cognitoidentity","cognitoidentityprovider","cognitosync","comprehend","comprehendmedical","computeoptimizer","config","connectcontactlens","connect","connectparticipant","costandusagereport","customerprofiles","databrew","dataexchange","datapipeline","datasync","dax","detective","devicefarm","devopsguru","directconnect","applicationdiscovery","dlm","databasemigration","docdb","directory","dynamodb","ebs","ec2instanceconnect","ec2","ecrpublic","ecr","ecs","eks","elasticinference","elasticache","elasticbeanstalk","efs","elasticloadbalancing","elasticloadbalancingv2","emr","elastictranscoder","ses","emrcontainers","marketplaceentitlement","elasticsearch","eventbridge","cloudwatchevents","finspacedata","finspace","firehose","fis","fms","forecast","forecastquery","frauddetector","fsx","gamelift","globalaccelerator","glue","grafana","greengrass","greengrassv2","groundstation","guardduty","health","healthlake","honeycode","iam","identitystore","imagebuilder","inspector","iotdataplane","iotjobsdataplane","iot","iot1clickdevices","iot1clickprojects","iotanalytics","iotdeviceadvisor","ioteventsdata","iotevents","iotfleethub","iotsecuretunneling","iotsitewise","iotthingsgraph","iotwireless","ivs","kafka","kafkaconnect","kendra","kinesisvideoarchivedmedia","kinesisvideomedia","kinesisvideosignaling","kinesis","kinesisanalytics","kinesisanalyticsv2","kinesisvideo","kms","lakeformation","lambda","lexmodelbuilding","licensemanager","lightsail","location","cloudwatchlogs","lookoutequipment","lookoutmetrics","lookoutvision","machinelearning","macie","macie2","managedblockchain","marketplacecatalog","marketplacecommerceanalytics","mediaconnect","mediaconvert","medialive","mediapackagevod","mediapackage","mediastoredata","mediastore","mediatailor","memorydb","marketplacemetering","mgn","migrationhubconfig","mobile","lexmodelsv2","cloudwatch","mq","mturk","mwaa","neptune","networkfirewall","networkmanager","nimble","opensearch","opsworks","opsworkscm","organizations","outposts","personalizeevents","personalizeruntime","personalize","pi","pinpointemail","pinpoint","polly","pricing","proton","qldbsession","qldb","quicksight","ram","rdsdata","rds","redshiftdata","redshift","rekognition","resourcegroups","resourcegroupstagging","robomaker","route53recoverycluster","route53recoverycontrolconfig","route53recoveryreadiness","route53","route53domains","route53resolver","lexruntime","lexruntimev2","sagemakerruntime","s3","s3control","s3outposts","sagemakera2iruntime","sagemakeredge","sagemakerfeaturestoreruntime","sagemaker","savingsplans","schemas","secretsmanager","securityhub","serverlessapplicationrepository","servicequotas","servicecatalogappregistry","servicecatalog","servicediscovery","sesv2","shield","signer","pinpointsmsvoice","sms","snowdevicemanagement","snowball","sns","sqs","ssmcontacts","ssmincidents","ssm","ssoadmin","ssooidc","sso","sfn","storagegateway","dynamodbstreams","sts","support","swf","synthetics","textract","transcribestreaming","transcribe","transfer","translate","voiceid","wafregional","waf","wafv2","wellarchitected","wisdom","workdocs","worklink","workmail","workmailmessageflow","workspaces","xray","smithy-async","smithy-client","smithy-eventstream","smithy-http","smithy-http-tower","smithy-json","smithy-protocol-test","smithy-query","smithy-types","smithy-xml","aws-auth","aws-config","aws-endpoint","aws-http","aws-hyper","aws-sig-auth","aws-sigv4","aws-types","examples/s3","examples/cognitoidentityprovider","examples/autoscaling","examples/snowball","examples/dynamodb","examples/sns","examples/kinesis","examples/iam","examples/config","examples/secretsmanager","examples/mediapackage","examples/route53","examples/sqs","examples/ec2","examples/cognitosync","examples/sagemaker","examples/lambda","examples/autoscalingplans","examples/ses","examples/ssm","examples/ecs","examples/rdsdata","examples/transcribestreaming","examples/cloudformation","examples/batch","examples/rds","examples/kms","examples/eks","examples/polly","examples/apigateway","examples/cloudwatchlogs","examples/applicationautoscaling","examples/qldb","examples/medialive","examples/cloudwatch","examples/ecr","examples/cognitoidentity","examples/ebs"
44
]

sdk/accessanalyzer/Cargo.toml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
22
[package]
33
name = "aws-sdk-accessanalyzer"
4-
version = "0.0.20-alpha"
5-
description = "<p>Identity and Access Management Access Analyzer helps identify potential resource-access risks by enabling you to\n identify any policies that grant access to an external principal. It does this by using\n logic-based reasoning to analyze resource-based policies in your Amazon Web Services environment. An\n external principal can be another Amazon Web Services account, a root user, an IAM user or role, a\n federated user, an Amazon Web Services service, or an anonymous user. You can also use IAM Access Analyzer to\n preview and validate public and cross-account access to your resources before deploying\n permissions changes. This guide describes the Identity and Access Management Access Analyzer operations that you can\n call programmatically. For general information about IAM Access Analyzer, see <a href=\"https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html\">Identity and Access Management Access Analyzer</a> in the <b>IAM User Guide</b>.</p>\n <p>To start using IAM Access Analyzer, you first need to create an analyzer.</p>"
4+
version = "0.0.21-alpha"
65
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
7-
license = "Apache-2.0"
6+
description = "AWS SDK for Access Analyzer"
87
edition = "2018"
8+
license = "Apache-2.0"
9+
repository = "https://github.com/awslabs/aws-sdk-rust"
10+
readme = "README.md"
911
[dependencies.aws-auth]
1012
path = "..//aws-auth"
1113
[dependencies.aws-endpoint]

sdk/accessanalyzer/README.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# aws-sdk-accessanalyzer
2+
3+
**Please Note: The SDK is currently released as an alpha and is intended strictly for
4+
feedback purposes only. Do not use this SDK for production workloads.**
5+
6+
Identity and Access Management Access Analyzer helps identify potential resource-access risks by enabling you to identify any policies that grant access to an external principal. It does this by using logic-based reasoning to analyze resource-based policies in your Amazon Web Services environment. An external principal can be another Amazon Web Services account, a root user, an IAM user or role, a federated user, an Amazon Web Services service, or an anonymous user. You can also use IAM Access Analyzer to preview and validate public and cross-account access to your resources before deploying permissions changes. This guide describes the Identity and Access Management Access Analyzer operations that you can call programmatically. For general information about IAM Access Analyzer, see [Identity and Access Management Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) in the __IAM User Guide__.
7+
8+
To start using IAM Access Analyzer, you first need to create an analyzer.
9+
10+
## Getting Started
11+
12+
> Examples are availble for many services and operations, check out the
13+
> [examples folder in GitHub](https://github.com/awslabs/aws-sdk-rust/tree/main/sdk/examples).
14+
15+
The SDK provides one crate per AWS service. You must add [Tokio](https://crates.io/crates/tokio)
16+
as a dependency within your Rust project to execute asynchronous code. To add `aws-sdk-accessanalyzer` to
17+
your project, add the following to your **Cargo.toml** file:
18+
19+
```toml
20+
[dependencies]
21+
aws-config = "0.0.21-alpha"
22+
aws-sdk-accessanalyzer = "0.0.21-alpha"
23+
tokio = { version = "1", features = ["full"] }
24+
```
25+
26+
## Using the SDK
27+
28+
Until the SDK is released, we will be adding information about using the SDK to the
29+
[Guide](https://github.com/awslabs/aws-sdk-rust/blob/main/Guide.md). Feel free to suggest
30+
additional sections for the guide by opening an issue and describing what you are trying to do.
31+
32+
## Getting Help
33+
34+
* [GitHub discussions](https://github.com/awslabs/aws-sdk-rust/discussions) - For ideas, RFCs & general questions
35+
* [GitHub issues](https://github.com/awslabs/aws-sdk-rust/issues/new/choose) – For bug reports & feature requests
36+
* [Generated Docs (latest version)](https://awslabs.github.io/aws-sdk-rust/)
37+
* [Usage examples](https://github.com/awslabs/aws-sdk-rust/tree/main/sdk/examples)
38+
39+
## License
40+
41+
This project is licensed under the Apache-2.0 License.
42+

sdk/accessanalyzer/src/client.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2381,7 +2381,8 @@ pub mod fluent_builders {
23812381
}
23822382
impl<C> Client<C, aws_hyper::AwsMiddleware, smithy_client::retry::Standard> {
23832383
pub fn from_conf_conn(conf: crate::Config, conn: C) -> Self {
2384-
let client = aws_hyper::Client::new(conn);
2384+
let retry_config = conf.retry_config.as_ref().cloned().unwrap_or_default();
2385+
let client = aws_hyper::Client::new(conn).with_retry_config(retry_config.into());
23852386
Self {
23862387
handle: std::sync::Arc::new(Handle { client, conf }),
23872388
}
@@ -2401,7 +2402,8 @@ impl
24012402

24022403
#[cfg(any(feature = "rustls", feature = "native-tls"))]
24032404
pub fn from_conf(conf: crate::Config) -> Self {
2404-
let client = aws_hyper::Client::https();
2405+
let retry_config = conf.retry_config.as_ref().cloned().unwrap_or_default();
2406+
let client = aws_hyper::Client::https().with_retry_config(retry_config.into());
24052407
Self {
24062408
handle: std::sync::Arc::new(Handle { client, conf }),
24072409
}

0 commit comments

Comments
 (0)