Skip to content

Commit ea567dc

Browse files
authored
Revert "gRPC: replace Objective-C implementation with the new C++ implementation (#1968)" (#2030)
This reverts commit a514bd9.
1 parent f16cd0e commit ea567dc

39 files changed

+3166
-4947
lines changed

FirebaseFirestore.podspec

+1-4
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,9 @@ Google Cloud Firestore is a NoSQL document database built for automatic scaling,
4949
]
5050
s.public_header_files='Firestore/Source/Public/*.h'
5151

52-
# TODO(varconst): remove once https://github.com/grpc/grpc/pull/16962 makes it
53-
# into a release.
54-
s.resource_bundles={'gRPCCertificates'=>['Firestore/etc/roots.pem']}
55-
5652
s.dependency'FirebaseAuthInterop','~> 1.0'
5753
s.dependency'FirebaseCore','~> 5.1'
54+
s.dependency'gRPC-ProtoRPC','~> 1.0'
5855
s.dependency'gRPC-C++','~> 0.0.3'
5956
s.dependency'leveldb-library','~> 1.20'
6057
s.dependency'Protobuf','~> 3.1'

Firestore/Example/Firestore.xcodeproj/project.pbxproj

+48-38
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@
8282
5492E07A202154D600B64F25 /* FIRTypeTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5492E071202154D600B64F25 /* FIRTypeTests.mm */; };
8383
5492E07F202154EC00B64F25 /* FSTTransactionTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5492E07B202154EB00B64F25 /* FSTTransactionTests.mm */; };
8484
5492E080202154EC00B64F25 /* FSTSmokeTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5492E07C202154EB00B64F25 /* FSTSmokeTests.mm */; };
85+
5492E081202154EC00B64F25 /* FSTStreamTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5492E07D202154EB00B64F25 /* FSTStreamTests.mm */; };
8586
5492E082202154EC00B64F25 /* FSTDatastoreTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5492E07E202154EC00B64F25 /* FSTDatastoreTests.mm */; };
8687
5492E09D2021552D00B64F25 /* FSTLocalStoreTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5492E0832021552A00B64F25 /* FSTLocalStoreTests.mm */; };
8788
5492E09F2021552D00B64F25 /* FSTLevelDBMigrationsTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5492E0862021552A00B64F25 /* FSTLevelDBMigrationsTests.mm */; };
@@ -360,6 +361,7 @@
360361
5492E071202154D600B64F25 /* FIRTypeTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FIRTypeTests.mm; sourceTree = "<group>"; };
361362
5492E07B202154EB00B64F25 /* FSTTransactionTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FSTTransactionTests.mm; sourceTree = "<group>"; };
362363
5492E07C202154EB00B64F25 /* FSTSmokeTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FSTSmokeTests.mm; sourceTree = "<group>"; };
364+
5492E07D202154EB00B64F25 /* FSTStreamTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FSTStreamTests.mm; sourceTree = "<group>"; };
363365
5492E07E202154EC00B64F25 /* FSTDatastoreTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FSTDatastoreTests.mm; sourceTree = "<group>"; };
364366
5492E0832021552A00B64F25 /* FSTLocalStoreTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FSTLocalStoreTests.mm; sourceTree = "<group>"; };
365367
5492E0852021552A00B64F25 /* FSTRemoteDocumentCacheTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSTRemoteDocumentCacheTests.h; sourceTree = "<group>"; };
@@ -1232,6 +1234,7 @@
12321234
DE03B3621F215E1600A30B9C /* CAcert.pem */,
12331235
5492E07E202154EC00B64F25 /* FSTDatastoreTests.mm */,
12341236
5492E07C202154EB00B64F25 /* FSTSmokeTests.mm */,
1237+
5492E07D202154EB00B64F25 /* FSTStreamTests.mm */,
12351238
5492E07B202154EB00B64F25 /* FSTTransactionTests.mm */,
12361239
);
12371240
path = Integration;
@@ -1267,7 +1270,6 @@
12671270
54C9EDEE2040E16300A969CD /* Frameworks */,
12681271
54C9EDEF2040E16300A969CD /* Resources */,
12691272
EA424838F4A5DD7B337F57AB /* [CP] Embed Pods Frameworks */,
1270-
DE5C36328822481F6EB6EF16 /* [CP] Copy Pods Resources */,
12711273
);
12721274
buildRules = (
12731275
);
@@ -1308,7 +1310,6 @@
13081310
6003F587195388D20070C39A /* Frameworks */,
13091311
6003F588195388D20070C39A /* Resources */,
13101312
1EE692C7509A98D7EB03CA51 /* [CP] Embed Pods Frameworks */,
1311-
1E7DAED3207D01F1744EA227 /* [CP] Copy Pods Resources */,
13121313
);
13131314
buildRules = (
13141315
);
@@ -1509,24 +1510,6 @@
15091510
/* End PBXResourcesBuildPhase section */
15101511

