Skip to content

Commit f5defc6

Browse files
Merge eea8a8c into ad629f4
2 parents ad629f4 + eea8a8c commit f5defc6

File tree

217 files changed

+9761
-9591
lines changed

Some content is hidden

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

217 files changed

+9761
-9591
lines changed

.github/workflows/non-drm-build.yml

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@ name: NonDRM Build
22
on: workflow_dispatch
33
jobs:
44
build:
5-
runs-on: macOS-latest
5+
runs-on: macos-14
66
steps:
7-
- name: Use the latest Xcode
8-
run: sudo xcode-select -switch /Applications/Xcode.app
7+
- name: Set up Xcode 16.2
8+
uses: maxim-lobanov/setup-xcode@v1
9+
with:
10+
xcode-version: '16.2'
11+
12+
- name: Verify Xcode Version
13+
run: xcodebuild -version
914
- name: Checkout main repo
1015
uses: actions/checkout@v3
1116
- name: Set up repo for nonDRM build

.github/workflows/release-on-merge.yml

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,15 @@ on:
66
types: [closed]
77
jobs:
88
create-release:
9-
runs-on: macOS-latest
9+
runs-on: macos-14
1010
steps:
11-
- name: Use the latest Xcode
12-
run: sudo xcode-select -switch /Applications/Xcode.app
11+
- name: Set up Xcode 16.2
12+
uses: maxim-lobanov/setup-xcode@v1
13+
with:
14+
xcode-version: '16.2'
15+
16+
- name: Verify Xcode Version
17+
run: xcodebuild -version
1318
- name: Checkout main repo and submodules
1419
uses: actions/checkout@v3
1520
with:
@@ -36,7 +41,7 @@ jobs:
3641
env:
3742
RELEASE_NOTES_PATH: ${{ env.RELEASE_NOTES_PATH }}
3843
CHANGELOG_PATH: ${{ env.CHANGELOG_PATH }}
39-
VERSION_NUM: ${{ env.VERSION_NUM }}
44+
VERSION_NUM: ${{ env.VERSION_NUM }}
4045
- name: Create Release
4146
id: create_release
4247
uses: actions/create-release@v1

.github/workflows/release.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ jobs:
66
steps:
77
- name: Use the latest Xcode
88
run: sudo xcode-select -switch /Applications/Xcode.app
9+
10+
- name: Verify Xcode Version
11+
run: xcodebuild -version
912
- name: Checkout main repo and submodules
1013
uses: actions/checkout@v3
1114
with:
@@ -32,7 +35,7 @@ jobs:
3235
env:
3336
RELEASE_NOTES_PATH: ${{ env.RELEASE_NOTES_PATH }}
3437
CHANGELOG_PATH: ${{ env.CHANGELOG_PATH }}
35-
VERSION_NUM: ${{ env.VERSION_NUM }}
38+
VERSION_NUM: ${{ env.VERSION_NUM }}
3639
- name: Create Release
3740
id: create_release
3841
uses: actions/create-release@v1

.github/workflows/unit-testing.yml

Lines changed: 38 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,38 +2,67 @@ name: Unit Tests
22
on: [ pull_request, workflow_dispatch ]
33
jobs:
44
build-and-test:
5-
runs-on: macOS-latest
5+
runs-on: macos-14
66
steps:
7-
- name: Use the latest Xcode
8-
run: sudo xcode-select -switch /Applications/Xcode.app
7+
- name: Set up Xcode 16.2
8+
uses: maxim-lobanov/setup-xcode@v1
9+
with:
10+
xcode-version: '16.2'
11+
12+
- name: Verify Xcode Version
13+
run: xcodebuild -version
14+
915
- name: Checkout main repo and submodules
1016
uses: actions/checkout@v3
1117
with:
1218
submodules: true
1319
token: ${{ secrets.CI_GITHUB_ACCESS_TOKEN }}
20+
21+
- name: Cache Swift packages
22+
uses: actions/cache@v4
23+
with:
24+
path: |
25+
.build
26+
SourcePackages
27+
~/Library/Developer/Xcode/DerivedData/**/SourcePackages
28+
key: ${{ runner.os }}-spm-${{ hashFiles('**/Package.resolved') }}
29+
restore-keys: |
30+
${{ runner.os }}-spm-
31+
32+
- name: Cache Xcode DerivedData
33+
uses: actions/cache@v4
34+
with:
35+
path: ~/Library/Developer/Xcode/DerivedData
36+
key: ${{ runner.os }}-deriveddata-${{ hashFiles('**/*.xcodeproj/project.pbxproj') }}
37+
restore-keys: |
38+
${{ runner.os }}-deriveddata-
39+
1440
- name: Checkout Certificates
1541
uses: actions/checkout@v3
1642
with:
1743
repository: ThePalaceProject/mobile-certificates
1844
token: ${{ secrets.CI_GITHUB_ACCESS_TOKEN }}
1945
path: ./mobile-certificates
46+
2047
- name: Checkout Adobe RMSDK
2148
uses: ./.github/actions/checkout-adobe
2249
with:
2350
token: ${{ secrets.CI_GITHUB_ACCESS_TOKEN }}
51+
2452
- name: Setup repo with DRM
2553
run: ./scripts/setup-repo-drm.sh
2654
env:
2755
BUILD_CONTEXT: ci
56+
2857
- name: Build non-Carthage 3rd party dependencies
2958
run: ./scripts/build-3rd-party-dependencies.sh
3059
env:
3160
BUILD_CONTEXT: ci
32-
- name: Build Palace without DRM support
33-
run: ./scripts/xcode-build-nodrm.sh
34-
env:
35-
BUILD_CONTEXT: ci
36-
- name: Run Palace unit tests
37-
run: ./scripts/xcode-test.sh
61+
62+
- name: List available simulators for debugging
63+
run: xcrun simctl list devices available | grep iPhone | head -10
64+
65+
- name: Run Palace unit tests (builds automatically)
66+
run: ./scripts/xcode-test-optimized.sh
3867
env:
3968
BUILD_CONTEXT: ci

