← All repositories

listless

A simple list app for Apple platforms

git clone https://code.inqk.net/listless.git


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