Skip to content

Commit fa08cf4

Browse files
committed
Merge branch 'main' into hosted-ui-logout-ignore-user-cancel
2 parents 4035dbf + 90da8ff commit fa08cf4

File tree

14 files changed

+55
-29
lines changed

14 files changed

+55
-29
lines changed

.github/workflows/build_scheme.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ jobs:
4747
id: dependencies-cache
4848
timeout-minutes: 4
4949
continue-on-error: true
50-
uses: actions/cache/restore@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
50+
uses: actions/cache/restore@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
5151
with:
5252
path: ~/Library/Developer/Xcode/DerivedData/Amplify
5353
key: amplify-packages-${{ hashFiles('Package.resolved') }}
@@ -59,7 +59,7 @@ jobs:
5959
if: steps.dependencies-cache.outputs.cache-hit
6060
timeout-minutes: 4
6161
continue-on-error: true
62-
uses: actions/cache/restore@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
62+
uses: actions/cache/restore@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
6363
with:
6464
path: ${{ github.workspace }}/Build
6565
key: Amplify-${{ inputs.platform }}-build-cache
@@ -78,7 +78,7 @@ jobs:
7878

7979
- name: Save the dependencies cache in main
8080
if: inputs.save_build_cache && steps.dependencies-cache.outputs.cache-hit != 'true' && github.ref_name == 'main'
81-
uses: actions/cache/save@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
81+
uses: actions/cache/save@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
8282
with:
8383
path: ~/Library/Developer/Xcode/DerivedData/Amplify
8484
key: ${{ steps.dependencies-cache.outputs.cache-primary-key }}
@@ -93,7 +93,7 @@ jobs:
9393
9494
- name: Save the build cache
9595
if: inputs.save_build_cache && github.ref_name == 'main'
96-
uses: actions/cache/save@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
96+
uses: actions/cache/save@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
9797
with:
9898
path: ${{ github.workspace }}/Build
9999
key: ${{ steps.build-cache.outputs.cache-primary-key }}

.github/workflows/integ_test_auth_webauthn.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ jobs:
4747
id: dependencies-cache
4848
timeout-minutes: 4
4949
continue-on-error: true
50-
uses: actions/cache/restore@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
50+
uses: actions/cache/restore@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
5151
with:
5252
path: ~/Library/Developer/Xcode/DerivedData/Amplify
5353
key: amplify-packages-${{ hashFiles('Package.resolved') }}
@@ -59,7 +59,7 @@ jobs:
5959
if: steps.dependencies-cache.outputs.cache-hit
6060
timeout-minutes: 4
6161
continue-on-error: true
62-
uses: actions/cache/restore@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
62+
uses: actions/cache/restore@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
6363
with:
6464
path: ${{ github.workspace }}/Build
6565
key: Amplify-iOS-build-cache

.github/workflows/integ_test_push_notifications.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ jobs:
7070
id: dependencies-cache
7171
timeout-minutes: 4
7272
continue-on-error: true
73-
uses: actions/cache/restore@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
73+
uses: actions/cache/restore@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
7474
with:
7575
path: ~/Library/Developer/Xcode/DerivedData/Amplify
7676
key: amplify-packages-${{ hashFiles('Package.resolved') }}
@@ -82,7 +82,7 @@ jobs:
8282
if: steps.dependencies-cache.outputs.cache-hit
8383
timeout-minutes: 4
8484
continue-on-error: true
85-
uses: actions/cache/restore@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
85+
uses: actions/cache/restore@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
8686
with:
8787
path: ${{ github.workspace }}/Build
8888
key: Amplify-${{ matrix.platform }}-build-cache

.github/workflows/nightly_repeated_unittest.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,4 +37,4 @@ jobs:
3737
scheme: ${{ matrix.scheme }}
3838
timeout-minutes: 50
3939
generate_coverage_report: false
40-
test_iterations_flags: -test-iterations 100 -run-tests-until-failure
40+
test_iterations_flags: -test-iterations 25 -run-tests-until-failure

