Skip to content

Commit 21ed3c4

Browse files
committed
Merge branch 'main' into feature/http-1.x
2 parents e685a31 + 6649098 commit 21ed3c4

File tree

49 files changed

+5148
-653
lines changed

Some content is hidden

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

49 files changed

+5148
-653
lines changed

.changelog/1751482946.md

Lines changed: 0 additions & 12 deletions
This file was deleted.

.changelog/1752160009.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
---
2+
applies_to:
3+
- aws-sdk-rust
4+
- client
5+
authors:
6+
- ysaito1001
7+
references:
8+
- smithy-rs#4203
9+
breaking: false
10+
new_feature: true
11+
bug_fix: false
12+
---
13+
Add support for configuring auth schemes manually using an auth scheme preference list.
14+
The preference list allows customers to reprioritize the order of auth schemes originally
15+
determined by the auth scheme resolver.
16+
Customers can configure the auth scheme preference at the following locations, listed in order of precedence:
17+
1. Service Client Configuration
18+
```rust
19+
use aws_runtime::auth::sigv4;
20+
use aws_smithy_runtime_api::client::auth::AuthSchemeId;
21+
use aws_smithy_runtime_api::client::auth::http::HTTP_BEARER_AUTH_SCHEME_ID;
22+
23+
let config = aws_sdk_s3::Config::builder()
24+
.auth_scheme_preference([AuthSchemeId::from("scheme1"), sigv4::SCHEME_ID, HTTP_BEARER_AUTH_SCHEME_ID])
25+
// ...
26+
.build();
27+
```
28+
2. Environment Variable
29+
```
30+
AWS_AUTH_SCHEME_PREFERENCE=scheme1, sigv4, httpBearerAuth
31+
```
32+
3. Configuration File
33+
```
34+
auth_scheme_preference=scheme1, sigv4, httpBearerAuth
35+
```
36+
With this configuration, the auth scheme resolver will prefer to select them in the specified order,
37+
if they are supported.

.github/workflows/ci-main.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,9 @@ jobs:
5858
run: ./.github/scripts/acquire-build-image
5959
- name: Tag and upload image
6060
run: |
61+
pwd
6162
IMAGE_TAG="ci-$(./.github/scripts/docker-image-hash)"
62-
./smithy-rs/.github/scripts/upload-build-image.sh $IMAGE_TAG
63+
./.github/scripts/upload-build-image.sh $IMAGE_TAG
6364
6465
# Run the shared CI after a Docker build image has been uploaded to ECR
6566
ci:

.github/workflows/ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,8 @@ jobs:
105105
fetch-depth: 0
106106
- action: check-sdk-codegen-unit-tests
107107
runner: ubuntu-latest
108-
# - action: check-fuzzgen
109-
# runner: ubuntu-latest
108+
- action: check-fuzzgen
109+
runner: ubuntu-latest
110110
- action: check-server-codegen-integration-tests
111111
runner: smithy_ubuntu-latest_8-core
112112
- action: check-server-codegen-integration-tests-python

.github/workflows/dry-run-release-scheduled.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,11 @@ jobs:
2525
with:
2626
commit_sha: main
2727
dry_run: true
28-
skip_ci: true
28+
# If the automation runs this workflow in the background, we might as well run the full CI to catch any potential issues.
29+
skip_ci: false
2930
secrets:
3031
RELEASE_AUTOMATION_BOT_PAT: ${{ secrets.RELEASE_AUTOMATION_BOT_PAT }}
3132
RELEASE_AUTOMATION_BOT_CRATESIO_TOKEN: ${{ secrets.RELEASE_AUTOMATION_BOT_CRATESIO_TOKEN }}
3233
CANARY_GITHUB_ACTIONS_ROLE_ARN: ${{ secrets.CANARY_GITHUB_ACTIONS_ROLE_ARN }}
3334
CANARY_STACK_CDK_OUTPUTS_BUCKET_NAME: ${{ secrets.CANARY_STACK_CDK_OUTPUTS_BUCKET_NAME }}
35+
SMITHY_RS_ECR_PUSH_ROLE_ARN: ${{ secrets.SMITHY_RS_ECR_PUSH_ROLE_ARN }}

