Description
AdjustSdk declares only:
platforms: [
.iOS(.v12),
.tvOS(.v12)
]
Since macOS is not explicitly declared, SwiftPM applies the default macOS 10.13.
However, the AdjustGoogleOdm target depends on:
GoogleAdsOnDeviceConversion
which declares:
This creates an invalid platform graph:
- AdjustSdk → macOS 10.13 (implicit default)
- GoogleAdsOnDeviceConversion → macOS 10.15
SwiftPM fails during dependency resolution with:
the library 'AdjustGoogleOdm' requires macos 10.13,
but depends on the product 'GoogleAdsOnDeviceConversion'
which requires macos 10.15
Why this happens
When macOS is not explicitly declared in platforms, SwiftPM assumes macOS 10.13 by default.
Because of that implicit 10.13, the dependency graph becomes invalid.
Suggested fixes
One of the following:
- Explicitly declare macOS 10.15 in
platforms:
platforms: [
.iOS(.v12),
.tvOS(.v12),
.macOS(.v10_15)
]
or
- Restrict
AdjustGoogleOdm target to iOS only using conditional dependencies:
.product(
name: "GoogleAdsOnDeviceConversion",
package: "google-ads-on-device-conversion-ios-sdk",
condition: .when(platforms: [.iOS])
)
Either approach would make the package graph valid for SwiftPM CLI.
Environment
- Swift 5.x
- Fails when running
swift package resolve or plugin commands
- Xcode build may succeed due to cached resolution
Thank you!
Description
AdjustSdkdeclares only:Since macOS is not explicitly declared, SwiftPM applies the default macOS 10.13.
However, the
AdjustGoogleOdmtarget depends on:GoogleAdsOnDeviceConversionwhich declares:
This creates an invalid platform graph:
SwiftPM fails during dependency resolution with:
Why this happens
When macOS is not explicitly declared in
platforms, SwiftPM assumes macOS 10.13 by default.Because of that implicit 10.13, the dependency graph becomes invalid.
Suggested fixes
One of the following:
platforms:or
AdjustGoogleOdmtarget to iOS only using conditional dependencies:Either approach would make the package graph valid for SwiftPM CLI.
Environment
swift package resolveor plugin commandsThank you!