.github/workflows/run_integration_tests.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ jobs:
7373
id: dependencies-cache
7474
timeout-minutes: 4
7575
continue-on-error: true
76-
uses: actions/cache/restore@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
76+
uses: actions/cache/restore@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
7777
with:
7878
path: ~/Library/Developer/Xcode/DerivedData/Amplify
7979
key: amplify-packages-${{ hashFiles('Package.resolved') }}
@@ -85,7 +85,7 @@ jobs:
8585
if: steps.dependencies-cache.outputs.cache-hit
8686
timeout-minutes: 4
8787
continue-on-error: true
88-
uses: actions/cache/restore@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
88+
uses: actions/cache/restore@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
8989
with:
9090
path: ${{ github.workspace }}/Build
9191
key: Amplify-${{ inputs.platform }}-build-cache

.github/workflows/run_unit_tests.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ jobs:
6161
id: dependencies-cache
6262
timeout-minutes: 4
6363
continue-on-error: true
64-
uses: actions/cache/restore@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
64+
uses: actions/cache/restore@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
6565
with:
6666
path: ~/Library/Developer/Xcode/DerivedData/Amplify
6767
key: amplify-packages-${{ hashFiles('Package.resolved') }}
@@ -73,7 +73,7 @@ jobs:
7373
if: steps.dependencies-cache.outputs.cache-hit
7474
timeout-minutes: 4
7575
continue-on-error: true
76-
uses: actions/cache/restore@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
76+
uses: actions/cache/restore@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
7777
with:
7878
path: ${{ github.workspace }}/Build
7979
key: Amplify-${{ inputs.platform }}-build-cache

AmplifyPlugins/API/Tests/APIHostApp/AWSAPIPluginFunctionalTests/AppSyncRealTimeClientTests.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ class AppSyncRealTimeClientTests: XCTestCase {
125125
}
126126

