Skip to content

Commit 9f3977e

Browse files
authored
Merge pull request #327 from tstump-phunware/task/xcode_15
Update project and installation methods (CocoaPods and Swift Package Manager) for Xcode 15
2 parents f856226 + f9a71ff commit 9f3977e

File tree

72 files changed

+1972
-567
lines changed

Some content is hidden

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

72 files changed

+1972
-567
lines changed

.github/workflows/ci.yaml

+13-8
Original file line numberDiff line numberDiff line change
@@ -10,34 +10,39 @@ on:
1010
branches:
1111
- master
1212

13+
14+
env:
15+
# Use Xcode 15.2 or newer to support VisionOS
16+
DEVELOPER_DIR: /Applications/Xcode_15.2.app
17+
1318
jobs:
1419
test:
1520
name: Test
16-
runs-on: macOS-latest
21+
runs-on: macos-latest
1722
strategy:
1823
matrix:
19-
platform: ['iOS Simulator,name=iPhone 8']
24+
platform: ['iOS Simulator,name=iPhone 15']
2025
steps:
2126
- uses: actions/checkout@v2
2227
- name: Test
2328
run: make test
2429
analyze:
2530
name: Analyze
26-
runs-on: macOS-latest
31+
runs-on: macos-latest
2732
steps:
2833
- uses: actions/checkout@v2
2934
- name: analyze
3035
run: make analyze
3136
cocoapods:
3237
name: CocoaPods
33-
runs-on: macOS-latest
38+
runs-on: macos-latest
3439
steps:
3540
- uses: actions/checkout@v2
3641
- name: Lint
3742
run: make cocoapods
3843
carthage:
3944
name: Carthage
40-
runs-on: macOS-latest
45+
runs-on: macos-latest
4146
steps:
4247
- uses: actions/checkout@v2
4348
- name: carthage
@@ -47,14 +52,14 @@ jobs:
4752
steps:
4853
- name: Checkout
4954
uses: actions/checkout@v2
50-
- name: Verify that PINCache can be build by SPM
55+
- name: Verify that PINCache can be built by SPM
5156
run: make spm
5257
xcode-spm-integration:
5358
name: Build iOS example project
54-
runs-on: macOS-latest
59+
runs-on: macos-latest
5560
steps:
5661
- name: Checkout
5762
uses: actions/checkout@v2
5863

5964
- name: Check Xcode's spm integration
60-
run: make example
65+
run: make example

.github/workflows/publish_release.yml

+5
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@ on:
55
release-type:
66
description: 'The type of release. Must be major, minor or patch'
77
required: true
8+
9+
env:
10+
# Use Xcode 15.2 or newer to support VisionOS
11+
DEVELOPER_DIR: /Applications/Xcode_15.2.app
12+
813
jobs:
914
create_release:
1015
runs-on: macOS-latest

Cartfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
github "pinterest/PINOperation" ~> 1.2.1
1+
github "pinterest/PINOperation" ~> 1.2.3

Cartfile.resolved

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
github "pinterest/PINOperation" "1.2"
1+
github "pinterest/PINOperation" "1.2.3"

Carthage/Checkouts/PINOperation/.github/workflows/ci.yml

+27-53
Original file line numberDiff line numberDiff line change
@@ -10,71 +10,45 @@ on:
1010
branches:
1111
- master
1212

