Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
123 changes: 53 additions & 70 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,18 +34,15 @@ jobs:
fail-fast: false
matrix:
include:
- xcode: "Xcode_16.0"
- xcode: "Xcode_26.0.1"
runsOn: macOS-26
name: "macOS 26, Xcode 26.0, Swift 6.2.0"
- xcode: "Xcode_16.1"
runsOn: macOS-14
name: "macOS 14, Xcode 16.0, Swift 6.0"
name: "macOS 14, Xcode 16.1, Swift 6.0.2"
- xcode: "Xcode_15.4"
runsOn: macOS-14
name: "macOS 14, Xcode 15.4, Swift 5.10"
- xcode: "Xcode_15.0"
runsOn: macos-13
name: "macOS 13, Xcode 15.0, Swift 5.9.0"
- xcode: "Xcode_14.3.1"
runsOn: macos-13
name: "macOS 13, Xcode 14.3.1, Swift 5.8.0"
steps:
- uses: actions/checkout@v3
- name: ${{ matrix.name }}
Expand All @@ -67,26 +64,18 @@ jobs:
fail-fast: false
matrix:
include:
- destination: "OS=26.0.1,name=iPhone 17 Pro"
xcode: "Xcode_26.0.1"
runsOn: macOS-26
name: "OS=26.0, Xcode 26.0, Swift 6.2.0"
- destination: "OS=18.1,name=iPhone 16 Pro"
name: "iOS 18.1"
xcode: "Xcode_16.1"
runsOn: macOS-14
- destination: "OS=18.0,name=iPhone 16 Pro"
name: "iOS 18.0"
xcode: "Xcode_16.0"
runsOn: macOS-14
- destination: "OS=17.5,name=iPhone 15 Pro"
name: "iOS 17.5"
xcode: "Xcode_15.4"
runsOn: macOS-14
- destination: "OS=17.0.1,name=iPhone 14 Pro"
name: "iOS 17.0.1"
xcode: "Xcode_15.0"
runsOn: macos-13
- destination: "OS=16.4,name=iPhone 14 Pro"
name: "iOS 16.4"
xcode: "Xcode_14.3.1"
runsOn: macos-13
- destination: "OS=17.4,name=iPhone 15 Pro"
name: "iOS 17.4"
xcode: "Xcode_15.3"
runsOn: macos-14
steps:
- uses: actions/checkout@v3
- name: ${{ matrix.name }}
Expand All @@ -108,26 +97,18 @@ jobs:
fail-fast: false
matrix:
include:
- destination: "OS=26.0,name=Apple TV"
xcode: "Xcode_26.0.1"
runsOn: macOS-26
name: "tvOS 26.0"
- destination: "OS=18.1,name=Apple TV"
name: "tvOS 18.1"
xcode: "Xcode_16.1"
runsOn: macOS-14
- destination: "OS=18.0,name=Apple TV"
name: "tvOS 18.0"
xcode: "Xcode_16.0"
runsOn: macOS-14
- destination: "OS=17.5,name=Apple TV"
name: "tvOS 17.5"
xcode: "Xcode_15.4"
runsOn: macOS-14
- destination: "OS=17.0,name=Apple TV"
name: "tvOS 17.0"
xcode: "Xcode_15.0"
runsOn: macos-13
- destination: "OS=16.4,name=Apple TV"
name: "tvOS 16.4"
xcode: "Xcode_14.3.1"
runsOn: macos-13
- destination: "OS=17.4,name=Apple TV"
name: "tvOS 17.4"
xcode: "Xcode_15.3"
runsOn: macos-14
steps:
- uses: actions/checkout@v3
- name: ${{ matrix.name }}
Expand All @@ -149,26 +130,22 @@ jobs:
fail-fast: false
matrix:
include:
- destination: "OS=26.0,name=Apple Watch Ultra 3 (49mm)"
xcode: "Xcode_26.0.1"
runsOn: macOS-26
name: "watchOS 26.0"
- destination: "OS=11.1,name=Apple Watch Series 10 (46mm)"
name: "watchOS 11.1"
xcode: "Xcode_16.1"
runsOn: macOS-14
- destination: "OS=11.0,name=Apple Watch Series 10 (46mm)"
name: "watchOS 11.0"
xcode: "Xcode_16.0"
runsOn: macOS-14
- destination: "OS=10.5,name=Apple Watch Series 9 (45mm)"
name: "watchOS 10.5"
xcode: "Xcode_15.4"
xcode: "Xcode_15.3"
runsOn: macOS-14
- destination: "OS=10.0,name=Apple Watch Series 9 (45mm)"
name: "watchOS 10.0"
xcode: "Xcode_15.0"
runsOn: macos-13
- destination: "OS=9.4,name=Apple Watch Series 8 (45mm)"
name: "watchOS 9.4"
xcode: "Xcode_14.3.1"
runsOn: macos-13
- destination: "OS=10.4,name=Apple Watch Series 9 (45mm)"
name: "watchOS 10.4"
xcode: "Xcode_15.3"
runsOn: macos-14
steps:
- uses: actions/checkout@v3
- name: ${{ matrix.name }}
Expand All @@ -190,48 +167,54 @@ jobs:
fail-fast: false
matrix:
include:
- destination: "macOS 26, SPM 6.2.0 Test"
xcode: "Xcode_26.0.1"
runsOn: macOS-26
- destination: "macOS 15, SPM 6.0.2 Test"
xcode: "Xcode_16.0"
runsOn: macOS-15
- name: "macOS 14, SPM 6.0.2 Test"
xcode: "Xcode_16.1"
runsOn: macOS-14
- name: "macOS 14, SPM 6.0.0 Test"
xcode: "Xcode_16.0"
runsOn: macOS-14
- name: "macOS 14, SPM 5.9.0 Test"
xcode: "Xcode_15.0"
- name: "macOS 14, SPM 5.10.0 Test"
xcode: "Xcode_15.3"
runsOn: macos-14
- name: "macOS 13, SPM 5.8.1 Test"
xcode: "Xcode_14.3.1"
runsOn: macos-13
steps:
- uses: actions/checkout@v3
- name: ${{ matrix.name }}
run: swift build -c release

