TCA 1.7.0 minimum version error iOS15
Closed this issue ยท 9 comments
Description
After the TCA update from version 1.6 to 1.7 got the error:
The project has a minimum version iOS 15.
Checklist
- I have determined whether this bug is also reproducible in a vanilla SwiftUI project.
- If possible, I've reproduced the issue using the
main
branch of this package. - This issue hasn't been addressed in an existing GitHub issue or discussion.
Expected behavior
No response
Actual behavior
No response
Steps to reproduce
- Create a new project
- Lower ios version to ios15
- Add TCA dependency with exact version 1.7.0
- Build
The Composable Architecture version information
1.7.0
Destination operating system
iOS 15
Xcode version information
Version 15.2 (15C500b)
Swift Compiler version information
swift-driver version: 1.87.3 Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5)
Target: x86_64-apple-macosx14.0
Description says https://pointfreeco.github.io/swift-composable-architecture/main/documentation/composablearchitecture/observationbackport#Overview
With version 1.7 of the Composable Architecture we have introduced support for Swift 5.9โs observation tools, and we have backported those tools to work in iOS 13 and later. Using the observation tools in pre-iOS 17 does require a few additional steps and there are some gotchas to be aware of.
As I understood it should work out of the box.
I have the same problem. I have been using 1.7.0 version so far, but starting from yesterday the project is no longer possible to build.
This is a critical blocker for the our software team, we are supporting thousands of clients. We might have reliability issue.
We kindly ask you to prioritize this issue and come back to us with a solution as soon as possible.
Your fastest actions are highly appreciated.
Thanks in advance
Having the exact same issue at the moment and it's critical for us to figure it out since our CI and release train is currently on hold until this is figured out. I'm trying to figure out how to fix it / pin swift-perception to a specific version, but I'll update in a few minutes.
This made the trick #3028 (comment). I'm on TCA 1.8.0 and I pinned swift-perception to 1.1.1 and that worked perfectly fine.
Thanks @alejandro-honor-ed it works for me (added https://github.com/pointfreeco/swift-perception with fixed 1.1.5)
Should be fixed now
https://github.com/pointfreeco/swift-perception/releases/tag/1.1.7
This was also fixed version 1.10.1 of TCA, so you can fix by pinning to TCA 1.10.1 or swift-perception 1.1.7. Sorry for the churn! We tried fixing a problem that only affected people still on iOS 17.0.0 beta, and sadly it caused more problems than it solved.
@mbrandonw is there a case for using "exact" instead of "from" for dependencies? That would have prevented this issue. I suppose using "from" offers additional flexibility in case an app using TCA depends on a different version of swift-perception, so maybe there's tradeoffs here, but worth asking the question.
@pm-dev The "exact" option in SPM should really only be used close the root of your application, ideally only the app target, and sparingly even then. It's just that "exact" dependencies make it very easy to run into un-resolvable dependency graphs, and so should be used with care, and only temporarily. So we would never want to do it in TCA.