Skip to content
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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

馃悰 [cloud_firestore] Unable to run/build in iOS when using along with single_factor_auth_flutter #12032

Closed
samyakb-work opened this issue Dec 13, 2023 · 3 comments
Labels
resolution: invalid This doesn't seem right and might not belong here. type: bug Something isn't working

Comments

@samyakb-work
Copy link

Bug report

I am facing an issue while using your package along with single_factor_auth_flutter. This is working just fine in Android, but facing the issue in iOS.

In iOS, single_factor_auth_flutter depends on OpenSSL whereas cloud_firestore depends on BoringSSL.
When using both the packages simultaneously, BoringSSL is tampering with OpenSSL files, which end up deleting it's header files.

As a result I am unable to run/build for iOS, and getting the following error:

Failed to build iOS app
Lexical or Preprocessor Issue (Xcode): 'openssl_grpc/base.h' file not found
/Users/cumulations/Desktop/flutter_apps/w3a_spm_issue_demo/ios/Pods/BoringSSL-GRPC/src/include/openssl/aes.h:51:9

Steps to reproduce

Try the following to run for iOS:

flutter create demo
cd demo
flutter pub get
flutter pub add cloud_firestore single_factor_auth_flutter
flutter run

Expected behavior

It should build without any error.

Sample project

Here is a minimal reproducible example. In this, I have just added cloud_firestore and single_factor_auth_flutter and trying to build for iOS.


Additional context


Flutter doctor

Run flutter doctor and paste the output below:

Click To Expand
[!] Flutter (Channel stable, 3.13.9, on macOS 13.3.1 22E261 darwin-arm64, locale en-IN)
    ! Warning: `dart` on your path resolves to /opt/homebrew/Cellar/dart/3.1.3/libexec/bin/dart, which is not inside your current Flutter SDK checkout at /Users/cumulations/fvm/versions/3.13.9. Consider adding /Users/cumulations/fvm/versions/3.13.9/bin to the front of your path.
[鉁揮 Android toolchain - develop for Android devices (Android SDK version 33.0.1)
[鉁揮 Xcode - develop for iOS and macOS (Xcode 14.3.1)
[鉁揮 Android Studio (version 2022.3)
[鉁揮 VS Code (version 1.85.0)
Unknown architecture undefined_arch, defaulting to arm64
[鉁揮 Connected device (1 available)
[鉁揮 Network resources

Flutter dependencies

Run flutter pub deps -- --style=compact and paste the output below:

Click To Expand
Dart SDK 3.1.5
Flutter SDK 3.13.9
w3a_spm_issue_demo 1.0.0+1

dependencies:
- cloud_firestore 4.13.6 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_interface flutter meta]
- cupertino_icons 1.0.6
- flutter 0.0.0 [characters collection material_color_utilities meta vector_math web sky_engine]
- single_factor_auth_flutter 1.0.0 [flutter plugin_platform_interface]

dev dependencies:
- flutter_lints 2.0.3 [lints]
- flutter_test 0.0.0 [flutter test_api matcher path fake_async clock stack_trace vector_math async boolean_selector characters collection material_color_utilities meta source_span stream_channel string_scanner term_glyph web]

transitive dependencies:
- _flutterfire_internals 1.3.16 [collection firebase_core firebase_core_platform_interface flutter meta]
- async 2.11.0 [collection meta]
- boolean_selector 2.1.1 [source_span string_scanner]
- characters 1.3.0
- clock 1.1.1
- cloud_firestore_platform_interface 6.0.10 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
- cloud_firestore_web 3.8.10 [_flutterfire_internals cloud_firestore_platform_interface collection firebase_core firebase_core_web flutter flutter_web_plugins js]
- collection 1.17.2
- fake_async 1.3.1 [clock collection]
- firebase_core 2.24.2 [firebase_core_platform_interface firebase_core_web flutter meta]
- firebase_core_platform_interface 5.0.0 [collection flutter flutter_test meta plugin_platform_interface]
- firebase_core_web 2.10.0 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
- flutter_web_plugins 0.0.0 [flutter characters collection material_color_utilities meta vector_math web]
- js 0.6.7 [meta]
- lints 2.1.1
- matcher 0.12.16 [async meta stack_trace term_glyph test_api]
- material_color_utilities 0.5.0 [collection]
- meta 1.9.1
- path 1.8.3
- plugin_platform_interface 2.1.7 [meta]
- sky_engine 0.0.99
- source_span 1.10.0 [collection path term_glyph]
- stack_trace 1.11.0 [path]
- stream_channel 2.1.1 [async]
- string_scanner 1.2.0 [source_span]
- term_glyph 1.2.1
- test_api 0.6.0 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph]
- vector_math 2.1.4
- web 0.1.4-beta

@samyakb-work
Copy link
Author

Have opened an issue under single_factor_auth_flutter repo as well.

@darshankawar darshankawar added the triage Issue is currently being triaged. label Dec 14, 2023
@darshankawar
Copy link

@samyakb-work
I don't think this is a cloud_firestore issue, but could be in the mentioned plugin you are using.
The plugin seems to be importing an ambiguous Base64.h and picking up the one from the BoringSSL install.
Closing from here. Please follow-up in the dedicated repo.

@darshankawar darshankawar closed this as not planned Won't fix, can't repro, duplicate, stale Dec 14, 2023
@darshankawar darshankawar added resolution: invalid This doesn't seem right and might not belong here. and removed Needs Attention This issue needs maintainer attention. triage Issue is currently being triaged. labels Dec 14, 2023
@samyakb-work
Copy link
Author

Thank you, @darshankawar. Will follow up with them.

@firebase firebase locked and limited conversation to collaborators Jan 14, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
resolution: invalid This doesn't seem right and might not belong here. type: bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants