listless

A simple list app for Apple platforms
Log | Files | Refs | README | LICENSE

project.yml (9309B)


      1 name: Listless
      2 
      3 options:
      4   bundleIdPrefix: net.inqk.listless
      5   deploymentTarget:
      6     iOS: "18.0"
      7     macOS: "14.0"
      8     watchOS: "11.0"
      9 
     10 configFiles:
     11   Debug: Generated/BuildNumber.xcconfig
     12   Release: Generated/BuildNumber.xcconfig
     13 
     14 settings:
     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 
     24 targets:
     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 
    224 schemes:
    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