.github/workflows/manual-update-lockfiles.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,5 +34,5 @@ jobs:
3434
force_update_on_broken_dependencies: ${{ inputs.force_update_on_broken_dependencies }}
3535
secrets:
3636
DOCKER_LOGIN_TOKEN_PASSPHRASE: ${{ secrets.DOCKER_LOGIN_TOKEN_PASSPHRASE }}
37-
SMITHY_RS_PUBLIC_ECR_PUSH_ROLE_ARN: ${{ secrets.SMITHY_RS_PUBLIC_ECR_PUSH_ROLE_ARN }}
37+
SMITHY_RS_ECR_PUSH_ROLE_ARN: ${{ secrets.SMITHY_RS_ECR_PUSH_ROLE_ARN }}
3838
RELEASE_AUTOMATION_BOT_PAT: ${{ secrets.RELEASE_AUTOMATION_BOT_PAT }}

.github/workflows/pull-request-updating-lockfiles.yml

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,11 @@ on:
1818
secrets:
1919
DOCKER_LOGIN_TOKEN_PASSPHRASE:
2020
required: true
21-
SMITHY_RS_PUBLIC_ECR_PUSH_ROLE_ARN:
21+
SMITHY_RS_ECR_PUSH_ROLE_ARN:
2222
required: true
2323
RELEASE_AUTOMATION_BOT_PAT:
2424
required: true
2525

26-
env:
27-
ecr_repository: public.ecr.aws/w0m4q9l7/github-awslabs-smithy-rs-ci
28-
2926
jobs:
3027
save-docker-login-token:
3128
name: Save a docker login token
@@ -42,14 +39,14 @@ jobs:
4239
- name: Attempt to load a docker login password
4340
uses: aws-actions/configure-aws-credentials@v4
4441
with:
45-
role-to-assume: ${{ secrets.SMITHY_RS_PUBLIC_ECR_PUSH_ROLE_ARN }}
42+
role-to-assume: ${{ secrets.SMITHY_RS_ECR_PUSH_ROLE_ARN }}
4643
role-session-name: GitHubActions
4744
aws-region: us-west-2
4845
- name: Save the docker login password to the output
4946
id: set-token
5047
run: |
5148
ENCRYPTED_PAYLOAD=$(
52-
gpg --symmetric --batch --passphrase "${{ secrets.DOCKER_LOGIN_TOKEN_PASSPHRASE }}" --output - <(aws ecr-public get-login-password --region us-east-1) | base64 -w0
49+
gpg --symmetric --batch --passphrase "${{ secrets.DOCKER_LOGIN_TOKEN_PASSPHRASE }}" --output - <(aws ecr get-login-password --region us-west-2) | base64 -w0
5350
)
5451
echo "docker-login-password=$ENCRYPTED_PAYLOAD" >> $GITHUB_OUTPUT
5552
@@ -77,19 +74,18 @@ jobs:
7774
- name: Acquire credentials
7875
uses: aws-actions/configure-aws-credentials@v4
7976
with:
80-
role-to-assume: ${{ secrets.SMITHY_RS_PUBLIC_ECR_PUSH_ROLE_ARN }}
77+
role-to-assume: ${{ secrets.SMITHY_RS_ECR_PUSH_ROLE_ARN }}
8178
role-session-name: GitHubActions
8279
aws-region: us-west-2
8380
- name: Upload image
8481
run: |
85-
IMAGE_TAG="$(./smithy-rs/.github/scripts/docker-image-hash)"
86-
docker tag "smithy-rs-base-image:${IMAGE_TAG}" "${{ env.ecr_repository }}:${IMAGE_TAG}"
87-
aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws
88-
docker push "${{ env.ecr_repository }}:${IMAGE_TAG}"
82+
IMAGE_TAG="ci-$(./smithy-rs/.github/scripts/docker-image-hash)"
83+
./smithy-rs/.github/scripts/upload-build-image.sh $IMAGE_TAG
8984
9085
create-pull-request-for-updating-lockfiles:
9186
name: Create a Pull Request for updating lockfiles
9287
needs:
88+
- save-docker-login-token
9389
- acquire-base-image
9490
runs-on: ubuntu-latest
9591
steps:
@@ -106,6 +102,9 @@ jobs:
106102
branch_name="update-all-lockfiles-$(date +%s)"
107103
echo "branch_name=${branch_name}" > $GITHUB_OUTPUT
108104
- name: Cargo update all lockfiles
105+
env:
106+
ENCRYPTED_DOCKER_PASSWORD: ${{ needs.save-docker-login-token.outputs.docker-login-password }}
107+
DOCKER_LOGIN_TOKEN_PASSPHRASE: ${{ secrets.DOCKER_LOGIN_TOKEN_PASSPHRASE }}
109108
uses: ./smithy-rs/.github/actions/docker-build
110109
with:
111110
action: cargo-update-lockfiles

