Flutterfire: [cloud_firestore] build failed on ios after upgrading to Flutter 1.12.13

Created on 12 Dec 2019  Â·  4Comments  Â·  Source: FirebaseExtended/flutterfire

After upgrading flutter stable to 1.12, cloud_firestore 0.13.0+1 failed to build on ios (it still work on Android).

To reproduce the bug, on a new flutter project, just add the dependencies to pubspec.yaml:

dependencies:
  flutter:
    sdk: flutter
  firebase_core: ^0.4.3+1
  cloud_firestore: ^0.13.0+1

(and GoogleService-Info.plist in ios/Runner).

Then the build fails for ios (and works for android).

I flush .pub-cache to no avail.

32m@dev Test % flutter doctor -v
[✓] Flutter (Channel stable, v1.12.13+hotfix.5, on Mac OS X 10.15.2 19C57, locale fr-FR)
    • Flutter version 1.12.13+hotfix.5 at /Users/em/Dev/Softs/flutter
    • Framework revision 27321ebbad (2 days ago), 2019-12-10 18:15:01 -0800
    • Engine revision 2994f7e1e6
    • Dart version 2.7.0


[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/em/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.3, Build version 11C29
    • CocoaPods version 1.8.3

[✓] Android Studio (version 3.5)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 42.1.1
    • Dart plugin version 191.8593
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)

