diff --git a/swift/README.md b/swift/README.md index ade103ec8..56596b8f7 100644 --- a/swift/README.md +++ b/swift/README.md @@ -4,7 +4,7 @@ After you have completed the [common prerequisites] you will need the following: -- [Xcode](https://developer.apple.com/xcode/) 15 or greater +- [Xcode](https://developer.apple.com/xcode/) 16 or greater (Required for Swift 6) ## Permissions (already configured) @@ -13,7 +13,7 @@ After you have completed the [common prerequisites] you will need the following: ## Documentation - [Swift Install Guide](https://docs.ditto.live/install-guides/swift) -- [Swift API Reference](https://software.ditto.live/cocoa/DittoSwift/4.8.2/api-reference/) +- [Swift API Reference](https://software.ditto.live/cocoa/DittoSwift/5.0.0/api-reference/documentation/dittoswift/) - [Swift Release Notes](https://docs.ditto.live/release-notes/swift) [common prerequisites]: https://github.com/getditto/quickstart#common-prerequisites @@ -22,8 +22,8 @@ After you have completed the [common prerequisites] you will need the following: Assuming you have Xcode and other prerequisites installed, you can build and run the app by following these steps: -1. Create an application at . Make note of the app ID and online playground token. -2. Copy the `.env.sample` file at the top level of the `quickstart` repo to `.env` and add your App ID , Online playground Token, Auth URL, and Websocket URL. +1. Create an application at . Make note of the Database ID and Online Playground Token. +2. Copy the `.env.sample` file at the top level of the `quickstart` repo to `.env` and add your Database ID (used to be called App ID), Online Playground Token, and Auth URL. 3. Launch Xcode and open the `quickstart/swift/Tasks.xcodeproj` project. 4. Navigate to the project **Signing & Capabilities** tab and modify the **Team** and **Bundle Identifier** settings to your Apple developer account credentials to provision building to your device. 5. In Xcode, select a connected iOS device or iOS Simulator as the destination. diff --git a/swift/Tasks.xcodeproj/project.pbxproj b/swift/Tasks.xcodeproj/project.pbxproj index 5aebefe8e..fb929289c 100644 --- a/swift/Tasks.xcodeproj/project.pbxproj +++ b/swift/Tasks.xcodeproj/project.pbxproj @@ -7,8 +7,7 @@ objects = { /* Begin PBXBuildFile section */ - 4170A8552CED346F00043F5A /* DittoObjC in Frameworks */ = {isa = PBXBuildFile; productRef = 4170A8542CED346F00043F5A /* DittoObjC */; }; - 4170A8572CED346F00043F5A /* DittoSwift in Frameworks */ = {isa = PBXBuildFile; productRef = 4170A8562CED346F00043F5A /* DittoSwift */; }; + 0D19ADAF2F319E1B004D866D /* DittoSwift in Frameworks */ = {isa = PBXBuildFile; productRef = 0D19ADAE2F319E1B004D866D /* DittoSwift */; }; ABCDEF012345678900000001 /* TasksUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABCDEF012345678900000002 /* TasksUITests.swift */; }; /* End PBXBuildFile section */ @@ -55,8 +54,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 4170A8552CED346F00043F5A /* DittoObjC in Frameworks */, - 4170A8572CED346F00043F5A /* DittoSwift in Frameworks */, + 0D19ADAF2F319E1B004D866D /* DittoSwift in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -70,11 +68,19 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 0D40BBA52F2AAE8A006A72A4 /* Frameworks */ = { + isa = PBXGroup; + children = ( + ); + name = Frameworks; + sourceTree = ""; + }; 41F869812CECF42500DC7268 = { isa = PBXGroup; children = ( 41F8698C2CECF42500DC7268 /* Tasks */, ABCDEF012345678900000005 /* TasksUITests */, + 0D40BBA52F2AAE8A006A72A4 /* Frameworks */, 41F8698B2CECF42500DC7268 /* Products */, ); sourceTree = ""; @@ -118,8 +124,7 @@ ); name = Tasks; packageProductDependencies = ( - 4170A8542CED346F00043F5A /* DittoObjC */, - 4170A8562CED346F00043F5A /* DittoSwift */, + 0D19ADAE2F319E1B004D866D /* DittoSwift */, ); productName = Tasks; productReference = 41F8698A2CECF42500DC7268 /* Tasks.app */; @@ -151,7 +156,7 @@ attributes = { BuildIndependentTargetsInParallel = 1; LastSwiftUpdateCheck = 1610; - LastUpgradeCheck = 1610; + LastUpgradeCheck = 2620; TargetAttributes = { 41F869892CECF42500DC7268 = { CreatedOnToolsVersion = 16.1; @@ -168,7 +173,7 @@ mainGroup = 41F869812CECF42500DC7268; minimizedProjectReferenceProxies = 1; packageReferences = ( - 4170A8532CED346F00043F5A /* XCRemoteSwiftPackageReference "DittoSwiftPackage" */, + 0D19ADAD2F319E10004D866D /* XCRemoteSwiftPackageReference "DittoSwiftPackage" */, ); preferredProjectObjectVersion = 77; productRefGroup = 41F8698B2CECF42500DC7268 /* Products */; @@ -326,6 +331,7 @@ MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; + STRING_CATALOG_GENERATE_SYMBOLS = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; }; @@ -382,6 +388,7 @@ MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; SDKROOT = iphoneos; + STRING_CATALOG_GENERATE_SYMBOLS = YES; SWIFT_COMPILATION_MODE = wholemodule; VALIDATE_PRODUCT = YES; }; @@ -400,6 +407,7 @@ GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = Tasks/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = "Ditto Tasks"; + INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.developer-tools"; INFOPLIST_KEY_NSBluetoothAlwaysUsageDescription = "Uses Bluetooth to connect and sync with nearby devices"; INFOPLIST_KEY_NSBluetoothPeripheralUsageDescription = "Uses Bluetooth to connect and sync with nearby devices"; INFOPLIST_KEY_NSLocalNetworkUsageDescription = "Uses WiFi to connect and sync with nearby devices"; @@ -435,6 +443,7 @@ GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = Tasks/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = "Ditto Tasks"; + INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.developer-tools"; INFOPLIST_KEY_NSBluetoothAlwaysUsageDescription = "Uses Bluetooth to connect and sync with nearby devices"; INFOPLIST_KEY_NSBluetoothPeripheralUsageDescription = "Uses Bluetooth to connect and sync with nearby devices"; INFOPLIST_KEY_NSLocalNetworkUsageDescription = "Uses WiFi to connect and sync with nearby devices"; @@ -526,25 +535,20 @@ /* End XCConfigurationList section */ /* Begin XCRemoteSwiftPackageReference section */ - 4170A8532CED346F00043F5A /* XCRemoteSwiftPackageReference "DittoSwiftPackage" */ = { + 0D19ADAD2F319E10004D866D /* XCRemoteSwiftPackageReference "DittoSwiftPackage" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/getditto/DittoSwiftPackage"; requirement = { - kind = upToNextMajorVersion; - minimumVersion = 4.14.3; + kind = upToNextMinorVersion; + minimumVersion = 5.0.0; }; }; /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ - 4170A8542CED346F00043F5A /* DittoObjC */ = { - isa = XCSwiftPackageProductDependency; - package = 4170A8532CED346F00043F5A /* XCRemoteSwiftPackageReference "DittoSwiftPackage" */; - productName = DittoObjC; - }; - 4170A8562CED346F00043F5A /* DittoSwift */ = { + 0D19ADAE2F319E1B004D866D /* DittoSwift */ = { isa = XCSwiftPackageProductDependency; - package = 4170A8532CED346F00043F5A /* XCRemoteSwiftPackageReference "DittoSwiftPackage" */; + package = 0D19ADAD2F319E10004D866D /* XCRemoteSwiftPackageReference "DittoSwiftPackage" */; productName = DittoSwift; }; /* End XCSwiftPackageProductDependency section */ diff --git a/swift/Tasks.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/swift/Tasks.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index 389c720ed..9a067e4ab 100644 --- a/swift/Tasks.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/swift/Tasks.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -6,8 +6,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/getditto/DittoSwiftPackage", "state" : { - "revision" : "61b203cffc6a85c1c0d0987d1833d62eca7c549c", - "version" : "4.14.3" + "revision" : "60091ac1da98c96ffa0ed7c566650e7e08d01c74", + "version" : "5.0.0" } } ], diff --git a/swift/Tasks.xcodeproj/xcshareddata/xcschemes/Tasks.xcscheme b/swift/Tasks.xcodeproj/xcshareddata/xcschemes/Tasks.xcscheme index bfcc99fa5..43aab3fa6 100644 --- a/swift/Tasks.xcodeproj/xcshareddata/xcschemes/Tasks.xcscheme +++ b/swift/Tasks.xcodeproj/xcshareddata/xcschemes/Tasks.xcscheme @@ -1,6 +1,6 @@