13+
env:
14+
# Use Xcode 15.2 or newer to support VisionOS
15+
DEVELOPER_DIR: /Applications/Xcode_15.2.app
16+
1317
jobs:
14-
build:
15-
name: Build
16-
runs-on: macOS-latest
18+
test:
19+
name: Test
20+
runs-on: macos-latest
1721
strategy:
1822
matrix:
19-
platform: ['iOS Simulator,name=iPhone 8']
23+
platform: ['iOS Simulator,name=iPhone 15']
2024
steps:
2125
- uses: actions/checkout@v2
22-
- name: Analyze and Test
23-
run: |
24-
xcodebuild clean analyze test \
25-
-destination "platform=${{ matrix.platform }}" \
26-
-sdk "iphonesimulator" \
27-
-project PINOperation.xcodeproj \
28-
-scheme PINOperation \
29-
ONLY_ACTIVE_ARCH=NO \
30-
CODE_SIGNING_REQUIRED=NO \
31-
CLANG_ANALYZER_OUTPUT=plist-html \
32-
CLANG_ANALYZER_OUTPUT_DIR="$(pwd)/clang" \
33-
| xcpretty
34-
if [[ -n `find $(pwd)/clang -name "*.html"` ]] ; then rm -rf $(pwd)/clang; exit 1; fi
35-
rm -rf $(pwd)/clang
26+
- name: Test
27+
run: make test
28+
analyze:
29+
name: Analyze
30+
runs-on: macos-latest
31+
steps:
32+
- uses: actions/checkout@v2
33+
- name: analyze
34+
run: make analyze
3635
cocoapods:
3736
name: CocoaPods
38-
runs-on: macOS-latest
37+
runs-on: macos-latest
3938
steps:
4039
- uses: actions/checkout@v2
41-
- name: Lint
42-
run: pod lib lint
40+
- name: Cocoapods lint
41+
run: make cocoapods
4342
carthage:
4443
name: Carthage
45-
runs-on: macOS-latest
44+
runs-on: macos-latest
4645
steps:
4746
- uses: actions/checkout@v2
48-
- name: Build
49-
run: carthage build --no-skip-current
50-
spm:
51-
name: Swift Package Manager tests
52-
runs-on: macOS-latest
53-
steps:
54-
- uses: actions/checkout@v2
55-
- name: Test
56-
run: swift test
57-
example:
58-
name: Build Example project
59-
runs-on: macOS-latest
60-
strategy:
61-
matrix:
62-
platform: ['iOS Simulator,name=iPhone 8']
47+
- name: carthage
48+
run: make carthage
49+
swift-package-manager:
50+
runs-on: macos-latest
6351
steps:
6452
- uses: actions/checkout@v2
65-
- name: Install Pods
66-
run: cd Example && pod install
67-
- name: Build
68-
run: |
69-
cd Example && xcodebuild clean analyze \
70-
-destination "platform=${{ matrix.platform }}" \
71-
-sdk "iphonesimulator" \
72-
-workspace PINOperationExample.xcworkspace \
73-
-scheme PINOperationExample \
74-
ONLY_ACTIVE_ARCH=NO \
75-
CODE_SIGNING_REQUIRED=NO \
76-
CLANG_ANALYZER_OUTPUT=plist-html \
77-
CLANG_ANALYZER_OUTPUT_DIR="$(pwd)/clang" \
78-
| xcpretty
79-
if [[ -n `find $(pwd)/clang -name "*.html"` ]] ; then rm -rf $(pwd)/clang; exit 1; fi
80-
rm -rf $(pwd)/clang
53+
- name: Verify that PINOperation can be built by SPM
54+
run: make spm
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: Create Release
2+
on:
3+
workflow_dispatch:
4+
inputs:
5+
release-type:
6+
description: 'The type of release. Must be major, minor or patch'
7+
required: true
8+
9+
env:
10+
# Use Xcode 15.2 or newer to support VisionOS
11+
DEVELOPER_DIR: /Applications/Xcode_15.2.app
12+
13+
jobs:
14+
create_release:
15+
runs-on: macos-latest
16+
steps:
17+
- uses: actions/checkout@v2
18+
# Make sure we can lint before creating the release.
19+
- name: Cocoapods lint
20+
run: make cocoapods
21+
- name: Create Release Commit
22+
env:
23+
GITHUB_CHANGELOG_API_KEY: ${{ secrets.GITHUB_TOKEN }}
24+
OSS_PROJECT: PINOperation
25+
run: |
26+
gem install github_changelog_generator
27+
Scripts/release.sh --${{ github.event.inputs.release-type }}
28+
git push origin HEAD
29+
- name: Tag Release
30+
run: Scripts/tag-release-branch.sh
31+
- name: Publish Release
32+
uses: actions/create-release@v1
33+
env:
34+
GITHUB_CHANGELOG_API_KEY: ${{ secrets.GITHUB_TOKEN }}
35+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
36+
with:
37+
tag_name: ${{ env.RELEASE_TAG }}
38+
release_name: ${{ env.RELEASE_TAG }}
39+
body_path: RELEASE_NOTES.md
40+
draft: false
41+
- name: Push to Cocoapods
42+
env:
43+
COCOAPODS_TRUNK_TOKEN: ${{ secrets.COCOAPODS_TRUNK_TOKEN }}
44+
run: pod trunk push
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
issues=false
2-
since-tag=1.1.1
3-
future-release=1.2
2+
since-tag=1.2.1
3+
future-release=1.2.2

