Skip to content

Commit 8e7cbcf

Browse files
committed
Merge remote-tracking branch 'origin/main' into JesusRojass/#10220
2 parents ca1ca28 + dd4b95d commit 8e7cbcf

File tree

82 files changed

+1441
-285
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

82 files changed

+1441
-285
lines changed

.github/workflows/crashlytics.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ on:
1818
- 'Interop/Analytics/Public/*.h'
1919
- 'Gemfile*'
2020
schedule:
21-
# Run every day at 7pm (PDT) / 10pm (EDT) - cron uses UTC times
22-
- cron: '0 2 * * *'
21+
# Run every day at 11pm (PDT) / 2am (EDT) - cron uses UTC times
22+
- cron: '0 6 * * *'
2323

2424
concurrency:
2525
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}

Carthage.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ Firebase components that you want to include in your app. Note that
3131

3232
```
3333
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseABTestingBinary.json"
34-
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseAIBinary.json"
34+
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseAILogicBinary.json"
3535
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseAdMobBinary.json"
3636
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseAnalyticsBinary.json"
3737
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseAppCheckBinary.json"

Crashlytics/Shared/FIRCLSMachO/FIRCLSMachOBinary.m

Lines changed: 3 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,11 @@
1414

1515
#import "Crashlytics/Shared/FIRCLSMachO/FIRCLSMachOBinary.h"
1616

17-
#import "Crashlytics/Shared/FIRCLSMachO/FIRCLSMachOSlice.h"
18-
1917
#import <CommonCrypto/CommonHMAC.h>
18+
#import "Crashlytics/Crashlytics/Helpers/FIRCLSUtility.h"
19+
#import "Crashlytics/Shared/FIRCLSByteUtility.h"
20+
#import "Crashlytics/Shared/FIRCLSMachO/FIRCLSMachOSlice.h"
2021

21-
static void FIRCLSSafeHexToString(const uint8_t* value, size_t length, char* outputBuffer);
22-
static NSString* FIRCLSNSDataToNSString(NSData* data);
23-
static NSString* FIRCLSHashBytes(const void* bytes, size_t length);
2422
static NSString* FIRCLSHashNSString(NSString* value);
2523

2624
@interface FIRCLSMachOBinary ()
@@ -116,58 +114,6 @@ + (NSString*)hashNSString:(NSString*)value {
116114

117115
@end
118116

119-
// TODO: Functions copied from the SDK. We should figure out a way to share this.
120-
static void FIRCLSSafeHexToString(const uint8_t* value, size_t length, char* outputBuffer) {
121-
const char hex[] = "0123456789abcdef";
122-
123-
if (!value) {
124-
outputBuffer[0] = '\0';
125-
return;
126-
}
127-
128-
for (size_t i = 0; i < length; ++i) {
129-
unsigned char c = value[i];
130-
outputBuffer[i * 2] = hex[c >> 4];
131-
outputBuffer[i * 2 + 1] = hex[c & 0x0F];
132-
}
133-
134-
outputBuffer[length * 2] = '\0'; // null terminate
135-
}
136-
137-
static NSString* FIRCLSNSDataToNSString(NSData* data) {
138-
NSString* string;
139-
char* buffer;
140-
size_t size;
141-
NSUInteger length;
142-
143-
// we need 2 hex char for every byte of data, plus one more spot for a
144-
// null terminator
145-
length = [data length];
146-
size = (length * 2) + 1;
147-
buffer = calloc(1, sizeof(char) * size);
148-
149-
if (!buffer) {
150-
return nil;
151-
}
152-
153-
FIRCLSSafeHexToString([data bytes], length, buffer);
154-
155-
string = [NSString stringWithUTF8String:buffer];
156-
157-
free(buffer);
158-
159-
return string;
160-
}
161-
162-
static NSString* FIRCLSHashBytes(const void* bytes, size_t length) {
163-
uint8_t digest[CC_SHA1_DIGEST_LENGTH] = {0};
164-
CC_SHA1(bytes, (CC_LONG)length, digest);
165-
166-
NSData* result = [NSData dataWithBytes:digest length:CC_SHA1_DIGEST_LENGTH];
167-
168-
return FIRCLSNSDataToNSString(result);
169-
}
170-
171117
static NSString* FIRCLSHashNSString(NSString* value) {
172118
const char* s = [value cStringUsingEncoding:NSUTF8StringEncoding];
173119

Firebase.podspec

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = 'Firebase'
3-
s.version = '12.5.0'
3+
s.version = '12.6.0'
44
s.summary = 'Firebase'
55

66
s.description = <<-DESC
@@ -36,14 +36,14 @@ Simplify your app development, grow your user base, and monetize more effectivel
3636
ss.ios.deployment_target = '15.0'
3737
ss.osx.deployment_target = '10.15'
3838
ss.tvos.deployment_target = '15.0'
39-
ss.ios.dependency 'FirebaseAnalytics', '~> 12.5.0'
40-
ss.osx.dependency 'FirebaseAnalytics', '~> 12.5.0'
41-
ss.tvos.dependency 'FirebaseAnalytics', '~> 12.5.0'
39+
ss.ios.dependency 'FirebaseAnalytics', '~> 12.6.0'
40+
ss.osx.dependency 'FirebaseAnalytics', '~> 12.6.0'
41+
ss.tvos.dependency 'FirebaseAnalytics', '~> 12.6.0'
4242
ss.dependency 'Firebase/CoreOnly'
4343
end
4444

4545
s.subspec 'CoreOnly' do |ss|
46-
ss.dependency 'FirebaseCore', '~> 12.5.0'
46+
ss.dependency 'FirebaseCore', '~> 12.6.0'
4747
ss.source_files = 'CoreOnly/Sources/Firebase.h'
4848
ss.preserve_paths = 'CoreOnly/Sources/module.modulemap'
4949
if ENV['FIREBASE_POD_REPO_FOR_DEV_POD'] then
@@ -70,7 +70,7 @@ Simplify your app development, grow your user base, and monetize more effectivel
7070

7171
s.subspec 'ABTesting' do |ss|
7272
ss.dependency 'Firebase/CoreOnly'
73-
ss.dependency 'FirebaseABTesting', '~> 12.5.0'
73+
ss.dependency 'FirebaseABTesting', '~> 12.6.0'
7474
# Standard platforms PLUS watchOS.
7575
ss.ios.deployment_target = '15.0'
7676
ss.osx.deployment_target = '10.15'
@@ -80,13 +80,13 @@ Simplify your app development, grow your user base, and monetize more effectivel
8080

8181
s.subspec 'AppDistribution' do |ss|
8282
ss.dependency 'Firebase/CoreOnly'
83-
ss.ios.dependency 'FirebaseAppDistribution', '~> 12.5.0-beta'
83+
ss.ios.dependency 'FirebaseAppDistribution', '~> 12.6.0-beta'
8484
ss.ios.deployment_target = '15.0'
8585
end
8686

8787
s.subspec 'AppCheck' do |ss|
8888
ss.dependency 'Firebase/CoreOnly'
89-
ss.dependency 'FirebaseAppCheck', '~> 12.5.0'
89+
ss.dependency 'FirebaseAppCheck', '~> 12.6.0'
9090
ss.ios.deployment_target = '15.0'
9191
ss.osx.deployment_target = '10.15'
9292
ss.tvos.deployment_target = '15.0'
@@ -95,7 +95,7 @@ Simplify your app development, grow your user base, and monetize more effectivel
9595

9696
s.subspec 'Auth' do |ss|
9797
ss.dependency 'Firebase/CoreOnly'
98-
ss.dependency 'FirebaseAuth', '~> 12.5.0'
98+
ss.dependency 'FirebaseAuth', '~> 12.6.0'
9999
# Standard platforms PLUS watchOS.
100100
ss.ios.deployment_target = '15.0'
101101
ss.osx.deployment_target = '10.15'
@@ -105,7 +105,7 @@ Simplify your app development, grow your user base, and monetize more effectivel
105105

106106
s.subspec 'Crashlytics' do |ss|
107107
ss.dependency 'Firebase/CoreOnly'
108-
ss.dependency 'FirebaseCrashlytics', '~> 12.5.0'
108+
ss.dependency 'FirebaseCrashlytics', '~> 12.6.0'
109109
# Standard platforms PLUS watchOS.
110110
ss.ios.deployment_target = '15.0'
111111
ss.osx.deployment_target = '10.15'
@@ -115,7 +115,7 @@ Simplify your app development, grow your user base, and monetize more effectivel
115115

116116
s.subspec 'Database' do |ss|
117117
ss.dependency 'Firebase/CoreOnly'
118-
ss.dependency 'FirebaseDatabase', '~> 12.5.0'
118+
ss.dependency 'FirebaseDatabase', '~> 12.6.0'
119119
# Standard platforms PLUS watchOS 7.
120120
ss.ios.deployment_target = '15.0'
121121
ss.osx.deployment_target = '10.15'
@@ -125,15 +125,15 @@ Simplify your app development, grow your user base, and monetize more effectivel
125125

126126
s.subspec 'Firestore' do |ss|
127127
ss.dependency 'Firebase/CoreOnly'
128-
ss.dependency 'FirebaseFirestore', '~> 12.5.0'
128+
ss.dependency 'FirebaseFirestore', '~> 12.6.0'
129129
ss.ios.deployment_target = '15.0'
130130
ss.osx.deployment_target = '10.15'
131131
ss.tvos.deployment_target = '15.0'
132132
end
133133

134134
s.subspec 'Functions' do |ss|
135135
ss.dependency 'Firebase/CoreOnly'
136-
ss.dependency 'FirebaseFunctions', '~> 12.5.0'
136+
ss.dependency 'FirebaseFunctions', '~> 12.6.0'
137137
# Standard platforms PLUS watchOS.
138138
ss.ios.deployment_target = '15.0'
139139
ss.osx.deployment_target = '10.15'
@@ -143,20 +143,20 @@ Simplify your app development, grow your user base, and monetize more effectivel
143143

144144
s.subspec 'InAppMessaging' do |ss|
145145
ss.dependency 'Firebase/CoreOnly'
146-
ss.ios.dependency 'FirebaseInAppMessaging', '~> 12.5.0-beta'
147-
ss.tvos.dependency 'FirebaseInAppMessaging', '~> 12.5.0-beta'
146+
ss.ios.dependency 'FirebaseInAppMessaging', '~> 12.6.0-beta'
147+
ss.tvos.dependency 'FirebaseInAppMessaging', '~> 12.6.0-beta'
148148
ss.ios.deployment_target = '15.0'
149149
ss.tvos.deployment_target = '15.0'
150150
end
151151

152152
s.subspec 'Installations' do |ss|
153153
ss.dependency 'Firebase/CoreOnly'
154-
ss.dependency 'FirebaseInstallations', '~> 12.5.0'
154+
ss.dependency 'FirebaseInstallations', '~> 12.6.0'
155155
end
156156

157157
s.subspec 'Messaging' do |ss|
158158
ss.dependency 'Firebase/CoreOnly'
159-
ss.dependency 'FirebaseMessaging', '~> 12.5.0'
159+
ss.dependency 'FirebaseMessaging', '~> 12.6.0'
160160
# Standard platforms PLUS watchOS.
161161
ss.ios.deployment_target = '15.0'
162162
ss.osx.deployment_target = '10.15'
@@ -166,7 +166,7 @@ Simplify your app development, grow your user base, and monetize more effectivel
166166

167167
s.subspec 'MLModelDownloader' do |ss|
168168
ss.dependency 'Firebase/CoreOnly'
169-
ss.dependency 'FirebaseMLModelDownloader', '~> 12.5.0-beta'
169+
ss.dependency 'FirebaseMLModelDownloader', '~> 12.6.0-beta'
170170
# Standard platforms PLUS watchOS.
171171
ss.ios.deployment_target = '15.0'
172172
ss.osx.deployment_target = '10.15'
@@ -176,15 +176,15 @@ Simplify your app development, grow your user base, and monetize more effectivel
176176

177177
s.subspec 'Performance' do |ss|
178178
ss.dependency 'Firebase/CoreOnly'
179-
ss.ios.dependency 'FirebasePerformance', '~> 12.5.0'
180-
ss.tvos.dependency 'FirebasePerformance', '~> 12.5.0'
179+
ss.ios.dependency 'FirebasePerformance', '~> 12.6.0'
180+
ss.tvos.dependency 'FirebasePerformance', '~> 12.6.0'
181181
ss.ios.deployment_target = '15.0'
182182
ss.tvos.deployment_target = '15.0'
183183
end
184184

185185
s.subspec 'RemoteConfig' do |ss|
186186
ss.dependency 'Firebase/CoreOnly'
187-
ss.dependency 'FirebaseRemoteConfig', '~> 12.5.0'
187+
ss.dependency 'FirebaseRemoteConfig', '~> 12.6.0'
188188
# Standard platforms PLUS watchOS.
189189
ss.ios.deployment_target = '15.0'
190190
ss.osx.deployment_target = '10.15'
@@ -194,7 +194,7 @@ Simplify your app development, grow your user base, and monetize more effectivel
194194

195195
s.subspec 'Storage' do |ss|
196196
ss.dependency 'Firebase/CoreOnly'
197-
ss.dependency 'FirebaseStorage', '~> 12.5.0'
197+
ss.dependency 'FirebaseStorage', '~> 12.6.0'
198198
# Standard platforms PLUS watchOS.
199199
ss.ios.deployment_target = '15.0'
200200
ss.osx.deployment_target = '10.15'

FirebaseABTesting.podspec

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = 'FirebaseABTesting'
3-
s.version = '12.5.0'
3+
s.version = '12.6.0'
44
s.summary = 'Firebase ABTesting'
55

66
s.description = <<-DESC
@@ -51,7 +51,7 @@ Firebase Cloud Messaging and Firebase Remote Config in your app.
5151
s.pod_target_xcconfig = {
5252
'HEADER_SEARCH_PATHS' => '"${PODS_TARGET_SRCROOT}"'
5353
}
54-
s.dependency 'FirebaseCore', '~> 12.5.0'
54+
s.dependency 'FirebaseCore', '~> 12.6.0'
5555

5656
s.test_spec 'unit' do |unit_tests|
5757
unit_tests.scheme = { :code_coverage => true }

FirebaseAI.podspec

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = 'FirebaseAI'
3-
s.version = '12.5.0'
3+
s.version = '12.6.0'
44
s.summary = 'Firebase AI SDK'
55

66
s.description = <<-DESC
@@ -43,8 +43,8 @@ Build AI-powered apps and features with the Gemini API using the Firebase AI SDK
4343
s.tvos.framework = 'UIKit'
4444
s.watchos.framework = 'WatchKit'
4545

46-
s.dependency 'FirebaseAILogic', '12.5.0'
47-
s.dependency 'FirebaseCore', '~> 12.5.0'
46+
s.dependency 'FirebaseAILogic', '12.6.0'
47+
s.dependency 'FirebaseCore', '~> 12.6.0'
4848

4949
s.test_spec 'unit' do |unit_tests|
5050
unit_tests_dir = 'FirebaseAI/Wrapper/Tests/'

FirebaseAI/Sources/AILog.swift

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ enum AILog {
8787
case generateContentResponseEmptyCandidates = 4003
8888
case invalidWebsocketURL = 4004
8989
case duplicateLiveSessionSetupComplete = 4005
90+
case malformedURL = 4006
9091

9192
// SDK Debugging
9293
case loadRequestStreamResponseLine = 5000
@@ -138,6 +139,17 @@ enum AILog {
138139
log(level: .debug, code: code, message)
139140
}
140141

142+
@available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *)
143+
static func makeInternalError(message: String, code: MessageCode) -> GenerateContentError {
144+
let error = GenerateContentError.internalError(underlying: NSError(
145+
domain: "\(Constants.baseErrorDomain).Internal",
146+
code: code.rawValue,
147+
userInfo: [NSLocalizedDescriptionKey: message]
148+
))
149+
AILog.error(code: code, message)
150+
return error
151+
}
152+
141153
/// Returns `true` if additional logging has been enabled via a launch argument.
142154
static func additionalLoggingEnabled() -> Bool {
143155
return ProcessInfo.processInfo.arguments.contains(enableArgumentKey)

0 commit comments

Comments
 (0)