15111512
/* Begin PBXShellScriptBuildPhase section */
1512-
1E7DAED3207D01F1744EA227 /* [CP] Copy Pods Resources */ = {
1513-
isa = PBXShellScriptBuildPhase;
1514-
buildActionMask = 2147483647;
1515-
files = (
1516-
);
1517-
inputPaths = (
1518-
"${SRCROOT}/Pods/Target Support Files/Pods-Firestore_Example_iOS/Pods-Firestore_Example_iOS-resources.sh",
1519-
"${PODS_CONFIGURATION_BUILD_DIR}/FirebaseFirestore/gRPCCertificates.bundle",
1520-
);
1521-
name = "[CP] Copy Pods Resources";
1522-
outputPaths = (
1523-
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/gRPCCertificates.bundle",
1524-
);
1525-
runOnlyForDeploymentPostprocessing = 0;
1526-
shellPath = /bin/sh;
1527-
shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Firestore_Example_iOS/Pods-Firestore_Example_iOS-resources.sh\"\n";
1528-
showEnvVarsInLog = 0;
1529-
};
15301513
1EE692C7509A98D7EB03CA51 /* [CP] Embed Pods Frameworks */ = {
15311514
isa = PBXShellScriptBuildPhase;
15321515
buildActionMask = 2147483647;
@@ -1538,8 +1521,11 @@
15381521
"${BUILT_PRODUCTS_DIR}/GTMSessionFetcher/GTMSessionFetcher.framework",
15391522
"${BUILT_PRODUCTS_DIR}/GoogleUtilities/GoogleUtilities.framework",
15401523
"${BUILT_PRODUCTS_DIR}/Protobuf-iOS8.0/Protobuf.framework",
1524+
"${BUILT_PRODUCTS_DIR}/gRPC/GRPCClient.framework",
15411525
"${BUILT_PRODUCTS_DIR}/gRPC-C++/grpcpp.framework",
15421526
"${BUILT_PRODUCTS_DIR}/gRPC-Core/grpc.framework",
1527+
"${BUILT_PRODUCTS_DIR}/gRPC-ProtoRPC/ProtoRPC.framework",
1528+
"${BUILT_PRODUCTS_DIR}/gRPC-RxLibrary/RxLibrary.framework",
15431529
"${BUILT_PRODUCTS_DIR}/leveldb-library/leveldb.framework",
15441530
"${BUILT_PRODUCTS_DIR}/nanopb/nanopb.framework",
15451531
);
@@ -1549,8 +1535,11 @@
15491535
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GTMSessionFetcher.framework",
15501536
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleUtilities.framework",
15511537
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Protobuf.framework",
1538+
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GRPCClient.framework",
15521539
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/grpcpp.framework",
15531540
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/grpc.framework",
1541+
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/ProtoRPC.framework",
1542+
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RxLibrary.framework",
15541543
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/leveldb.framework",
15551544
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/nanopb.framework",
15561545
);
@@ -1768,24 +1757,6 @@
17681757
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
17691758
showEnvVarsInLog = 0;
17701759
};
1771-
DE5C36328822481F6EB6EF16 /* [CP] Copy Pods Resources */ = {
1772-
isa = PBXShellScriptBuildPhase;
1773-
buildActionMask = 2147483647;
1774-
files = (
1775-
);
1776-
inputPaths = (
1777-
"${SRCROOT}/Pods/Target Support Files/Pods-Firestore_Example_iOS-Firestore_SwiftTests_iOS/Pods-Firestore_Example_iOS-Firestore_SwiftTests_iOS-resources.sh",
1778-
"${PODS_CONFIGURATION_BUILD_DIR}/FirebaseFirestore/gRPCCertificates.bundle",
1779-
);
1780-
name = "[CP] Copy Pods Resources";
1781-
outputPaths = (
1782-
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/gRPCCertificates.bundle",
1783-
);
1784-
runOnlyForDeploymentPostprocessing = 0;
1785-
shellPath = /bin/sh;
1786-
shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Firestore_Example_iOS-Firestore_SwiftTests_iOS/Pods-Firestore_Example_iOS-Firestore_SwiftTests_iOS-resources.sh\"\n";
1787-
showEnvVarsInLog = 0;
1788-
};
17891760
EA424838F4A5DD7B337F57AB /* [CP] Embed Pods Frameworks */ = {
17901761
isa = PBXShellScriptBuildPhase;
17911762
buildActionMask = 2147483647;
@@ -1797,8 +1768,11 @@
17971768
"${BUILT_PRODUCTS_DIR}/GTMSessionFetcher/GTMSessionFetcher.framework",
17981769
"${BUILT_PRODUCTS_DIR}/GoogleUtilities/GoogleUtilities.framework",
17991770
"${BUILT_PRODUCTS_DIR}/Protobuf-iOS8.0/Protobuf.framework",
1771+
"${BUILT_PRODUCTS_DIR}/gRPC/GRPCClient.framework",
18001772
"${BUILT_PRODUCTS_DIR}/gRPC-C++/grpcpp.framework",
18011773
"${BUILT_PRODUCTS_DIR}/gRPC-Core/grpc.framework",
1774+
"${BUILT_PRODUCTS_DIR}/gRPC-ProtoRPC/ProtoRPC.framework",
1775+
"${BUILT_PRODUCTS_DIR}/gRPC-RxLibrary/RxLibrary.framework",
18021776
"${BUILT_PRODUCTS_DIR}/leveldb-library/leveldb.framework",
18031777
"${BUILT_PRODUCTS_DIR}/nanopb/nanopb.framework",
18041778
);
@@ -1808,8 +1782,11 @@
18081782
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GTMSessionFetcher.framework",
18091783
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleUtilities.framework",
18101784
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Protobuf.framework",
1785+
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GRPCClient.framework",
18111786
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/grpcpp.framework",
18121787
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/grpc.framework",
1788+
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/ProtoRPC.framework",
1789+
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RxLibrary.framework",
18131790
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/leveldb.framework",
18141791
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/nanopb.framework",
18151792
);
@@ -2029,6 +2006,7 @@
20292006
5492E0422021440500B64F25 /* FSTHelpers.mm in Sources */,
20302007
5491BC731FB44593008B3588 /* FSTIntegrationTestCase.mm in Sources */,
20312008
5492E080202154EC00B64F25 /* FSTSmokeTests.mm in Sources */,
2009+
5492E081202154EC00B64F25 /* FSTStreamTests.mm in Sources */,
20322010
5492E07F202154EC00B64F25 /* FSTTransactionTests.mm in Sources */,
20332011
5492E0442021457E00B64F25 /* XCTestCase+Await.mm in Sources */,
20342012
B67BF44A216EB43000CA9097 /* create_noop_connectivity_monitor.cc in Sources */,
@@ -2241,6 +2219,14 @@
22412219
"-iquote",
22422220
"\"${PODS_CONFIGURATION_BUILD_DIR}/Protobuf/Protobuf.framework/Headers\"",
22432221
"-iquote",
2222+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-Core/grpc.framework/Headers\"",
2223+
"-iquote",
2224+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-ProtoRPC/ProtoRPC.framework/Headers\"",
2225+
"-iquote",
2226+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-RxLibrary/RxLibrary.framework/Headers\"",
2227+
"-iquote",
2228+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC/GRPCClient.framework/Headers\"",
2229+
"-iquote",
22442230
"\"${PODS_CONFIGURATION_BUILD_DIR}/leveldb-library/leveldb.framework/Headers\"",
22452231
"-iquote",
22462232
"\"${PODS_CONFIGURATION_BUILD_DIR}/nanopb/nanopb.framework/Headers\"",
@@ -2317,6 +2303,14 @@
23172303
"-iquote",
23182304
"\"${PODS_CONFIGURATION_BUILD_DIR}/Protobuf/Protobuf.framework/Headers\"",
23192305
"-iquote",
2306+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-Core/grpc.framework/Headers\"",
2307+
"-iquote",
2308+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-ProtoRPC/ProtoRPC.framework/Headers\"",
2309+
"-iquote",
2310+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-RxLibrary/RxLibrary.framework/Headers\"",
2311+
"-iquote",
2312+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC/GRPCClient.framework/Headers\"",
2313+
"-iquote",
23202314
"\"${PODS_CONFIGURATION_BUILD_DIR}/leveldb-library/leveldb.framework/Headers\"",
23212315
"-iquote",
23222316
"\"${PODS_CONFIGURATION_BUILD_DIR}/nanopb/nanopb.framework/Headers\"",
@@ -2518,6 +2512,14 @@
25182512
"-iquote",
25192513
"\"${PODS_CONFIGURATION_BUILD_DIR}/Protobuf/Protobuf.framework/Headers\"",
25202514
"-iquote",
2515+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-Core/grpc.framework/Headers\"",
2516+
"-iquote",
2517+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-ProtoRPC/ProtoRPC.framework/Headers\"",
2518+
"-iquote",
2519+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-RxLibrary/RxLibrary.framework/Headers\"",
2520+
"-iquote",
2521+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC/GRPCClient.framework/Headers\"",
2522+
"-iquote",
25212523
"\"${PODS_CONFIGURATION_BUILD_DIR}/leveldb-library/leveldb.framework/Headers\"",
25222524
"-iquote",
25232525
"\"${PODS_CONFIGURATION_BUILD_DIR}/nanopb/nanopb.framework/Headers\"",
@@ -2595,6 +2597,14 @@
25952597
"-iquote",
25962598
"\"${PODS_CONFIGURATION_BUILD_DIR}/Protobuf/Protobuf.framework/Headers\"",
25972599
"-iquote",
2600+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-Core/grpc.framework/Headers\"",
2601+
"-iquote",
2602+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-ProtoRPC/ProtoRPC.framework/Headers\"",
2603+
"-iquote",
2604+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC-RxLibrary/RxLibrary.framework/Headers\"",
2605+
"-iquote",
2606+
"\"${PODS_CONFIGURATION_BUILD_DIR}/gRPC/GRPCClient.framework/Headers\"",
2607+
"-iquote",
25982608
"\"${PODS_CONFIGURATION_BUILD_DIR}/leveldb-library/leveldb.framework/Headers\"",
25992609
"-iquote",
26002610
"\"${PODS_CONFIGURATION_BUILD_DIR}/nanopb/nanopb.framework/Headers\"",

