-
Notifications
You must be signed in to change notification settings - Fork 404
Add Remote variants for Example tuist projects #5580
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
📸 Snapshot Test12 modified, 856 unchanged
🛸 Powered by Emerge Tools |
ajpallares
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is looking great! Especially for CI, so that we make sure that we're using SPM for tests to closer replicate the most used real-life scenarios.
However, I wonder, I see that the RevenueCat dependency added depends on the main branch.
While that might make sense for some projects like Magic Weather (although it could be argued that it should depend on the latest release), trying to think on our CI, ideally it should depend on the local code as a Swift Package (and not on the remote main branch).
| .package(product: "RevenueCat", type: .runtime), | ||
| .package(product: "RevenueCatUI", type: .runtime), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe we should declare this in TargetDependencies.swift as we have others? (e.g. .revenueCat, .revenueCatUI)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, is this .runtime making it point to .main because we declare it like this in Tuist/Package.swift?
.package(
url: "https://github.com/RevenueCat/purchases-ios",
branch: "main"
),
If so, what does it use the purchases-ios from main and no the purchases-ios-spm at 3.14.4 also declared in Tuist/Package.swift`
.package(
url: "https://github.com/RevenueCat/purchases-ios",
branch: "main"
),
.package(
url: "https://github.com/RevenueCat/purchases-ios-spm",
revision: "3.14.4"
),
| dependencies: [ | ||
| .package(product: "RevenueCat", type: .runtime), | ||
| .package(product: "RevenueCatUI", type: .runtime), | ||
| .package(product: "ReceiptParser", type: .runtime) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I only see receipt parser declared in Tuist/ProjectDescriptionHelpers/TargetDependencies.swift.
/// Returns a ReceiptParser dependency
/// - Returns: A TargetDependency for ReceiptParser
public static var receiptparser: TargetDependency {
.project(
target: "ReceiptParser",
path: .relativeToRoot("Projects/RevenueCat")
)
}
How will it find it from the remote? (very likely I'm missing something 🙏)
Motivation
We want to have a way to test RC integration using SPM, our main installation method.
Try to keep it clean for ease of maintenance.
Description
rc-maestro.Now if you run

TUIST_RC_LOCAL=false tuist generatethis is the output.The goal is to keep the same command by duplicating the project, but having the same target name.
When running local = false, example projects will use Xcode natives SPM dependency resolver. The other projects will still use tuist resolver.