Question or problem
Hi folks,
Im new user of the tuist project generation.
In my current setup I generate a single xcworkspace that contains 1 xcode project with a target that depends on local Swift packages. The project itself depends on few 3rd party Swift Pacckages.
Additionally the local Swift packages do also depend on 3rd party Swift Packages.
Is there a guideline/tutorial where I could find how to ensure that all the 3rd party dependencies are cached & linked as xcframeworks?
Resolving the 3rd party dependencies takes a while
Im happy to share my setup if that helps.
The dependency tree in my Project.swift look moreless like this:
let commonDependencies: [TargetDependency] = [
.package(product: "Networking", type: .runtime),
.package(product: "Assets", type: .runtime),
.package(product: "SharedUI", type: .runtime),
.package(product: "Analytics", type: .runtime),
.package(product: "FirebaseCrashlytics", type: .runtime),
.package(product: "FirebaseAnalytics", type: .runtime),
.package(product: "ComposableArchitecture", type: .runtime),
]
let project = Project(
name: "my_project",
packages: [
.local(path: .relativeToManifest("./Networking")),
.local(path: .relativeToManifest("./Assets")),
.local(path: .relativeToManifest("./SharedUI")),
.local(path: .relativeToManifest("./Analytics")),
.remote(
url: "https://github.com/firebase/firebase-ios-sdk",
requirement: .upToNextMajor(from: "11.8.1")
),
.remote(
url: "https://github.com/pointfreeco/swift-composable-architecture",
requirement: .upToNextMajor(from: "1.17.0")
),
.remote(
url: "https://github.com/ProxymanApp/atlantis",
requirement: .upToNextMajor(from: "1.26.0")
),
],
targets: [
.target(..., dependencies: commonDependencies)
]
...
Worth to note, my tuist configuration skills are pretty lame, so far I only configured the Project.swift
Thanks for the help!