project.yml (9309B)
1name: Listless
2
3options:
4 bundleIdPrefix: net.inqk.listless
5 deploymentTarget:
6 iOS: "18.0"
7 macOS: "14.0"
8 watchOS: "11.0"
9
10configFiles:
11 Debug: Generated/BuildNumber.xcconfig
12 Release: Generated/BuildNumber.xcconfig
13
14settings:
15 SWIFT_VERSION: 6
16 DEAD_CODE_STRIPPING: YES
17 ENABLE_USER_SCRIPT_SANDBOXING: YES
18 ASSETCATALOG_COMPILER_GENERATE_ASSET_SYMBOL_EXTENSIONS: YES
19 ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS: YES
20 SWIFT_EMIT_LOC_STRINGS: YES
21 STRING_CATALOG_GENERATE_SYMBOLS: YES
22 DEVELOPMENT_TEAM: 7TD7PZBNXP
23
24targets:
25 Listless iOS:
26 type: application
27 platform: iOS
28 sources:
29 - Listless
30 - ListlessiOS
31 - Media.xcassets
32 entitlements:
33 path: ListlessiOS/Listless.entitlements
34 properties:
35 com.apple.security.app-sandbox: true
36 com.apple.developer.icloud-container-identifiers:
37 - iCloud.net.inqk.listless
38 com.apple.developer.icloud-services:
39 - CloudKit
40 com.apple.developer.ubiquity-container-identifiers:
41 - iCloud.net.inqk.listless
42 com.apple.developer.ubiquity-kvstore-identifier: $(TeamIdentifierPrefix)$(CFBundleIdentifier)
43 aps-environment: development
44 info:
45 path: ListlessiOS/Info.plist
46 properties:
47 CFBundleDisplayName: Listless
48 CFBundleShortVersionString: "1.2.3"
49 CFBundleVersion: $(CURRENT_PROJECT_VERSION)
50 CADisableMinimumFrameDuration: true
51 ITSAppUsesNonExemptEncryption: false
52 LSRequiresIPhoneOS: true
53 UILaunchScreen: {}
54 UIBackgroundModes:
55 - remote-notification
56 UISupportedInterfaceOrientations:
57 - UIInterfaceOrientationPortrait
58 - UIInterfaceOrientationLandscapeLeft
59 - UIInterfaceOrientationLandscapeRight
60 UISupportedInterfaceOrientations~ipad:
61 - UIInterfaceOrientationPortrait
62 - UIInterfaceOrientationPortraitUpsideDown
63 - UIInterfaceOrientationLandscapeLeft
64 - UIInterfaceOrientationLandscapeRight
65 dependencies:
66 - target: Listless watchOS
67 settings:
68 PRODUCT_BUNDLE_IDENTIFIER: net.inqk.listless
69 INFOPLIST_FILE: ListlessiOS/Info.plist
70 TARGETED_DEVICE_FAMILY: "1,2"
71 ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
72 CODE_SIGN_STYLE: Automatic
73
74 Listless macOS:
75 type: application
76 platform: macOS
77 sources:
78 - Listless
79 - path: ListlessMac
80 excludes:
81 - "AppKit/**"
82 - path: ListlessMac/Credits.html
83 type: file
84 buildPhase: resources
85 - Media.xcassets
86 entitlements:
87 path: ListlessMac/Listless.entitlements
88 properties:
89 com.apple.security.app-sandbox: true
90 com.apple.developer.icloud-container-identifiers:
91 - iCloud.net.inqk.listless
92 com.apple.developer.icloud-services:
93 - CloudKit
94 com.apple.developer.ubiquity-container-identifiers:
95 - iCloud.net.inqk.listless
96 com.apple.developer.ubiquity-kvstore-identifier: $(TeamIdentifierPrefix)$(CFBundleIdentifier)
97 info:
98 path: ListlessMac/Info.plist
99 properties:
100 CFBundleDisplayName: Listless
101 CFBundleShortVersionString: "1.2.3"
102 CFBundleVersion: $(CURRENT_PROJECT_VERSION)
103 ITSAppUsesNonExemptEncryption: false
104 LSApplicationCategoryType: public.app-category.productivity
105 LSMinimumSystemVersion: "14.0"
106 settings:
107 PRODUCT_BUNDLE_IDENTIFIER: net.inqk.listless
108 PRODUCT_NAME: Listless
109 INFOPLIST_FILE: ListlessMac/Info.plist
110 ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
111 CODE_SIGN_STYLE: Automatic
112
113 Listless watchOS:
114 type: application
115 platform: watchOS
116 sources:
117 - path: Listless/Models
118 - path: Listless/Sync
119 - path: Listless/Helpers/AccentColor.swift
120 type: file
121 - ListlessWatch
122 - Media.xcassets
123 entitlements:
124 path: ListlessWatch/Listless.entitlements
125 properties:
126 com.apple.developer.icloud-container-identifiers:
127 - iCloud.net.inqk.listless
128 com.apple.developer.icloud-services:
129 - CloudKit
130 com.apple.developer.ubiquity-container-identifiers:
131 - iCloud.net.inqk.listless
132 com.apple.developer.ubiquity-kvstore-identifier: $(TeamIdentifierPrefix)net.inqk.listless
133 aps-environment: development
134 info:
135 path: ListlessWatch/Info.plist
136 properties:
137 CFBundleDisplayName: Listless
138 CFBundleShortVersionString: "1.2.3"
139 CFBundleVersion: $(CURRENT_PROJECT_VERSION)
140 ITSAppUsesNonExemptEncryption: false
141 WKApplication: true
142 WKCompanionAppBundleIdentifier: net.inqk.listless
143 settings:
144 PRODUCT_BUNDLE_IDENTIFIER: net.inqk.listless.watchos
145 PRODUCT_NAME: Listless
146 INFOPLIST_FILE: ListlessWatch/Info.plist
147 ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
148 CODE_SIGN_STYLE: Automatic
149
150 Listless iOS Unit Tests:
151 type: bundle.unit-test
152 platform: iOS
153 sources:
154 - Tests/Unit
155 - Tests/Support
156 dependencies:
157 - target: Listless iOS
158 settings:
159 PRODUCT_BUNDLE_IDENTIFIER: net.inqk.listless.ios.unittests
160 CODE_SIGN_STYLE: Automatic
161 TEST_HOST: $(BUILT_PRODUCTS_DIR)/Listless iOS.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Listless iOS
162 BUNDLE_LOADER: $(TEST_HOST)
163 GENERATE_INFOPLIST_FILE: YES
164
165 Listless macOS Unit Tests:
166 type: bundle.unit-test
167 platform: macOS
168 sources:
169 - Tests/Unit
170 - Tests/Support
171 dependencies:
172 - target: Listless macOS
173 settings:
174 PRODUCT_BUNDLE_IDENTIFIER: net.inqk.listless.macos.unittests
175 CODE_SIGN_STYLE: Automatic
176 TEST_HOST: $(BUILT_PRODUCTS_DIR)/Listless.app/Contents/MacOS/Listless
177 BUNDLE_LOADER: $(TEST_HOST)
178 GENERATE_INFOPLIST_FILE: YES
179
180 Listless iOS UI Tests:
181 type: bundle.ui-testing
182 platform: iOS
183 sources:
184 - path: Tests/UI
185 includes:
186 - "ListlessiOSUITests.swift"
187 - "ListlessiOSScreenshots.swift"
188 dependencies:
189 - target: Listless iOS
190 settings:
191 PRODUCT_BUNDLE_IDENTIFIER: net.inqk.listless.ios.uitests
192 CODE_SIGN_STYLE: Automatic
193 GENERATE_INFOPLIST_FILE: YES
194
195 Listless macOS UI Tests:
196 type: bundle.ui-testing
197 platform: macOS
198 sources:
199 - path: Tests/UI
200 includes:
201 - "ListlessMacUITests.swift"
202 - "ListlessMacScreenshots.swift"
203 dependencies:
204 - target: Listless macOS
205 settings:
206 PRODUCT_BUNDLE_IDENTIFIER: net.inqk.listless.macos.uitests
207 CODE_SIGN_STYLE: Automatic
208 GENERATE_INFOPLIST_FILE: YES
209
210 Listless watchOS UI Tests:
211 type: bundle.ui-testing
212 platform: watchOS
213 sources:
214 - path: Tests/UI
215 includes:
216 - "ListlessWatchScreenshots.swift"
217 dependencies:
218 - target: Listless watchOS
219 settings:
220 PRODUCT_BUNDLE_IDENTIFIER: net.inqk.listless.watchos.uitests
221 CODE_SIGN_STYLE: Automatic
222 GENERATE_INFOPLIST_FILE: YES
223
224schemes:
225 Listless iOS:
226 build:
227 targets:
228 Listless iOS: all
229 preActions:
230 - script: |
231 cd "${SRCROOT}"
232 buildYear=`git log -1 --format=%cd --date=format:%Y`
233 buildVersion=`git rev-list HEAD | wc -l | tr -d ' '`
234 echo "CURRENT_PROJECT_VERSION = $buildYear.$buildVersion" > Generated/BuildNumber.xcconfig
235 settingsTarget: Listless iOS
236 run:
237 config: Debug
238 test:
239 config: Debug
240 targets:
241 - name: Listless iOS Unit Tests
242 parallelizable: true
243 randomExecutionOrder: true
244 - name: Listless iOS UI Tests
245 parallelizable: true
246 randomExecutionOrder: true
247 profile:
248 config: Release
249 analyze:
250 config: Debug
251 archive:
252 config: Release
253
254 Listless macOS:
255 build:
256 targets:
257 Listless macOS: all
258 preActions:
259 - script: |
260 cd "${SRCROOT}"
261 buildYear=`git log -1 --format=%cd --date=format:%Y`
262 buildVersion=`git rev-list HEAD | wc -l | tr -d ' '`
263 echo "CURRENT_PROJECT_VERSION = $buildYear.$buildVersion" > Generated/BuildNumber.xcconfig
264 settingsTarget: Listless macOS
265 run:
266 config: Debug
267 test:
268 config: Debug
269 targets:
270 - name: Listless macOS Unit Tests
271 parallelizable: true
272 randomExecutionOrder: true
273 - name: Listless macOS UI Tests
274 parallelizable: true
275 randomExecutionOrder: true
276 profile:
277 config: Release
278 analyze:
279 config: Debug
280 archive:
281 config: Release
282
283 Listless watchOS:
284 build:
285 targets:
286 Listless watchOS: all
287 preActions:
288 - script: |
289 cd "${SRCROOT}"
290 buildYear=`git log -1 --format=%cd --date=format:%Y`
291 buildVersion=`git rev-list HEAD | wc -l | tr -d ' '`
292 echo "CURRENT_PROJECT_VERSION = $buildYear.$buildVersion" > Generated/BuildNumber.xcconfig
293 settingsTarget: Listless watchOS
294 run:
295 config: Debug
296 test:
297 config: Debug
298 targets:
299 - name: Listless watchOS UI Tests
300 parallelizable: false
301 profile:
302 config: Release
303 analyze:
304 config: Debug
305 archive:
306 config: Release