merge-test-reports:
needs: [iOS, macOS, watchOS, tvOS]
runs-on: macos-13
runs-on: macos-15
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
path: test_output
- run: xcrun xcresulttool merge test_output/**/*.xcresult --output-path test_output/final/final.xcresult
- name: Upload Merged Artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: MergedResult
path: test_output/final

discover-typos:
name: Discover Typos
runs-on: macOS-13
runs-on: macos-15
env:
DEVELOPER_DIR: /Applications/Xcode_14.1.app/Contents/Developer
DEVELOPER_DIR: /Applications/Xcode_16.4.app/Contents/Developer
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5

- name: Set up Python environment
run: |
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install codespell

- name: Discover typos
run: |
export PATH="$PATH:/Library/Frameworks/Python.framework/Versions/3.11/bin"
python3 -m pip install --upgrade pip
python3 -m pip install codespell
source .venv/bin/activate
codespell --ignore-words-list="hart,inout,msdos,sur" --skip="./.build/*,./.git/*"
6 changes: 3 additions & 3 deletions .swiftlint.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
excluded:
- Tests
- Package.swift
- Package@swift-5.7.swift
- Package@swift-5.8.swift
- Package@swift-5.9.swift
- Package@swift-5.10.swift
- Package@swift-6.0.swift
- Package@swift-6.1.swift
- Package@swift-6.2.swift
- .build

# Rules
Expand Down
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,17 @@
All notable changes to this project will be documented in this file.

#### 1.x Releases
- `1.3.x` Releases - [1.3.0](#130)
- `1.2.x` Releases - [1.2.0](#120) | [1.2.1](#121)
- `1.1.x` Releases - [1.1.0](#110) | [1.1.1](#111)
- `1.0.x` Releases - [1.0.0](#100)

## [1.3.0](https://github.com/space-code/typhoon/releases/tag/1.2.1)

#### Added
- Add support for Swift 6.2
- Added in Pull Request [#21](https://github.com/space-code/typhoon/pull/21)

## [1.2.1](https://github.com/space-code/typhoon/releases/tag/1.2.1)

#### Added
Expand Down
4 changes: 2 additions & 2 deletions Mintfile
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
nicklockwood/SwiftFormat@0.52.7
realm/SwiftLint@0.53.0
nicklockwood/SwiftFormat@0.58.6
realm/SwiftLint@0.62.2
2 changes: 1 addition & 1 deletion Package.swift
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version: 6.0
// swift-tools-version: 6.2
// The swift-tools-version declares the minimum version of Swift required to build this package.

import PackageDescription
Expand Down
22 changes: 0 additions & 22 deletions Package@swift-5.8.swift

This file was deleted.

2 changes: 1 addition & 1 deletion Package@swift-5.9.swift → Package@swift-6.0.swift
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version: 5.9
// swift-tools-version: 6.0
// The swift-tools-version declares the minimum version of Swift required to build this package.

import PackageDescription
Expand Down
3 changes: 2 additions & 1 deletion Package@swift-5.7.swift → Package@swift-6.1.swift
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version: 5.7
// swift-tools-version: 6.1
// The swift-tools-version declares the minimum version of Swift required to build this package.

import PackageDescription
Expand All @@ -10,6 +10,7 @@ let package = Package(
.macOS(.v10_15),
.tvOS(.v13),
.watchOS(.v6),
.visionOS(.v1),
],
products: [
.library(name: "Typhoon", targets: ["Typhoon"]),
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,8 @@ do {
## Requirements

- iOS 13.0+ / macOS 10.15+ / tvOS 13.0+ / watchOS 6.0+ / visionOS 1.0+
- Xcode 14.0
- Swift 5.7
- Xcode 15.3
- Swift 5.10

## Installation
### Swift Package Manager
Expand All @@ -68,7 +68,7 @@ Once you have your Swift package set up, adding `typhoon` as a dependency is as

```swift
dependencies: [
.package(url: "https://github.com/space-code/typhoon.git", .upToNextMajor(from: "1.0.0"))
.package(url: "https://github.com/space-code/typhoon.git", .upToNextMajor(from: "1.3.0"))
]
```

Expand Down