Pārlūkot izejas kodu

Cherry picks for 8.9.1 (#8894)

Paul Beusterien 4 gadi atpakaļ
vecāks
revīzija
6a723ec18f

+ 6 - 6
Firebase.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
   s.name             = 'Firebase'
-  s.version          = '8.9.0'
+  s.version          = '8.9.1'
   s.summary          = 'Firebase'
 
   s.description      = <<-DESC
@@ -34,14 +34,14 @@ Simplify your app development, grow your user base, and monetize more effectivel
     ss.ios.deployment_target = '9.0'
     ss.osx.deployment_target = '10.12'
     ss.tvos.deployment_target = '12.0'
-    ss.ios.dependency 'FirebaseAnalytics', '~> 8.9.0'
-    ss.osx.dependency 'FirebaseAnalytics', '~> 8.9.0'
-    ss.tvos.dependency 'FirebaseAnalytics', '~> 8.9.0'
+    ss.ios.dependency 'FirebaseAnalytics', '~> 8.9.1'
+    ss.osx.dependency 'FirebaseAnalytics', '~> 8.9.1'
+    ss.tvos.dependency 'FirebaseAnalytics', '~> 8.9.1'
     ss.dependency 'Firebase/CoreOnly'
   end
 
   s.subspec 'CoreOnly' do |ss|
-    ss.dependency 'FirebaseCore', '8.9.0'
+    ss.dependency 'FirebaseCore', '8.9.1'
     ss.source_files = 'CoreOnly/Sources/Firebase.h'
     ss.preserve_paths = 'CoreOnly/Sources/module.modulemap'
     if ENV['FIREBASE_POD_REPO_FOR_DEV_POD'] then
@@ -77,7 +77,7 @@ Simplify your app development, grow your user base, and monetize more effectivel
     ss.ios.deployment_target = '9.0'
     ss.osx.deployment_target = '10.12'
     ss.tvos.deployment_target = '12.0'
-    ss.ios.dependency 'FirebaseAnalytics/WithoutAdIdSupport', '~> 8.9.0'
+    ss.ios.dependency 'FirebaseAnalytics/WithoutAdIdSupport', '~> 8.9.1'
     ss.dependency 'Firebase/CoreOnly'
   end
 

+ 4 - 4
FirebaseAnalytics.podspec.json

@@ -32,13 +32,13 @@
         "tvos": "12.0"
     },
     "source": {
-        "http": "https://dl.google.com/firebase/ios/analytics/5c7aebede686658a/FirebaseAnalytics-8.9.0.tar.gz"
+        "http": "https://dl.google.com/firebase/ios/analytics/66ce3623aa8037ff/FirebaseAnalytics-8.9.1.tar.gz"
     },
     "subspecs": [
         {
             "name": "AdIdSupport",
             "dependencies": {
-                "GoogleAppMeasurement": "8.9.0"
+                "GoogleAppMeasurement": "8.9.1"
             },
             "vendored_frameworks": [
                 "Frameworks/FirebaseAnalytics.xcframework"
@@ -47,7 +47,7 @@
         {
             "name": "WithoutAdIdSupport",
             "dependencies": {
-                "GoogleAppMeasurement/WithoutAdIdSupport": "8.9.0"
+                "GoogleAppMeasurement/WithoutAdIdSupport": "8.9.1"
             },
             "vendored_frameworks": [
                 "Frameworks/FirebaseAnalytics.xcframework"
@@ -55,5 +55,5 @@
         }
     ],
     "summary": "Firebase Analytics for iOS",
-    "version": "8.9.0"
+    "version": "8.9.1"
 }

+ 1 - 1
FirebaseCore.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
   s.name             = 'FirebaseCore'
-  s.version          = '8.9.0'
+  s.version          = '8.9.1'
   s.summary          = 'Firebase Core'
 
   s.description      = <<-DESC

+ 3 - 3
GoogleAppMeasurement.podspec.json

@@ -30,13 +30,13 @@
         "tvos": "12.0"
     },
     "source": {
-        "http": "https://dl.google.com/firebase/ios/analytics/a799244947fd06e8/GoogleAppMeasurement-8.9.0.tar.gz"
+        "http": "https://dl.google.com/firebase/ios/analytics/59128155f949f77d/GoogleAppMeasurement-8.9.1.tar.gz"
     },
     "subspecs": [
         {
             "name": "AdIdSupport",
             "dependencies": {
-                "GoogleAppMeasurement/WithoutAdIdSupport": "8.9.0"
+                "GoogleAppMeasurement/WithoutAdIdSupport": "8.9.1"
             },
             "vendored_frameworks": [
                 "Frameworks/GoogleAppMeasurementIdentitySupport.xcframework"
@@ -50,5 +50,5 @@
         }
     ],
     "summary": "Shared measurement methods for Google libraries. Not intended for direct use.",
-    "version": "8.9.0"
+    "version": "8.9.1"
 }

+ 4 - 4
Package.swift

@@ -17,7 +17,7 @@
 
 import PackageDescription
 
-let firebaseVersion = "8.9.0"
+let firebaseVersion = "8.9.1"
 
 let package = Package(
   name: "Firebase",
@@ -144,7 +144,7 @@ let package = Package(
       url: "https://github.com/google/GoogleAppMeasurement.git",
       // Note that CI changes the version to the head of main for CI.
       // See scripts/setup_spm_tests.sh.
-      .exact("8.9.0")
+      .exact("8.9.1")
     ),
     .package(
       name: "GoogleDataTransport",
@@ -297,8 +297,8 @@ let package = Package(
     ),
     .binaryTarget(
       name: "FirebaseAnalytics",
-      url: "https://dl.google.com/firebase/ios/swiftpm/8.9.0/FirebaseAnalytics.zip",
-      checksum: "0c1075259f9ee3e737a16c64fc9096d0d0bbbf4887cf95aefe99a6b690cd096e"
+      url: "https://dl.google.com/firebase/ios/swiftpm/8.9.1/FirebaseAnalytics.zip",
+      checksum: "397688619b1d2eb2731fd06d094b95498e753519b4c0c75a6f7071bcafd9d1f1"
     ),
     .target(
       name: "FirebaseAnalyticsSwiftTarget",

+ 1 - 1
ReleaseTooling/Sources/FirebaseManifest/FirebaseManifest.swift

@@ -21,7 +21,7 @@ import Foundation
 /// The version and releasing fields of the non-Firebase pods should be reviewed every release.
 /// The array should be ordered so that any pod's dependencies precede it in the list.
 public let shared = Manifest(
-  version: "8.9.0",
+  version: "8.9.1",
   pods: [
     Pod("FirebaseCoreDiagnostics", zip: true),
     Pod("FirebaseCore", zip: true),

+ 19 - 1
ReleaseTooling/Sources/ZipBuilder/CocoaPodUtils.swift

@@ -16,6 +16,7 @@
 
 import Foundation
 import Utils
+import FirebaseManifest
 
 /// CocoaPod related utility functions. The enum type is used as a namespace here instead of having
 /// root functions, and no cases should be added to it.
@@ -474,6 +475,9 @@ enum CocoaPodUtils {
     """
 
     var versionsSpecified = false
+    let firebaseVersion = FirebaseManifest.shared.version
+    let versionChunks = firebaseVersion.split(separator: ".")
+    let minorVersion = "\(versionChunks[0]).\(versionChunks[1]).0"
 
     // Loop through the subspecs passed in and use the actual Pod name.
     for pod in pods {
@@ -483,7 +487,21 @@ enum CocoaPodUtils {
         FileManager.default.fileExists(atPath: localURL.appendingPathComponent(podspec).path) {
         podfile += "  pod '\(pod.name)', :path => '\(localURL.path)'"
       } else if let podVersion = pod.version {
-        podfile += "  pod '\(pod.name)', '\(podVersion)'"
+        // To support Firebase patch versions in the Firebase zip distribution, allow patch updates
+        // for all pods except Firebase and FirebaseCore. The Firebase Swift pods are not yet in the
+        // zip distribution.
+        var podfileVersion = podVersion
+        if pod.name.starts(with: "Firebase"),
+          !pod.name.hasSuffix("Swift"),
+          pod.name != "Firebase",
+          pod.name != "FirebaseCore" {
+          podfileVersion = podfileVersion.replacingOccurrences(
+            of: firebaseVersion,
+            with: minorVersion
+          )
+          podfileVersion = "~> \(podfileVersion)"
+        }
+        podfile += "  pod '\(pod.name)', '\(podfileVersion)'"
       } else if pod.name.starts(with: "Firebase"),
         let localURL = localPodspecPath,
         FileManager.default