[✓] VS Code (version 1.40.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.6.0

[✓] Connected device (2 available)
    • AOSP on IA Emulator • emulator-5554                        • android-x86 • Android 9 (API 28) (emulator)
    • iPhone 8            • 3998CCF4-0C57-4E0D-A6A7-196B5445E265 • ios         • com.apple.CoreSimulator.SimRuntime.iOS-13-3 (simulator)

• No issues found!

Here's the message when I try to build:

Launching lib/main.dart on iPhone 8 in debug mode...
Running pod install...
Running Xcode build...
Xcode build done.                                           99,5s
Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **


Xcode's output:
↳
    /Users/32m/AndroidStudioProjects/Test/ios/Pods/FirebaseFirestore/Firestore/Protos/objc/google/firestore/v1/Write.pbobjc.m:33:10: warning: non-portable path to file '<protobuf/Timestamp.pbobjc.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
     #import <Protobuf/Timestamp.pbobjc.h>
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             <protobuf/Timestamp.pbobjc.h>
    1 warning generated.
    /Users/32m/AndroidStudioProjects/Test/ios/Pods/FirebaseFirestore/Firestore/Protos/objc/firestore/local/Target.pbobjc.m:33:10: warning: non-portable path to file '<protobuf/Timestamp.pbobjc.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
     #import <Protobuf/Timestamp.pbobjc.h>
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             <protobuf/Timestamp.pbobjc.h>
    1 warning generated.
    /Users/32m/AndroidStudioProjects/Test/ios/Pods/FirebaseFirestore/Firestore/Protos/objc/google/rpc/Status.pbobjc.m:33:10: warning: non-portable path to file '<protobuf/Any.pbobjc.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
     #import <Protobuf/Any.pbobjc.h>
             ^~~~~~~~~~~~~~~~~~~~~~~
             <protobuf/Any.pbobjc.h>
    1 warning generated.
    /Users/32m/AndroidStudioProjects/Test/ios/Pods/FirebaseFirestore/Firestore/Protos/objc/google/firestore/v1/Query.pbobjc.m:33:10: warning: non-portable path to file '<protobuf/Wrappers.pbobjc.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
     #import <Protobuf/Wrappers.pbobjc.h>
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
             <protobuf/Wrappers.pbobjc.h>
    1 warning generated.
    /Users/32m/AndroidStudioProjects/Test/ios/Pods/FirebaseFirestore/Firestore/Protos/objc/firestore/local/Mutation.pbobjc.m:33:10: warning: non-portable path to file '<protobuf/Timestamp.pbobjc.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
     #import <Protobuf/Timestamp.pbobjc.h>
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             <protobuf/Timestamp.pbobjc.h>
    1 warning generated.
    /Users/32m/AndroidStudioProjects/Test/ios/Pods/FirebaseFirestore/Firestore/Protos/objc/firestore/local/MaybeDocument.pbobjc.m:33:10: warning: non-portable path to file '<protobuf/Timestamp.pbobjc.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
     #import <Protobuf/Timestamp.pbobjc.h>
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             <protobuf/Timestamp.pbobjc.h>
    1 warning generated.
    /Users/32m/AndroidStudioProjects/Test/ios/Pods/FirebaseFirestore/Firestore/Protos/objc/google/firestore/v1/Firestore.pbobjc.m:33:10: warning: non-portable path to file '<protobuf/Empty.pbobjc.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
     #import <Protobuf/Empty.pbobjc.h>
             ^~~~~~~~~~~~~~~~~~~~~~~~~
             <protobuf/Empty.pbobjc.h>
    /Users/32m/AndroidStudioProjects/Test/ios/Pods/FirebaseFirestore/Firestore/Protos/objc/google/firestore/v1/Firestore.pbobjc.m:34:10: warning: non-portable path to file '<protobuf/Timestamp.pbobjc.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
     #import <Protobuf/Timestamp.pbobjc.h>
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             <protobuf/Timestamp.pbobjc.h>
    2 warnings generated.
    /Users/32m/AndroidStudioProjects/Test/ios/Pods/FirebaseFirestore/Firestore/Protos/objc/google/firestore/v1/Document.pbobjc.m:33:10: warning: non-portable path to file '<protobuf/Struct.pbobjc.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
     #import <Protobuf/Struct.pbobjc.h>
             ^~~~~~~~~~~~~~~~~~~~~~~~~~
             <protobuf/Struct.pbobjc.h>
    /Users/32m/AndroidStudioProjects/Test/ios/Pods/FirebaseFirestore/Firestore/Protos/objc/google/firestore/v1/Document.pbobjc.m:34:10: warning: non-portable path to file '<protobuf/Timestamp.pbobjc.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
     #import <Protobuf/Timestamp.pbobjc.h>
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             <protobuf/Timestamp.pbobjc.h>
    2 warnings generated.
    /Users/32m/AndroidStudioProjects/Test/ios/Pods/FirebaseFirestore/Firestore/Protos/objc/google/firestore/v1/Common.pbobjc.m:33:10: warning: non-portable path to file '<protobuf/Timestamp.pbobjc.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
     #import <Protobuf/Timestamp.pbobjc.h>
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             <protobuf/Timestamp.pbobjc.h>
    1 warning generated.
    /Users/32m/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.13.0+1/ios/Classes/FLTCloudFirestorePlugin.m:155:24: error: no visible @interface for 'FIRQuery' declares the selector 'queryWhereField:arrayContainsAny:'
            query = [query queryWhereField:fieldName arrayContainsAny:value];
                     ~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /Users/32m/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.13.0+1/ios/Classes/FLTCloudFirestorePlugin.m:157:24: error: no visible @interface for 'FIRQuery' declares the selector 'queryWhereFieldPath:arrayContainsAny:'
            query = [query queryWhereFieldPath:fieldPath arrayContainsAny:value];
                     ~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /Users/32m/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.13.0+1/ios/Classes/FLTCloudFirestorePlugin.m:163:24: error: no visible @interface for 'FIRQuery' declares the selector 'queryWhereField:in:'
            query = [query queryWhereField:fieldName in:value];
                     ~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /Users/32m/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.13.0+1/ios/Classes/FLTCloudFirestorePlugin.m:165:24: error: no visible @interface for 'FIRQuery' declares the selector 'queryWhereFieldPath:in:'
            query = [query queryWhereFieldPath:fieldPath in:value];
                     ~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    4 errors generated.
    note: Using new build system
    note: Planning build
    note: Constructing build description
    warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 5.0, but the range of supported deployment target versions is 8.0 to 13.2.99. (in target 'leveldb-library' from project 'Pods')
    warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 7.0, but the range of supported deployment target versions is 8.0 to 13.2.99. (in target 'Protobuf' from project 'Pods')
    warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 4.3, but the range of supported deployment target versions is 8.0 to 13.2.99. (in target 'nanopb' from project 'Pods')
    warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 7.0, but the range of supported deployment target versions is 8.0 to 13.2.99. (in target 'BoringSSL-GRPC' from project 'Pods')
    warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 7.0, but the range of supported deployment target versions is 8.0 to 13.2.99. (in target 'gRPC-Core' from project 'Pods')
    warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 7.0, but the range of supported deployment target versions is 8.0 to 13.2.99. (in target 'gRPC-C++' from project 'Pods')
    warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 7.0, but the range of supported deployment target versions is 8.0 to 13.2.99. (in target 'gRPC-C++-gRPCCertificates-Cpp' from project 'Pods')

Could not build the application for the simulator.
Error launching application on iPhone 8.

customer-response bug

Most helpful comment

cd ios
pod update Firebase/Firestore

try this it fixed a similar issue for me in the past. If that doesn't work the more drastic measure is to delete the "Pods" folder and "Podfile.lock".

All 4 comments

Hi @32mandev
does this solution solve the issue?
thank you

Hi,
unfortunately flutter clean; flutter pub cache repair doesn't solve the issue.

cd ios
pod update Firebase/Firestore

try this it fixed a similar issue for me in the past. If that doesn't work the more drastic measure is to delete the "Pods" folder and "Podfile.lock".

cd ios
pod update Firebase/Firestore

It worked! Thank you very much.

Was this page helpful?
0 / 5 - 0 ratings