Skip to content

Commit

Permalink
Bulk updates
Browse files Browse the repository at this point in the history
- Updated project to support Xcode 15
- Dropped support for Swift versions earlier than 5
- Cleaned up scripts and split 'workflowtests.sh' into individual scripts for easier modular testing in development
- Removed Codacy support
- Updated workflows to use latest macOS image and Xcode 15
- Resolved SwiftLint issues
- Restructured project to pull in 'Half' via submodules
  • Loading branch information
SomeRandomiOSDev committed Nov 14, 2023
1 parent e12b478 commit 684bfdc
Show file tree
Hide file tree
Showing 56 changed files with 1,225 additions and 781 deletions.
18 changes: 15 additions & 3 deletions .github/workflows/carthage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,26 @@ on:

jobs:
build:
strategy:
matrix:
os: [macOS-13]
xcode: ['15.0']

name: Build
runs-on: macOS-11
runs-on: ${{ matrix.os }}
env:
LOGSDIR: /tmp/.cborcoding.carthage/Logs

steps:
- name: Select Xcode Version
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ matrix.xcode }}

- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive

- name: Setup Environment
run: |
Expand All @@ -56,7 +68,7 @@ jobs:
./scripts/carthage.sh update --log-path "$LOGSDIR/Build.log"
- name: Upload Logs
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
if: always()
with:
name: BuildLog
Expand Down
16 changes: 13 additions & 3 deletions .github/workflows/cocoapods.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,16 +26,26 @@ jobs:
strategy:
matrix:
linttype: [Dynamic, Static]
os: [macOS-13]
xcode: ['15.0']


name: Lint
runs-on: macOS-11
runs-on: ${{ matrix.os }}
env:
LOGSDIR: /tmp/.cborcoding.cocoapods/Logs/${{ matrix.linttype }}
LINT_TYPE: ${{ matrix.linttype }}

steps:
- name: Select Xcode Version
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ matrix.xcode }}

- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive

- name: Setup Cocoapods
uses: maxim-lobanov/setup-cocoapods@v1
Expand All @@ -55,7 +65,7 @@ jobs:
fi
- name: Upload Logs
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
if: always()
with:
name: ${{ matrix.linttype }}Logs
Expand Down
18 changes: 15 additions & 3 deletions .github/workflows/documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,26 @@ on:

jobs:
build:
strategy:
matrix:
os: [macOS-13]
xcode: ['15.0']

name: Build Documentation
runs-on: macOS-11
runs-on: ${{ matrix.os }}
env:
LOGSDIR: /tmp/.cborcoding.documentation/Logs

steps:
- name: Select Xcode Version
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ matrix.xcode }}

- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive

- name: Setup Environment
run: |
Expand All @@ -34,7 +46,7 @@ jobs:
xcodebuild docbuild -project "CBORCoding.xcodeproj" -scheme "CBORCoding" -destination "generic/platform=iOS" SKIP_SWIFTLINT=YES 2>&1 | tee "$LOGSDIR/build.log"
- name: Upload Logs
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
if: always()
with:
name: Logs
Expand Down
18 changes: 15 additions & 3 deletions .github/workflows/publish-cocoapods.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,27 @@ on:

jobs:
publish:
strategy:
matrix:
os: [macOS-13]
xcode: ['15.0']

name: Publish CocoaPods
runs-on: macOS-11
runs-on: ${{ matrix.os }}
env:
LOGSDIR: /tmp/.cborcoding.cocoapods/Logs
COCOAPODS_TRUNK_TOKEN: ${{ secrets.COCOAPODS_TRUNK_TOKEN }}

steps:
- name: Select Xcode Version
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ matrix.xcode }}

- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive

- name: Setup CocoaPods
uses: maxim-lobanov/setup-cocoapods@v1
Expand All @@ -32,7 +44,7 @@ jobs:
pod trunk push CBORCoding.podspec --verbose 2>&1 | tee "$LOGSDIR/CocoaPods.log"
- name: Upload Logs
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
if: always()
with:
name: Logs
Expand Down
30 changes: 24 additions & 6 deletions .github/workflows/swift-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,16 +24,25 @@ jobs:
build:
strategy:
matrix:
os: [macOS-11, ubuntu-latest]
os: [macOS-13, ubuntu-latest]
xcode: ['15.0']

