Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
05949b0
Update API model
aws-sdk-swift-automation Oct 13, 2025
89b1285
chore: Updates version to 1.5.62
aws-sdk-swift-automation Oct 13, 2025
d5c8484
Update API model
aws-sdk-swift-automation Oct 14, 2025
6b63e24
chore: Updates version to 1.5.63
aws-sdk-swift-automation Oct 14, 2025
38fc5f6
Update API model
aws-sdk-swift-automation Oct 15, 2025
1f0478f
Update endpoints model
aws-sdk-swift-automation Oct 15, 2025
5c77e27
chore: Updates version to 1.5.64
aws-sdk-swift-automation Oct 15, 2025
2f574a8
Update API model
aws-sdk-swift-automation Oct 16, 2025
8682777
chore: Updates version to 1.5.65
aws-sdk-swift-automation Oct 16, 2025
37e21ce
Update API model
aws-sdk-swift-automation Oct 17, 2025
db6427f
Update endpoints model
aws-sdk-swift-automation Oct 17, 2025
37f1ef1
chore: Updates version to 1.5.66
aws-sdk-swift-automation Oct 17, 2025
5e4bfa2
Update API model
aws-sdk-swift-automation Oct 21, 2025
69627c5
chore: Updates version to 1.5.67
aws-sdk-swift-automation Oct 21, 2025
902237d
Update API model
aws-sdk-swift-automation Oct 22, 2025
b6d1f84
Update endpoints model
aws-sdk-swift-automation Oct 22, 2025
e960aa6
chore: Updates version to 1.5.68
aws-sdk-swift-automation Oct 22, 2025
215e91c
Update API model
aws-sdk-swift-automation Oct 23, 2025
1adf37b
Update endpoints model
aws-sdk-swift-automation Oct 23, 2025
f4c71b1
Update partitions file
aws-sdk-swift-automation Oct 23, 2025
9321b0a
chore: Updates version to 1.5.69
aws-sdk-swift-automation Oct 23, 2025
1871722
fix: Commit new doc index to releases (#2034)
jbelkins Oct 23, 2025
49d4e46
chore: Update Smithy to 1.63.0 (#2035)
jbelkins Oct 23, 2025
5fe86cb
chore: Run Ubuntu focal and noble in CI (#2033)
jbelkins Oct 23, 2025
19ae9fe
Update API model
aws-sdk-swift-automation Oct 24, 2025
faee576
Update endpoints model
aws-sdk-swift-automation Oct 24, 2025
d471dd8
chore: Updates version to 1.5.70
aws-sdk-swift-automation Oct 24, 2025
dfbb06b
chore: Create AWSSDKDynamic target with generated runtime code (#2032)
jbelkins Oct 24, 2025
f062f84
Update API model
aws-sdk-swift-automation Oct 27, 2025
aed7103
chore: Updates version to 1.5.71
aws-sdk-swift-automation Oct 27, 2025
2ca449d
chore: Use iOS 26.0.1 simulator for CI (#2037)
jbelkins Oct 27, 2025
8aa2313
chore: Increased randomization in integration test bucket names (#2038)
jbelkins Oct 28, 2025
223be67
feat!: Remove 7 withdrawn AWS services (#2036)
jbelkins Oct 28, 2025
63f403f
Update API model
aws-sdk-swift-automation Oct 28, 2025
f1079a5
Update endpoints model
aws-sdk-swift-automation Oct 28, 2025
e6a35c4
chore: Updates version to 1.5.72
aws-sdk-swift-automation Oct 28, 2025
f03656d
chore: Use AWSSDKDynamic for version, partitions (#2039)
jbelkins Oct 29, 2025
17610ca
fix: Restore the old Partitions.swift file (#2040)
jbelkins Oct 29, 2025
8847bfe
Update API model
aws-sdk-swift-automation Oct 29, 2025
e613b75
chore: Updates version to 1.5.73
aws-sdk-swift-automation Oct 29, 2025
7cfcc98
chore: Clean up AWSSDKPartitions-related files (#2042)
jbelkins Oct 30, 2025
742e038
chore: Fix warnings on integration tests (#2041)
jbelkins Oct 30, 2025
a375553
Update API model
aws-sdk-swift-automation Oct 30, 2025
e34b35d
Update endpoints model
aws-sdk-swift-automation Oct 30, 2025
1a3dcff
chore: Updates version to 1.5.74
aws-sdk-swift-automation Oct 30, 2025
7b481fa
fix: Use full UUIDs for random identifiers in integration tests (#2043)
jbelkins Oct 31, 2025
ac8ff1e
Revert "fix: Use full UUIDs for random identifiers in integration tes…
jbelkins Oct 31, 2025
fcbf11a
Update API model
aws-sdk-swift-automation Oct 31, 2025
be02370
Update endpoints model
aws-sdk-swift-automation Oct 31, 2025
c1eef62
chore: Updates version to 1.5.75
aws-sdk-swift-automation Oct 31, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
22 changes: 11 additions & 11 deletions .github/workflows/continuous-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
- Xcode_26.0
destination:
- 'platform=iOS Simulator,OS=17.2,name=iPhone 15'
- 'platform=iOS Simulator,OS=26.0,name=iPhone 17'
- 'platform=iOS Simulator,OS=26.0.1,name=iPhone 17'
- 'platform=tvOS Simulator,OS=17.2,name=Apple TV 4K (3rd generation) (at 1080p)'
- 'platform=tvOS Simulator,OS=26.0,name=Apple TV 4K (3rd generation) (at 1080p)'
- 'platform=visionOS Simulator,OS=1.0,name=Apple Vision Pro'
Expand All @@ -48,7 +48,7 @@ jobs:
# Don't run new simulators with old Xcode
- destination: 'platform=tvOS Simulator,OS=26.0,name=Apple TV 4K (3rd generation) (at 1080p)'
xcode: Xcode_15.2
- destination: 'platform=iOS Simulator,OS=26.0,name=iPhone 17'
- destination: 'platform=iOS Simulator,OS=26.0.1,name=iPhone 17'
xcode: Xcode_15.2
- destination: 'platform=visionOS Simulator,OS=26.0,name=Apple Vision Pro'
xcode: Xcode_15.2
Expand Down Expand Up @@ -91,6 +91,8 @@ jobs:
java-version: 17
- name: Tools Versions
run: ./aws-sdk-swift/scripts/ci_steps/log_tool_versions.sh
- name: List all sims installed
run: xcrun simctl list
- name: Run CLI Unit Tests
if: ${{ matrix.destination == 'platform=macOS' }}
run: |
Expand Down Expand Up @@ -123,18 +125,16 @@ jobs:
linux:
if: github.repository == 'awslabs/aws-sdk-swift' || github.event_name == 'pull_request'
runs-on: ${{ matrix.runner }}
container: swift:${{ matrix.version }}-${{ matrix.os }}
container: swift:${{ matrix.swift }}
strategy:
fail-fast: false
matrix:
runner:
- ubuntu-24.04
- ubuntu-24.04-arm
os:
- jammy
version:
- "5.9"
- "6.2"
swift:
- "5.9-jammy"
- "6.2-noble"
env:
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
steps:
Expand Down Expand Up @@ -163,10 +163,10 @@ jobs:
path: |
~/Library/Caches/org.swift.swiftpm
~/.cache/org.swift.swiftpm
key: 1-${{ runner.os }}-swift-${{ matrix.version }}-spm-${{ hashFiles('Package.swift', 'AWSSDKSwiftCLI/Package.swift') }}
key: 1-${{ runner.os }}-swift-${{ matrix.swift }}-spm-${{ hashFiles('Package.swift', 'AWSSDKSwiftCLI/Package.swift') }}
restore-keys: |
1-${{ runner.os }}-swift-${{ matrix.version }}-spm-${{ hashFiles('Package.swift', 'AWSSDKSwiftCLI/Package.swift') }}
1-${{ runner.os }}-swift-${{ matrix.version }}-spm-
1-${{ runner.os }}-swift-${{ matrix.swift }}-spm-${{ hashFiles('Package.swift', 'AWSSDKSwiftCLI/Package.swift') }}
1-${{ runner.os }}-swift-${{ matrix.swift }}-spm-
- name: Setup Java
uses: actions/setup-java@v4
with:
Expand Down
22 changes: 11 additions & 11 deletions .github/workflows/integration-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
- Xcode_26.0
destination:
- 'platform=iOS Simulator,OS=17.2,name=iPhone 15'
- 'platform=iOS Simulator,OS=26.0,name=iPhone 17'
- 'platform=iOS Simulator,OS=26.0.1,name=iPhone 17'
- 'platform=tvOS Simulator,OS=17.2,name=Apple TV 4K (3rd generation) (at 1080p)'
- 'platform=tvOS Simulator,OS=26.0,name=Apple TV 4K (3rd generation) (at 1080p)'
- 'platform=visionOS Simulator,OS=1.0,name=Apple Vision Pro'
Expand All @@ -53,7 +53,7 @@ jobs:
# Don't run new simulators with old Xcode
- destination: 'platform=tvOS Simulator,OS=26.0,name=Apple TV 4K (3rd generation) (at 1080p)'
xcode: Xcode_15.2
- destination: 'platform=iOS Simulator,OS=26.0,name=iPhone 17'
- destination: 'platform=iOS Simulator,OS=26.0.1,name=iPhone 17'
xcode: Xcode_15.2
- destination: 'platform=visionOS Simulator,OS=26.0,name=Apple Vision Pro'
xcode: Xcode_15.2
Expand Down Expand Up @@ -101,6 +101,8 @@ jobs:
java-version: 17
- name: Tools Versions
run: ./aws-sdk-swift/scripts/ci_steps/log_tool_versions.sh
- name: List all sims installed
run: xcrun simctl list
- name: Add Credentials to Test Plan
run: |
cd aws-sdk-swift
Expand Down Expand Up @@ -132,18 +134,16 @@ jobs:
# Details on why AL2 isn't included: https://github.com/awslabs/aws-sdk-swift/pull/1833
if: github.repository == 'awslabs/aws-sdk-swift' || github.event_name == 'pull_request'
runs-on: ${{ matrix.runner }}
container: swift:${{ matrix.version }}-${{ matrix.os }}
container: swift:${{ matrix.swift }}
strategy:
fail-fast: false
matrix:
runner:
- ubuntu-24.04
- ubuntu-24.04-arm
os:
- jammy
version:
- "5.9"
- "6.2"
swift:
- "5.9-jammy"
- "6.2-noble"
env:
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
steps:
Expand Down Expand Up @@ -179,10 +179,10 @@ jobs:
path: |
~/Library/Caches/org.swift.swiftpm
~/.cache/org.swift.swiftpm
key: 1-${{ runner.os }}-swift-${{ matrix.version }}-spm-${{ hashFiles('Package.swift', 'AWSSDKSwiftCLI/Package.swift') }}
key: 1-${{ runner.os }}-swift-${{ matrix.swift }}-spm-${{ hashFiles('Package.swift', 'AWSSDKSwiftCLI/Package.swift') }}
restore-keys: |
1-${{ runner.os }}-swift-${{ matrix.version }}-spm-${{ hashFiles('Package.swift', 'AWSSDKSwiftCLI/Package.swift') }}
1-${{ runner.os }}-swift-${{ matrix.version }}-spm-
1-${{ runner.os }}-swift-${{ matrix.swift }}-spm-${{ hashFiles('Package.swift', 'AWSSDKSwiftCLI/Package.swift') }}
1-${{ runner.os }}-swift-${{ matrix.swift }}-spm-
- name: Setup Java
uses: actions/setup-java@v4
with:
Expand Down
3 changes: 2 additions & 1 deletion AWSSDKSwiftCLI/Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,8 @@ let package = Package(
),
.testTarget(
name: "AWSSDKSwiftCLITests",
dependencies: ["AWSSDKSwiftCLI"]
dependencies: ["AWSSDKSwiftCLI"],
resources: [.process("Resources")]
)
]
)
1 change: 1 addition & 0 deletions AWSSDKSwiftCLI/Sources/AWSCLIUtils/FileManager+Utils.swift
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ public extension FileManager {
.sorted()
.filter { $0 != "AWSSDKForSwift" } // Ignore documentation module
.filter { $0 != "SDKForSwift" } // Ignore new documentation module
.filter { $0 != "AWSSDKDynamic" } // Internal module, do not document
.filter { !$0.hasPrefix(".") }
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@ struct AWSSDKSwiftCLI: ParsableCommand {
PrepareReleaseCommand.self,
SyncClientRuntimeVersionCommand.self,
GenerateDocIndexCommand.self,
GenerateSmokeTestsPackageManifestCommand.self
GenerateSmokeTestsPackageManifestCommand.self,
GeneratePartitionsCommand.self,
GeneratePackageVersionCommand.self,
]
)
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
//
// Copyright Amazon.com Inc. or its affiliates.
// All Rights Reserved.
//
// SPDX-License-Identifier: Apache-2.0
//

import ArgumentParser
import Foundation
import AWSCLIUtils

struct GeneratePackageVersionCommand: ParsableCommand {

static var configuration = CommandConfiguration(
commandName: "generate-package-version",
abstract: "Generates the PackageVersion.swift file for the AWSSDKDynamic target."
)

@Argument(help: "The path to the aws-sdk-swift repository")
var repoPath: String

func run() throws {
try PackageVersionBuilder(
repoPath: repoPath
).generatePackageVersionFile()
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
//
// Copyright Amazon.com Inc. or its affiliates.
// All Rights Reserved.
//
// SPDX-License-Identifier: Apache-2.0
//

import ArgumentParser
import Foundation
import AWSCLIUtils

struct GeneratePartitionsCommand: ParsableCommand {

static var configuration = CommandConfiguration(
commandName: "generate-partitions",
abstract: "Generates the Partitions.swift file for the AWSSDKDynamic target."
)

@Argument(help: "The path to the aws-sdk-swift repository")
var repoPath: String

func run() throws {
try PartitionsBuilder(
repoPath: repoPath
).generatePartitionsFile()
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -208,8 +208,10 @@ struct PrepareRelease {
"packageDependencies.plist",
"Sources/Services",
"Sources/Core/AWSSDKForSwift/Documentation.docc/AWSSDKForSwift.md",
"Sources/Core/AWSSDKPartitions/Sources/AWSSDKPartitions/Partitions.swift",
"Sources/Core/SDKForSwift/Documentation.docc/SDKForSwift.md",
"Sources/Core/AWSSDKIdentity/",
"Sources/Core/AWSSDKDynamic/Sources/AWSSDKDynamic/PackageVersion.swift",
"Sources/Core/AWSSDKDynamic/Sources/AWSSDKDynamic/Partitions.swift",
]
case .smithySwift:
files = ["Package.version", "Package.version.next"]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
//
// Copyright Amazon.com Inc. or its affiliates.
// All Rights Reserved.
//
// SPDX-License-Identifier: Apache-2.0
//

import Foundation
import struct AWSCLIUtils.Error
import struct AWSCLIUtils.Version

struct PackageVersionBuilder {
let packageVersionFileURL: URL
let packageVersionSwiftFileURL: URL

// MARK: - init

init(repoPath: String) {
let repoFileURL = URL(fileURLWithPath: repoPath)
self.init(
packageVersionFileURL: repoFileURL.appendingPathComponent("Package.version.next"),
packageVersionSwiftFileURL: repoFileURL.appendingPathComponent(
"Sources/Core/AWSSDKDynamic/Sources/AWSSDKDynamic/PackageVersion.swift"
)
)
}

init(
packageVersionFileURL: URL,
packageVersionSwiftFileURL: URL
) {
self.packageVersionFileURL = packageVersionFileURL
self.packageVersionSwiftFileURL = packageVersionSwiftFileURL
}

// MARK: - Code generation

func generatePackageVersionFile() throws {
let currentVersionData = try Data(contentsOf: packageVersionFileURL)
guard let packageVersion = String(data: currentVersionData, encoding: .utf8) else {
throw Error("Package.version.next does not contain UTF-8 data.")
}
_ = try Version(packageVersion) // throws if currentVersion is not a valid version string
let packageVersionFileContents = """
//
// Copyright Amazon.com Inc. or its affiliates.
// All Rights Reserved.
//
// SPDX-License-Identifier: Apache-2.0
//

// Code is auto-generated. DO NOT EDIT!

public let packageVersion = "\(packageVersion.trimmingCharacters(in: .whitespacesAndNewlines))"

"""
try FileManager.default.createDirectory(
at: packageVersionSwiftFileURL.deletingLastPathComponent(),
withIntermediateDirectories: true
)
try Data(packageVersionFileContents.utf8).write(to: packageVersionSwiftFileURL)
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
//
// Copyright Amazon.com Inc. or its affiliates.
// All Rights Reserved.
//
// SPDX-License-Identifier: Apache-2.0
//

import Foundation
import struct AWSCLIUtils.Error

struct PartitionsBuilder {
let partitionsFileURL: URL
let partitionsSwiftFileURL: URL

// MARK: - init

init(repoPath: String) {
let repoFileURL = URL(fileURLWithPath: repoPath)
self.init(
partitionsFileURL: repoFileURL.appendingPathComponent("codegen/sdk-codegen/sdk-partitions.json"),
partitionsSwiftFileURL: repoFileURL.appendingPathComponent(
"Sources/Core/AWSSDKDynamic/Sources/AWSSDKDynamic/Partitions.swift"
)
)
}

init(
partitionsFileURL: URL,
partitionsSwiftFileURL: URL
) {
self.partitionsFileURL = partitionsFileURL
self.partitionsSwiftFileURL = partitionsSwiftFileURL
}

// MARK: - Code generation

func generatePartitionsFile() throws {
let partitionsData = try Data(contentsOf: partitionsFileURL)
guard let partitions = String(data: partitionsData, encoding: .utf8) else {
throw Error("sdk-partitions.json does not contain UTF-8 data.")
}
_ = try JSONSerialization.jsonObject(with: partitionsData) // verifies partitions are valid JSON
let partitionsSwiftFileContents = """
//
// Copyright Amazon.com Inc. or its affiliates.
// All Rights Reserved.
//
// SPDX-License-Identifier: Apache-2.0
//

// Code is auto-generated. DO NOT EDIT!

public let partitions = #\"\"\"
\(partitions.trimmingCharacters(in: .whitespacesAndNewlines))
\"\"\"#

"""
try FileManager.default.createDirectory(
at: partitionsSwiftFileURL.deletingLastPathComponent(),
withIntermediateDirectories: true
)
try Data(partitionsSwiftFileContents.utf8).write(to: partitionsSwiftFileURL)
}
}
10 changes: 5 additions & 5 deletions AWSSDKSwiftCLI/Sources/AWSSDKSwiftCLI/Resources/Package.Base.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ extension Target.Dependency {
static var AWSSDKIdentity: Self { "AWSSDKIdentity" }
static var AWSSDKIdentityAPI: Self { "AWSSDKIdentityAPI" }
static var AWSSDKChecksums: Self { "AWSSDKChecksums" }
static var AWSSDKPartitions: Self { "AWSSDKPartitions" }
static var AWSSDKDynamic: Self { "AWSSDKDynamic" }

// CRT module
static var CRT: Self { .product(name: "AwsCommonRuntimeKit", package: "aws-crt-swift") }
Expand Down Expand Up @@ -134,7 +134,7 @@ private var runtimeTargets: [Target] {
.AWSSDKCommon,
.AWSSDKHTTPAuth,
.AWSSDKChecksums,
.AWSSDKPartitions,
.AWSSDKDynamic,
],
path: "Sources/Core/AWSClientRuntime/Sources/AWSClientRuntime",
resources: [
Expand Down Expand Up @@ -223,11 +223,11 @@ private var runtimeTargets: [Target] {
.SmithyChecksums,
.SmithyHTTPAPI,
],
path: "Sources/Core/AWSSDKChecksums/Sources"
path: "Sources/Core/AWSSDKChecksums/Sources/AWSSDKChecksums"
),
.target(
name: "AWSSDKPartitions",
path: "Sources/Core/AWSSDKPartitions/Sources"
name: "AWSSDKDynamic",
path: "Sources/Core/AWSSDKDynamic/Sources/AWSSDKDynamic"
),
]
}
Expand Down
Loading
Loading