Carthage/Checkouts/PINOperation/CHANGELOG.md

+32
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,35 @@
1+
# Changelog
2+
3+
## [1.2.3](https://github.com/Pinterest/PINOperation/tree/1.2.3) (TBD)
4+
5+
[Full Changelog](https://github.com/Pinterest/PINOperation/compare/1.2.2...1.2.3)
6+
7+
8+
- Update project to build and run using Xcode 15
9+
- Update CocoaPods Podspec to include Privacy Manifest file
10+
- Bump minimum deployment targets to iOS 12, tvOS 12, watchOS 4, and macOS 10.13
11+
12+
## [1.2.2](https://github.com/Pinterest/PINOperation/tree/1.2.2) (2022-11-28)
13+
14+
[Full Changelog](https://github.com/Pinterest/PINOperation/compare/1.2.1...1.2.2)
15+
16+
17+
- Update CI to modern xcode and fix Carthage [\#47](https://github.com/pinterest/PINOperation/pull/47) ([garrettmoon](https://github.com/garrettmoon))
18+
- Disable asserts in release builds when using Swift Package Manager [\#44](https://github.com/pinterest/PINOperation/pull/44) ([rcancro](https://github.com/rcancro))
19+
- Carthage is busted on Xcode 12 [\#41](https://github.com/pinterest/PINOperation/pull/41) ([garrettmoon](https://github.com/garrettmoon))
20+
- Latest release script [\#40](https://github.com/pinterest/PINOperation/pull/40) ([garrettmoon](https://github.com/garrettmoon))
21+
- Fixes for automated release process [\#39](https://github.com/pinterest/PINOperation/pull/39) ([garrettmoon](https://github.com/garrettmoon))
22+
23+
## [1.2.1](https://github.com/Pinterest/PINOperation/tree/1.2.1) (2020-10-22)
24+
25+
[Full Changelog](https://github.com/Pinterest/PINOperation/compare/1.2...1.2.1)
26+
27+
28+
- Add release script [\#38](https://github.com/pinterest/PINOperation/pull/38) ([garrettmoon](https://github.com/garrettmoon))
29+
- Only use @import for SPM [\#36](https://github.com/pinterest/PINOperation/pull/36) ([garrettmoon](https://github.com/garrettmoon))
30+
- Add SPM Test [\#35](https://github.com/pinterest/PINOperation/pull/35) ([garrettmoon](https://github.com/garrettmoon))
31+
- Remove BUCK target [\#34](https://github.com/pinterest/PINOperation/pull/34) ([adlerj](https://github.com/adlerj))
32+
133
## [1.2](https://github.com/Pinterest/PINOperation/tree/1.2) (2020-06-30)
234

335
[Full Changelog](https://github.com/Pinterest/PINOperation/compare/1.1.2...1.2)

0 commit comments

Comments
 (0)