Firestore/Example/Tests/Integration/FSTDatastoreTests.mm

+3-5
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717
#import<FirebaseFirestore/FirebaseFirestore.h>
1818

1919
#import<FirebaseFirestore/FIRTimestamp.h>
20+
#import<GRPCClient/GRPCCall+ChannelCredentials.h>
21+
#import<GRPCClient/GRPCCall+Tests.h>
2022
#import<XCTest/XCTest.h>
2123

2224
#import"Firestore/Source/API/FIRDocumentReference+Internal.h"
@@ -50,7 +52,6 @@
5052
using firebase::firestore::model::DocumentKeySet;
5153
using firebase::firestore::model::Precondition;
5254
using firebase::firestore::model::TargetId;
53-
using firebase::firestore::remote::GrpcConnection;
5455

5556
NS_ASSUME_NONNULL_BEGIN
5657

@@ -161,7 +162,7 @@ - (void)setUp {
161162
NSString *projectID = [FSTIntegrationTestCase projectID];
162163
FIRFirestoreSettings *settings = [FSTIntegrationTestCase settings];
163164
if (!settings.sslEnabled) {
164-
GrpcConnection::UseInsecureChannel(util::MakeString(settings.host));
165+
[GRPCCall useInsecureConnectionsForHost:settings.host];
165166
}
166167

167168
DatabaseId database_id(util::MakeString(projectID), DatabaseId::kDefault);
@@ -221,9 +222,6 @@ - (void)testStreamingWrite {
221222
mutations:@[ mutation ]];
222223
[_testWorkerQueue dispatchAsync:^{
223224
[_remoteStore addBatchToWritePipeline:batch];
224-
// The added batch won't be written immediately because write stream wasn't yet open --
225-
// trigger its opening.
226-
[_remoteStore fillWritePipeline];
227225
}];
228226

229227
[selfawaitExpectations];

0 commit comments

Comments
 (0)
close