127127
func testMaxSubscriptionReached_throwMaxSubscriptionsReachedError() async throws {
128-
let numOfMaxSubscriptionCount = 100
128+
let numOfMaxSubscriptionCount = 200
129129
let maxSubsctiptionsSuccess = expectation(description: "Client can subscribe to max subscription count")
130130
maxSubsctiptionsSuccess.expectedFulfillmentCount = numOfMaxSubscriptionCount
131131

AmplifyPlugins/Core/AmplifyCredentials/AmplifyAWSServiceConfiguration.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import Amplify
1515
public class AmplifyAWSServiceConfiguration {
1616

1717
/// - Tag: AmplifyAWSServiceConfiguration.amplifyVersion
18-
public static let amplifyVersion = "2.46.0"
18+
public static let amplifyVersion = "2.47.0"
1919

2020
/// - Tag: AmplifyAWSServiceConfiguration.platformName
2121
public static let platformName = "amplify-swift"

AmplifyPlugins/Predictions/AWSPredictionsPlugin/Liveness/Service/WebSocketSession.swift

+2
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,9 @@ final class WebSocketSession {
128128
}
129129

130130
let dateFormatter = DateFormatter()
131+
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
131132
dateFormatter.dateFormat = "EEE, d MMM yyyy HH:mm:ss z"
133+
dateFormatter.timeZone = TimeZone(secondsFromGMT: 0)
132134
guard let serverDate = dateFormatter.date(from: dateString) else {
133135
Amplify.log.verbose("\(#function): Error parsing Date header in expected format")
134136
onServerDateReceived(nil)

AmplifyPlugins/Storage/Sources/AWSS3StoragePlugin/Dependency/UploadPartInput+presignURL.swift

+7-5
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
import Foundation
88
import AWSS3
99
@_spi(SmithyReadWrite) import ClientRuntime
10-
@_spi(UnknownAWSHTTPServiceError) @_spi(SmithyReadWrite) import AWSClientRuntime
10+
@_spi(UnknownAWSHTTPServiceError) @_spi(SmithyReadWrite) @_spi(AWSEndpointResolverMiddleware) import AWSClientRuntime
1111
import Smithy
1212
import SmithyHTTPAPI
1313
import SmithyRetries
@@ -60,12 +60,14 @@ extension UploadPartInput {
6060
builder.retryStrategy(SmithyRetries.DefaultRetryStrategy(options: config.retryStrategyOptions))
6161
builder.retryErrorInfoProvider(AWSClientRuntime.AWSRetryErrorInfoProvider.errorInfo(for:))
6262
builder.applySigner(ClientRuntime.SignerMiddleware<UploadPartOutput>())
63-
let endpointParams = EndpointParams(accelerate: config.accelerate ?? false, bucket: input.bucket, disableMultiRegionAccessPoints: config.disableMultiRegionAccessPoints ?? false, disableS3ExpressSessionAuth: config.disableS3ExpressSessionAuth, endpoint: config.endpoint, forcePathStyle: config.forcePathStyle ?? false, key: input.key, region: config.region, useArnRegion: config.useArnRegion, useDualStack: config.useDualStack ?? false, useFIPS: config.useFIPS ?? false, useGlobalEndpoint: config.useGlobalEndpoint ?? false)
64-
context.set(key: Smithy.AttributeKey<EndpointParams>(name: "EndpointParams"), value: endpointParams)
65-
builder.applyEndpoint(AWSClientRuntime.EndpointResolverMiddleware<UploadPartOutput, EndpointParams>(endpointResolverBlock: { [config] in try config.endpointResolver.resolve(params: $0) }, endpointParams: endpointParams))
63+
let endpointParamsBlock = { [config] (context: Smithy.Context) in
64+
EndpointParams(accelerate: config.accelerate ?? false, bucket: input.bucket, disableMultiRegionAccessPoints: config.disableMultiRegionAccessPoints ?? false, disableS3ExpressSessionAuth: config.disableS3ExpressSessionAuth, endpoint: config.endpoint, forcePathStyle: config.forcePathStyle ?? false, key: input.key, region: config.region, useArnRegion: config.useArnRegion, useDualStack: config.useDualStack ?? false, useFIPS: config.useFIPS ?? false, useGlobalEndpoint: config.useGlobalEndpoint ?? false)
65+
}
66+
context.set(key: Smithy.AttributeKey<EndpointParams>(name: "EndpointParams"), value: endpointParamsBlock(context))
67+
builder.applyEndpoint(AWSClientRuntime.AWSEndpointResolverMiddleware<UploadPartOutput, EndpointParams>(paramsBlock: endpointParamsBlock, resolverBlock: { [config] in try config.endpointResolver.resolve(params: $0) }))
6668
builder.selectAuthScheme(ClientRuntime.AuthSchemeMiddleware<UploadPartOutput>())
6769
builder.interceptors.add(AWSClientRuntime.AWSS3ErrorWith200StatusXMLMiddleware<UploadPartInput, UploadPartOutput>())
68-
builder.interceptors.add(AWSClientRuntime.FlexibleChecksumsRequestMiddleware<UploadPartInput, UploadPartOutput>(checksumAlgorithm: input.checksumAlgorithm?.rawValue))
70+
builder.interceptors.add(AWSClientRuntime.FlexibleChecksumsRequestMiddleware<UploadPartInput, UploadPartOutput>(requestChecksumRequired: false, checksumAlgorithm: input.checksumAlgorithm?.rawValue, checksumAlgoHeaderName: "x-amz-sdk-checksum-algorithm"))
6971
builder.serialize(UploadPartPresignedMiddleware())
7072
var metricsAttributes = Smithy.Attributes()
7173
metricsAttributes.set(key: ClientRuntime.OrchestratorMetricsAttributesKeys.service, value: "S3")

AmplifyPlugins/Storage/Sources/AWSS3StoragePlugin/Support/Internal/StorageMultipartUploadClient.swift

+4
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,10 @@ class DefaultStorageMultipartUploadClient: StorageMultipartUploadClient {
146146
Task {
147147
do {
148148
let partialFileURL = try result.get()
149+
defer {
150+
// Clean up the temporary file after we're done with it
151+
self.fileSystem.removeFileIfExists(fileURL: partialFileURL)
152+
}
149153

150154
let operation = AWSS3SigningOperation.uploadPart(partNumber: partNumber, uploadId: uploadId)
151155
let preSignedURL = try await serviceProxy.preSignedURLBuilder.getPreSignedURL(

CHANGELOG.md

+18
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,23 @@
11
# Changelog
22

3+
## 2.47.0 (2025-04-24)
4+
5+
### Features
6+
7+
- bumping the sdk version to 1.2.59 (#3979)
8+
9+
## 2.46.2 (2025-04-09)
10+
11+
### Bug Fixes
12+
13+
- **storage**: clean up cached files upon completion (#3967)
14+
15+
## 2.46.1 (2025-03-18)
16+
17+
### Bug Fixes
18+
19+
- **predictions**: use UTC timezone in date formatter (#3965)
20+
321
## 2.46.0 (2025-02-27)
422

523
### Features

Package.resolved

+8-8
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,17 @@
1414
"kind" : "remoteSourceControl",
1515
"location" : "https://github.com/awslabs/aws-crt-swift",
1616
"state" : {
17-
"revision" : "dd17a98750b6182edacd6e8f0c30aa289c472b22",
18-
"version" : "0.40.0"
17+
"revision" : "74d970dde8a0d6b2fe1d8374767ca9793088ce2c",
18+
"version" : "0.48.0"
1919
}
2020
},
2121
{
2222
"identity" : "aws-sdk-swift",
2323
"kind" : "remoteSourceControl",
2424
"location" : "https://github.com/awslabs/aws-sdk-swift",
2525
"state" : {
26-
"revision" : "9ad12684f6cb9c9b60e840c051a2bba604024650",
27-
"version" : "1.0.69"
26+
"revision" : "104958a898543582bb01102616bf5d61ed237352",
27+
"version" : "1.2.59"
2828
}
2929
},
3030
{
@@ -50,8 +50,8 @@
5050
"kind" : "remoteSourceControl",
5151
"location" : "https://github.com/smithy-lang/smithy-swift",
5252
"state" : {
53-
"revision" : "402f091374dcf72c1e7ed43af10e3ee7e634fad8",
54-
"version" : "0.106.0"
53+
"revision" : "755367ae4e10004f8b5a94fbfdf3f638a1f225bc",
54+
"version" : "0.125.0"
5555
}
5656
},
5757
{
@@ -68,8 +68,8 @@
6868
"kind" : "remoteSourceControl",
6969
"location" : "https://github.com/apple/swift-log.git",
7070
"state" : {
71-
"revision" : "96a2f8a0fa41e9e09af4585e2724c4e825410b91",
72-
"version" : "1.6.2"
71+
"revision" : "3d8596ed08bd13520157f0355e35caed215ffbfa",
72+
"version" : "1.6.3"
7373
}
7474
}
7575
],

Package.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ let platforms: [SupportedPlatform] = [
99
.watchOS(.v9)
1010
]
1111
let dependencies: [Package.Dependency] = [
12-
.package(url: "https://github.com/awslabs/aws-sdk-swift", exact: "1.0.69"),
12+
.package(url: "https://github.com/awslabs/aws-sdk-swift", exact: "1.2.59"),
1313
.package(url: "https://github.com/stephencelis/SQLite.swift.git", exact: "0.15.3"),
1414
.package(url: "https://github.com/mattgallagher/CwlPreconditionTesting.git", from: "2.1.0"),
1515
.package(url: "https://github.com/aws-amplify/amplify-swift-utils-notifications.git", from: "1.1.0")

0 commit comments

Comments
 (0)