name: Build
runs-on: ${{ matrix.os }}
env:
LOGSDIR: /tmp/.cborcoding.swiftpm/Logs/Build

steps:
- name: Select Xcode Version
if: ${{ runner.os == 'macOS' }}
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ matrix.xcode }}

- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive

- name: Setup Environment
run: |
Expand All @@ -45,7 +54,7 @@ jobs:
swift build --verbose | tee -a "$LOGSDIR/Build.log"
- name: Upload Logs
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
if: always()
with:
name: BuildLogs-${{ runner.os }}
Expand All @@ -54,7 +63,8 @@ jobs:
test:
strategy:
matrix:
os: [macOS-11, ubuntu-latest]
os: [macOS-13, ubuntu-latest]
xcode: ['15.0']

name: Test
runs-on: ${{ matrix.os }}
Expand All @@ -63,8 +73,16 @@ jobs:
LOGSDIR: /tmp/.cborcoding.swiftpm/Logs/Test

steps:
- name: Select Xcode Version
if: ${{ runner.os == 'macOS' }}
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ matrix.xcode }}

- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive

- name: Setup Environment
run: |
Expand All @@ -88,7 +106,7 @@ jobs:
verbose: true

- name: Upload Logs
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
if: always()
with:
name: TestLogs-${{ runner.os }}
Expand Down
16 changes: 14 additions & 2 deletions .github/workflows/swiftlint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,24 @@ on:

jobs:
build:
strategy:
matrix:
os: [macOS-13]
xcode: ['15.0']

name: Run SwiftLint
runs-on: macOS-11
runs-on: ${{ matrix.os }}

steps:
- name: Select Xcode Version
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ matrix.xcode }}

- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive

- name: Run SwiftLint
run: |
Expand Down
36 changes: 30 additions & 6 deletions .github/workflows/upload-assets.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,26 @@ on:

jobs:
xcframework:
strategy:
matrix:
os: [macOS-13]
xcode: ['15.0']

name: Upload XCFramework Assets
runs-on: macOS-11
runs-on: ${{ matrix.os }}
env:
TMPDIR: /tmp/.cborcoding.assets-xcframework.build

steps:
- name: Select Xcode Version
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ matrix.xcode }}

- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive

- name: Setup Environment
run: |
Expand Down Expand Up @@ -57,7 +69,7 @@ jobs:
asset_content_type: application/gzip

- name: Upload Logs
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
if: always()
with:
name: XCFrameworkLogs
Expand All @@ -66,14 +78,26 @@ jobs:


documentation:
strategy:
matrix:
os: [macOS-13]
xcode: ['15.0']

name: Upload Documentation Assets
runs-on: macOS-11
runs-on: ${{ matrix.os }}
env:
TMPDIR: /tmp/.cborcoding.assets-documentation.build

steps:
- name: Select Xcode Version
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ matrix.xcode }}

- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive

- name: Setup Environment
run: |
Expand Down Expand Up @@ -118,7 +142,7 @@ jobs:
asset_content_type: application/gzip

- name: Upload Logs
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
if: always()
with:
name: DocumentationLogs
Expand Down
18 changes: 15 additions & 3 deletions .github/workflows/xcframework.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,26 @@ on:

jobs:
build:
strategy:
matrix:
os: [macOS-13]
xcode: ['15.0']

name: Build
runs-on: macOS-11
runs-on: ${{ matrix.os }}
env:
TMPDIR: /tmp/.cborcoding.xcframework.build

steps:
- name: Select Xcode Version
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ matrix.xcode }}

- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive

- name: Setup Environment
run: |
Expand All @@ -44,7 +56,7 @@ jobs:
./scripts/xcframework.sh --build-dir "${TMPDIR}" -- RUN_DOCUMENTATION_COMPILER=NO SKIP_SWIFTLINT=YES
- name: Upload Logs
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
if: always()
with:
name: BuildLogs
Expand Down
Loading

0 comments on commit 684bfdc

Please sign in to comment.