.github/workflows/update-lockfiles.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,5 @@ jobs:
2323
force_update_on_broken_dependencies: false
2424
secrets:
2525
DOCKER_LOGIN_TOKEN_PASSPHRASE: ${{ secrets.DOCKER_LOGIN_TOKEN_PASSPHRASE }}
26-
SMITHY_RS_PUBLIC_ECR_PUSH_ROLE_ARN: ${{ secrets.SMITHY_RS_PUBLIC_ECR_PUSH_ROLE_ARN }}
26+
SMITHY_RS_ECR_PUSH_ROLE_ARN: ${{ secrets.SMITHY_RS_ECR_PUSH_ROLE_ARN }}
2727
RELEASE_AUTOMATION_BOT_PAT: ${{ secrets.RELEASE_AUTOMATION_BOT_PAT }}

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,16 @@
11
<!-- Do not manually edit this file. Use the `changelogger` tool. -->
2+
July 17th, 2025
3+
===============
4+
**New this release:**
5+
- (all, [smithy-rs#4212](https://github.com/smithy-lang/smithy-rs/issues/4212)) Event streams now allocate a right-sized buffer avoiding repeated reallocations during serialization
6+
7+
8+
July 16th, 2025
9+
===============
10+
**New this release:**
11+
- (client) re-use checksums on retry attempts for enhanced durability
12+
13+
214
July 8th, 2025
315
==============
416
**New this release:**

aws/SDK_CHANGELOG.next.json

Lines changed: 26 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -6,100 +6,84 @@
66
"smithy-rs": [],
77
"aws-sdk-rust": [
88
{
9-
"message": "Fix h2 GoAway errors not being retried by hyper legacy client\n",
9+
"message": "Temporarily disable fetching account ID from IMDS credentials on EC2.\n",
1010
"meta": {
11-
"bug": true,
11+
"bug": false,
1212
"breaking": false,
1313
"tada": false
1414
},
15-
"author": "aajtodd",
15+
"author": "ysaito1001",
1616
"references": [
17-
"aws-sdk-rust#1272"
17+
"smithy-rs#4187"
1818
],
19-
"since-commit": "7d64b2f9e8fc89159d7fb1ff1309d6d6b8b53189",
19+
"since-commit": "dd10f0602682dfabafc465dbcd9eb92d3d915c51",
2020
"age": 5
2121
},
2222
{
23-
"message": "Fix default supported protocols incorrectly ordered in `ClientProtocolLoader`.\n",
23+
"message": "Fix hyper 1.x connection refused errors not marked as retryable\n",
2424
"meta": {
2525
"bug": true,
2626
"breaking": false,
2727
"tada": false
2828
},
29-
"author": "ysaito1001",
30-
"references": [
31-
"smithy-rs#4165"
32-
],
33-
"since-commit": "c624a84d9ecc451854521e363e34cf6f1c10e009",
34-
"age": 4
29+
"author": "aajtodd",
30+
"references": [],
31+
"since-commit": "dd10f0602682dfabafc465dbcd9eb92d3d915c51",
32+
"age": 5
3533
},
3634
{
37-
"message": "Add support for fetching account ID from IMDS credentials on EC2.\n",
35+
"message": "Make Rpc V2 CBOR a compatible protocol for `awsQuery` using `awsQueryCompatible` trait\n",
3836
"meta": {
3937
"bug": false,
4038
"breaking": false,
4139
"tada": false
4240
},
4341
"author": "ysaito1001",
4442
"references": [
45-
"smithy-rs#4109"
43+
"smithy-rs#4186"
4644
],
47-
"since-commit": "c624a84d9ecc451854521e363e34cf6f1c10e009",
48-
"age": 4
45+
"since-commit": "dd10f0602682dfabafc465dbcd9eb92d3d915c51",
46+
"age": 5
4947
},
5048
{
51-
"message": "Temporarily disable fetching account ID from IMDS credentials on EC2.\n",
49+
"message": "Allows customers to configure the auth schemes and auth scheme resolver. For more information see the GitHub [discussion](https://github.com/smithy-lang/smithy-rs/discussions/4197).\n",
5250
"meta": {
5351
"bug": false,
5452
"breaking": false,
5553
"tada": false
5654
},
5755
"author": "ysaito1001",
5856
"references": [
59-
"smithy-rs#4187"
57+
"smithy-rs#4076",
58+
"smithy-rs#4198"
6059
],
61-
"since-commit": "dd10f0602682dfabafc465dbcd9eb92d3d915c51",
60+
"since-commit": "ccf374dddc0690ef8aca1ed006b9e9b21299558e",
6261
"age": 3
6362
},
6463
{
65-
"message": "Fix hyper 1.x connection refused errors not marked as retryable\n",
64+
"message": "re-use checksums on retry attempts for enhanced durability\n",
6665
"meta": {
67-
"bug": true,
66+
"bug": false,
6867
"breaking": false,
6968
"tada": false
7069
},
7170
"author": "aajtodd",
7271
"references": [],
73-
"since-commit": "dd10f0602682dfabafc465dbcd9eb92d3d915c51",
74-
"age": 3
72+
"since-commit": "1378695258e645d2c65a99cc0311b8c3d982e167",
73+
"age": 2
7574
},
7675
{
77-
"message": "Make Rpc V2 CBOR a compatible protocol for `awsQuery` using `awsQueryCompatible` trait\n",
76+
"message": "Event streams now allocate a right-sized buffer avoiding repeated reallocations during serialization\n",
7877
"meta": {
7978
"bug": false,
8079
"breaking": false,
8180
"tada": false
8281
},
83-
"author": "ysaito1001",
82+
"author": "rcoh",
8483
"references": [
85-
"smithy-rs#4186"
84+
"smithy-rs#4212"
8685
],
87-
"since-commit": "dd10f0602682dfabafc465dbcd9eb92d3d915c51",
88-
"age": 3
89-
},
90-
{
91-
"message": "Allows customers to configure the auth schemes and auth scheme resolver. For more information see the GitHub [discussion](https://github.com/smithy-lang/smithy-rs/discussions/4197).\n",
92-
"meta": {
93-
"bug": false,
94-
"breaking": false,
95-
"tada": false
96-
},
97-
"author": "ysaito1001",
98-
"references": [
99-
"smithy-rs#4076",
100-
"smithy-rs#4198"
101-
],
102-
"since-commit": "ccf374dddc0690ef8aca1ed006b9e9b21299558e",
86+
"since-commit": "a23d116a79e8920c2efa813a8f831541a9943e4f",
10387
"age": 1
10488
}
10589
],

0 commit comments

Comments
 (0)