airbnb / lottie-ios

An iOS library to natively render After Effects vector animations
http://airbnb.io/lottie/
Apache License 2.0
25.7k stars 3.74k forks source link

Xcode16 'CAAnimationCalculationMode' is only available in iOS 12.0 or newer #2426

Closed Yck-Dakucha closed 3 months ago

Yck-Dakucha commented 3 months ago

Xcode16 can’t build

image

andre-alves commented 3 months ago

Fixed in Lottie 4.4.2 or later. Can you test the latest version?

lucasromanomr commented 3 months ago

The big problem is that above version 4.4.2 there is no longer support for iOS12, because the minimum target was for iOS13, so applications that depend on iOS12 can no longer use lottie. Unless you make changes to work with iOS12 and take appropriate treatments

Yck-Dakucha commented 3 months ago

Fixed in Lottie 4.4.2 or later. Can you test the latest version?

sorry, i can't use 4.4.2, because my app need support iOS11

calda commented 3 months ago

Yes, Lottie now only supports iOS 13+. Older versions of Lottie still support iOS 12 and earlier.

Axk520 commented 3 months ago

😭

calda commented 3 months ago

So far I don't think this specific error is related to Lottie dropping support for iOS 12.

'CAShapeLayerFillRule' is only available in iOS 12.0 or newer

So there is no issue here -- CAShapeLayerFillRule requires iOS 12+, and so does Lottie. CAShapeLayerFillRule is only supported in iOS 11, which Lottie doesn't support.

Unless folks are actually relying on iOS 11 support, I think that specific error may be a red herring.

I think the case for dropping iOS 11 support is very strong: supporting iOS 11 is deprecated in Xcode and it shows a warning when you try to do this.

calda commented 3 months ago

If you're currently using lottie-ios or lottie-spm 4.4.3 with Xcode 15, then it should also work correctly with Xcode 16.

Any new Xcode 16 errors related to iOS 12 are almost certainly not the root cause of any Xcode 16 compatibility issue.

If you're still having issues, try things like a clean build and deleting derived data, or try using lottie-ios instead of lottie-spm for now.

calda commented 3 months ago

Here's a sample project that uses lottie-spm 4.4.3 and compiles as expected using Xcode 16: lottie-spm-Xcode-16-sample-app.zip