.github/workflows/upload-on-merge.yml

Lines changed: 23 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,19 @@ on:
99

1010
jobs:
1111
check-version:
12-
runs-on: macos-15
12+
# Using macos-14 explicitly to avoid transition issues with macos-latest
13+
# See: https://github.com/actions/runner-images/issues/12520
14+
# TODO: Plan migration to macos-15 before August 2025
15+
runs-on: macos-14
1316
steps:
17+
18+
19+
- name: Checkout main repo and submodules
20+
uses: actions/checkout@v3
21+
with:
22+
submodules: true
23+
token: ${{ secrets.CI_GITHUB_ACCESS_TOKEN }}
24+
1425
- name: Set up Xcode 16.2
1526
uses: maxim-lobanov/setup-xcode@v1
1627
with:
@@ -19,12 +30,6 @@ jobs:
1930
- name: Verify Xcode Version
2031
run: xcodebuild -version
2132

22-
- name: Checkout main repo and submodules
23-
uses: actions/checkout@v3
24-
with:
25-
submodules: true
26-
token: ${{ secrets.CI_GITHUB_ACCESS_TOKEN }}
27-
2833
- id: checkVersion
2934
name: Check Build Version
3035
run: ./scripts/ios-check-version.sh
@@ -34,11 +39,11 @@ jobs:
3439
should_upload: ${{ steps.checkVersion.outputs.version_changed }}
3540

3641
upload-build:
37-
runs-on: macos-15
42+
runs-on: macos-14
3843
needs: check-version
3944
if: github.event.pull_request.merged == true && needs.check-version.outputs.should_upload == '1'
4045
steps:
41-
- name: Set up Xcode 16.2
46+
- name: Force Xcode 16
4247
uses: maxim-lobanov/setup-xcode@v1
4348
with:
4449
xcode-version: '16.2'
@@ -96,6 +101,10 @@ jobs:
96101
run: ./scripts/xcode-export-adhoc.sh
97102
env:
98103
BUILD_CONTEXT: ci
104+
XCODE_VERSION: "16.2"
105+
IPHONEOS_DEPLOYMENT_TARGET: "16.0"
106+
ONLY_ACTIVE_ARCH: "NO"
107+
ARCHS: "arm64"
99108

100109
- name: Set up Python
101110
uses: actions/setup-python@v4
@@ -108,14 +117,12 @@ jobs:
108117
source .venv/bin/activate
109118
python3 -m pip install --upgrade pip
110119
python3 -m pip install requests
111-
112120
- name: Debug Python Environment
113121
run: |
114122
source .venv/bin/activate
115123
echo "✅ Python Location: $(which python3)"
116124
python3 -m pip list
117125
python3 -m pip show requests || echo "❌ requests not found"
118-
119126
- name: Create release notes
120127
run: |
121128
source .venv/bin/activate
@@ -140,5 +147,9 @@ jobs:
140147
run: ./scripts/xcode-export-appstore.sh
141148
env:
142149
BUILD_CONTEXT: ci
143-
timeout-minutes: 15
150+
XCODE_VERSION: "16.2"
151+
IPHONEOS_DEPLOYMENT_TARGET: "16.0"
152+
ONLY_ACTIVE_ARCH: "NO"
153+
ARCHS: "arm64"
144154
CHANGELOG_PATH: ${{ env.CHANGELOG_PATH }}
155+
timeout-minutes: 15

Cartfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11

2+

Gemfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,4 +177,4 @@ DEPENDENCIES
177177
fastlane
178178

179179
BUNDLED WITH
180-
1.17.2
180+
2.7.1

Palace.xcconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
HEADER_SEARCH_PATHS = $(inherited) "$(SDKROOT)/usr/include/libxml2" "$(SRCROOT)/readium-sdk/Platform/Apple/RDServices" "$(SRCROOT)/readium-sdk/Platform/Apple/include" "$(SRCROOT)/ios-tenprintcover/TenPrintCover" "$(SRCROOT)/ios-audiobook-overdrive/OverdriveProcessor" "$(SRCROOT)/adept-ios" "$(SRCROOT)/adobe-content-filter/public" "$(SRCROOT)/adobe-rmsdk/dp/public" "$(SRCROOT)/adobe-rmsdk/xml/uft/public"
1+
HEADER_SEARCH_PATHS = $(inherited) "$(SDKROOT)/usr/include/libxml2" "$(SRCROOT)/ios-tenprintcover/TenPrintCover" "$(SRCROOT)/ios-audiobook-overdrive/OverdriveProcessor" "$(SRCROOT)/adept-ios" "$(SRCROOT)/adobe-content-filter/public" "$(SRCROOT)/adobe-rmsdk/dp/public" "$(SRCROOT)/adobe-rmsdk/xml/uft/public"
22

33
WARNING_CFLAGS = -Wall -Wextra -Weverything -Wno-objc-missing-property-synthesis -Wno-c11-extensions -Wno-documentation -Wno-c++98-compat-pedantic -Wno-c++98-compat
44

0 commit comments

Comments
 (0)