fermoya / cocoapods-catalyst-support

Ruby extensions to help you configure your pods project so that pods not compiled for Catalyst can still be used for iOS devices
MIT License
111 stars 18 forks source link

[BUG] FirebaseCrashlytics compilation error #11

Closed Brett-Best closed 3 years ago

Brett-Best commented 3 years ago

Describe the bug I’m integrating Firebase Analytics into an app I’m working on and it’s not working. Perhaps these logs will help, otherwise, I can try to make a sample project to reproduce it.

I’m getting a compilation error when trying to build my app. It seems that the script is affecting the FirebaseCrashytics build.

image

Stack

   CocoaPods : 1.10.0
        Ruby : ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-darwin19]
    RubyGems : 3.2.1
        Host : macOS 11.2 (20D5029f)
       Xcode : 12.3 (12C33)
         Git : git version 2.29.2
Ruby lib dir : /Users/brettbest/.rbenv/versions/2.7.0/lib
Repositories : trunk - CDN - https://cdn.cocoapods.org/

Installation Source

Executable Path: /Users/brettbest/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/bin/pod

Plugins

cocoapods-deintegrate : 1.0.4
cocoapods-plugins     : 1.0.0
cocoapods-search      : 1.0.0
cocoapods-trunk       : 1.5.0
cocoapods-try         : 1.2.0

Podfile

load 'CatalystPodSupport/remove_ios_only_frameworks.rb'

project 'medCompanion', 'Release - Production' => :release, 'Release - Staging' => :release, 'Release - Development' => :release, 'Debug - Production' => :debug, 'Debug - Staging' => :debug, 'Debug - Development' => :debug

platform :ios, '13.1'

inhibit_all_warnings!

def reveal_sdk_pod
  # UI Debugging - Reveal-SDK isn't included in the archived version of the app.
  pod 'Reveal-SDK', :configurations => ['Debug - Production', 'Debug - Staging', "Debug - Development"]
end

def shared_pods
  # UI
  pod 'SwiftUIX', :git => 'https://github.com/Brett-Best/SwiftUIX.git', :branch => 'master'
  pod 'PureSwiftUI', :git => 'https://github.com/Brett-Best/pure-swift-ui.git', :branch => 'feature/MPP-Support'
  pod 'PureSwiftUITools', :git => 'https://github.com/Brett-Best/pure-swift-ui-tools.git', :branch => 'feature/MPP-Support-CP'

  # Networking
  pod 'Alamofire'
  pod 'AlamofireImage'
  pod 'Moya', '15.0.0-alpha.1'

  # Async Handling
  pod 'PromiseKit', :subspecs => ['CoreLocation', 'CorePromise', 'Foundation', 'UIKit']

  # Crash reporting + analytics
  pod 'Firebase', :subspecs => ['Analytics', 'Crashlytics']

  # Security
  pod 'KeychainAccess'

  reveal_sdk_pod

  # Linting
  pod 'SwiftLint'
end

target 'medCompanion iOS' do
  use_frameworks!

  shared_pods

  # UI
  pod 'QRCodeReader.swift', :git => 'https://github.com/Brett-Best/QRCodeReader.swift.git', :branch => 'fix/mac-catalyst'

  # Licenses
  pod 'LicensePlist'

  target 'medCompanion iOS Tests' do
    inherit! :search_paths
  end

  target 'medCompanion iOS UI Tests' do

  end

end

target 'medCompanion iOS Today Extension' do
  use_frameworks!

  shared_pods
end

target 'medCompanion iOS Widget Extension' do
  use_frameworks!

  shared_pods
end

target 'medCompanion iOS App Clip' do
  platform :ios, '14.0'

  use_modular_headers!

  # Linting
  pod 'SwiftLint'

  # Networking
  pod 'Alamofire'
  pod 'Kingfisher', :git => 'https://github.com/onevcat/Kingfisher.git', :branch => 'master'

  target 'medCompanion iOS App Clip Tests' do
    inherit! :search_paths
  end

  target 'medCompanion iOS App Clip UI Tests' do

  end
end

target 'medCompanion watchOS' do
  platform :watchos, '7.0'
  use_frameworks!
end

target 'medCompanion watchOS Extension' do
  platform :watchos, '7.0'
  use_frameworks!

  # UI
  pod 'SwiftUIX', :git => 'https://github.com/Brett-Best/SwiftUIX.git', :branch => 'master'
  pod 'PureSwiftUI', :git => 'https://github.com/Brett-Best/pure-swift-ui.git', :branch => 'feature/MPP-Support'
  pod 'PureSwiftUITools', :git => 'https://github.com/Brett-Best/pure-swift-ui-tools.git', :branch => 'feature/MPP-Support-CP'

  # Networking
  pod 'Alamofire'
  pod 'AlamofireImage'
  pod 'Moya', '15.0.0-alpha.1'

  # Async Handling
  pod 'PromiseKit', :subspecs => ['CoreLocation', 'CorePromise', 'Foundation']

  # Crash reporting
  pod 'Firebase', :subspecs => ['Crashlytics']

  # Security
  pod 'KeychainAccess'

  # Linting
  pod 'SwiftLint'
end

def catalyst_unsupported_pods
  ['Firebase/Analytics']
end

def debug
  true
end

post_install do |installer|
  system('./Scripts/generate-acknowledgements.sh')
  installer.configure_support_catalyst
  installer.pods_project.build_configurations.each do |config|
    config.build_settings['OTHER_SWIFT_FLAGS'] = "$(inherited) -Xfrontend -enable-experimental-concise-pound-file"
  end
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.1'
      config.build_settings['WATCHOS_DEPLOYMENT_TARGET'] = '7.0'
      config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '10.15.1'
    end
  end
end

Additional context

Podfile.lock

PODS:
  - Alamofire (5.4.0)
  - AlamofireImage (4.1.0):
    - Alamofire (~> 5.1)
  - Firebase/Analytics (7.3.0):
    - Firebase/Core
  - Firebase/Core (7.3.0):
    - Firebase/CoreOnly
    - FirebaseAnalytics (= 7.3.0)
  - Firebase/CoreOnly (7.3.0):
    - FirebaseCore (= 7.3.0)
  - Firebase/Crashlytics (7.3.0):
    - Firebase/CoreOnly
    - FirebaseCrashlytics (~> 7.3.0)
  - FirebaseAnalytics (7.3.0):
    - FirebaseCore (~> 7.0)
    - FirebaseInstallations (~> 7.0)
    - GoogleAppMeasurement (= 7.3.0)
    - GoogleUtilities/AppDelegateSwizzler (~> 7.0)
    - GoogleUtilities/MethodSwizzler (~> 7.0)
    - GoogleUtilities/Network (~> 7.0)
    - "GoogleUtilities/NSData+zlib (~> 7.0)"
    - nanopb (~> 2.30906.0)
  - FirebaseCore (7.3.0):
    - FirebaseCoreDiagnostics (~> 7.0)
    - GoogleUtilities/Environment (~> 7.0)
    - GoogleUtilities/Logger (~> 7.0)
  - FirebaseCoreDiagnostics (7.3.0):
    - GoogleDataTransport (~> 8.0)
    - GoogleUtilities/Environment (~> 7.0)
    - GoogleUtilities/Logger (~> 7.0)
    - nanopb (~> 2.30906.0)
  - FirebaseCrashlytics (7.3.0):
    - FirebaseCore (~> 7.0)
    - FirebaseInstallations (~> 7.0)
    - GoogleDataTransport (~> 8.0)
    - nanopb (~> 2.30906.0)
    - PromisesObjC (~> 1.2)
  - FirebaseInstallations (7.3.0):
    - FirebaseCore (~> 7.0)
    - GoogleUtilities/Environment (~> 7.0)
    - GoogleUtilities/UserDefaults (~> 7.0)
    - PromisesObjC (~> 1.2)
  - GoogleAppMeasurement (7.3.0):
    - GoogleUtilities/AppDelegateSwizzler (~> 7.0)
    - GoogleUtilities/MethodSwizzler (~> 7.0)
    - GoogleUtilities/Network (~> 7.0)
    - "GoogleUtilities/NSData+zlib (~> 7.0)"
    - nanopb (~> 2.30906.0)
  - GoogleDataTransport (8.1.0):
    - nanopb (~> 2.30906.0)
  - GoogleUtilities/AppDelegateSwizzler (7.1.1):
    - GoogleUtilities/Environment
    - GoogleUtilities/Logger
    - GoogleUtilities/Network
  - GoogleUtilities/Environment (7.1.1):
    - PromisesObjC (~> 1.2)
  - GoogleUtilities/Logger (7.1.1):
    - GoogleUtilities/Environment
  - GoogleUtilities/MethodSwizzler (7.1.1):
    - GoogleUtilities/Logger
  - GoogleUtilities/Network (7.1.1):
    - GoogleUtilities/Logger
    - "GoogleUtilities/NSData+zlib"
    - GoogleUtilities/Reachability
  - "GoogleUtilities/NSData+zlib (7.1.1)"
  - GoogleUtilities/Reachability (7.1.1):
    - GoogleUtilities/Logger
  - GoogleUtilities/UserDefaults (7.1.1):
    - GoogleUtilities/Logger
  - KeychainAccess (4.2.1)
  - Kingfisher (5.15.8)
  - LicensePlist (3.0.5)
  - Moya (15.0.0-alpha.1):
    - Moya/Core (= 15.0.0-alpha.1)
  - Moya/Core (15.0.0-alpha.1):
    - Alamofire (~> 5.0)
  - nanopb (2.30906.0):
    - nanopb/decode (= 2.30906.0)
    - nanopb/encode (= 2.30906.0)
  - nanopb/decode (2.30906.0)
  - nanopb/encode (2.30906.0)
  - PromiseKit/CoreLocation (6.13.1):
    - PromiseKit/CorePromise
  - PromiseKit/CorePromise (6.13.1)
  - PromiseKit/Foundation (6.13.1):
    - PromiseKit/CorePromise
  - PromiseKit/UIKit (6.13.1):
    - PromiseKit/CorePromise
  - PromisesObjC (1.2.11)
  - PureSwiftUI (2.0.3)
  - PureSwiftUITools (2.0.1):
    - PureSwiftUI
  - QRCodeReader.swift (10.1.0)
  - Reveal-SDK (27)
  - SwiftLint (0.42.0)
  - SwiftUIX (0.0.4)

DEPENDENCIES:
  - Alamofire
  - AlamofireImage
  - Firebase/Analytics
  - Firebase/Crashlytics
  - KeychainAccess
  - Kingfisher (from `https://github.com/onevcat/Kingfisher.git`, branch `master`)
  - LicensePlist
  - Moya (= 15.0.0-alpha.1)
  - PromiseKit/CoreLocation
  - PromiseKit/CorePromise
  - PromiseKit/Foundation
  - PromiseKit/UIKit
  - PureSwiftUI (from `https://github.com/Brett-Best/pure-swift-ui.git`, branch `feature/MPP-Support`)
  - PureSwiftUITools (from `https://github.com/Brett-Best/pure-swift-ui-tools.git`, branch `feature/MPP-Support-CP`)
  - QRCodeReader.swift (from `https://github.com/Brett-Best/QRCodeReader.swift.git`, branch `fix/mac-catalyst`)
  - Reveal-SDK
  - SwiftLint
  - SwiftUIX (from `https://github.com/Brett-Best/SwiftUIX.git`, branch `master`)

SPEC REPOS:
  trunk:
    - Alamofire
    - AlamofireImage
    - Firebase
    - FirebaseAnalytics
    - FirebaseCore
    - FirebaseCoreDiagnostics
    - FirebaseCrashlytics
    - FirebaseInstallations
    - GoogleAppMeasurement
    - GoogleDataTransport
    - GoogleUtilities
    - KeychainAccess
    - LicensePlist
    - Moya
    - nanopb
    - PromiseKit
    - PromisesObjC
    - Reveal-SDK
    - SwiftLint

EXTERNAL SOURCES:
  Kingfisher:
    :branch: master
    :git: https://github.com/onevcat/Kingfisher.git
  PureSwiftUI:
    :branch: feature/MPP-Support
    :git: https://github.com/Brett-Best/pure-swift-ui.git
  PureSwiftUITools:
    :branch: feature/MPP-Support-CP
    :git: https://github.com/Brett-Best/pure-swift-ui-tools.git
  QRCodeReader.swift:
    :branch: fix/mac-catalyst
    :git: https://github.com/Brett-Best/QRCodeReader.swift.git
  SwiftUIX:
    :branch: master
    :git: https://github.com/Brett-Best/SwiftUIX.git

CHECKOUT OPTIONS:
  Kingfisher:
    :commit: 532ee52cb32a1c28bde19867798f10ee71a46715
    :git: https://github.com/onevcat/Kingfisher.git
  PureSwiftUI:
    :commit: efdd2681a9c43db8c40c36a1d41bb7ec7e714935
    :git: https://github.com/Brett-Best/pure-swift-ui.git
  PureSwiftUITools:
    :commit: 6e8327e33dd64ad6cef597608e4ab5cb2d4445ca
    :git: https://github.com/Brett-Best/pure-swift-ui-tools.git
  QRCodeReader.swift:
    :commit: ba74f762de3f13c6ba5453cb8b031986edd0f9e6
    :git: https://github.com/Brett-Best/QRCodeReader.swift.git
  SwiftUIX:
    :commit: a6c9db6f9a271ca91e2b2e84d4d1c1aeeb8920c8
    :git: https://github.com/Brett-Best/SwiftUIX.git

SPEC CHECKSUMS:
  Alamofire: 3b6a534a3df22db367e4dedeeca73d1ddfcf0e2f
  AlamofireImage: c4a2ba349885fb3064feb74d2e547bd42ce9be10
  Firebase: 26223c695fe322633274198cb19dca8cb7e54416
  FirebaseAnalytics: 2580c2d62535ae7b644143d48941fcc239ea897a
  FirebaseCore: 4d3c72622ce0e2106aaa07bb4b2935ba2c370972
  FirebaseCoreDiagnostics: d50e11039e5984d92c8a512be2395f13df747350
  FirebaseCrashlytics: d31325312c92e2cb2f0386d589b9aa44e303d99b
  FirebaseInstallations: 971df89b48ae5ee4cc2bf6935f3857a525d28550
  GoogleAppMeasurement: 8d3c0aeede16ab7764144b5a4ca8e1d4323841b7
  GoogleDataTransport: 116c84c4bdeb76be2a7a46de51244368f9794eab
  GoogleUtilities: 3dc4ff0d5e4840e2fa8eef0889620e8c33d4218c
  KeychainAccess: 9b07f665298d13c3a85881bd3171f6f49b8151c1
  Kingfisher: a725475a625dc8049722ecf6160cf1e1042507fc
  LicensePlist: 11c638fa9dc22ddb5771cdf910242ae1ba2684da
  Moya: 101c94dfb29289736ecd20fa6e82bea665e0671b
  nanopb: 1bf24dd71191072e120b83dd02d08f3da0d65e53
  PromiseKit: 28fda91c973cc377875d8c0ea4f973013c05b6db
  PromisesObjC: 8c196f5a328c2cba3e74624585467a557dcb482f
  PureSwiftUI: e1bd50bd38dc43036e4ed305d6893249603db3a4
  PureSwiftUITools: eb7954807f9190f201d69735e9566542dcae5ca1
  QRCodeReader.swift: 373a389fe9a22d513c879a32a6f647c58f4ef572
  Reveal-SDK: 306e2880395ee396f5a8b4c485c3a86dd19866c7
  SwiftLint: 4fa9579c63416865179bc416f0a92d55f009600d
  SwiftUIX: 9147cc2f523caf0d7af030cf51809b95fc9c8a38

PODFILE CHECKSUM: 0118302b6b636fb039056a5d5542ec38d513c31a

COCOAPODS: 1.10.0

Pod install log (trimmed to relevant parts):

#### Unsupported Libraries ####
["FirebaseAnalytics", "Firebase", "FirebaseCore-iOS", "FirebaseInstallations-iOS", "GoogleAppMeasurement", "GoogleUtilities-00567490", "nanopb-iOS", "GoogleUtilities-00567490", "FirebaseCoreDiagnostics-iOS", "FirebaseCore-iOS", "PromisesObjC-iOS", "GoogleUtilities-00567490", "GoogleUtilities-00567490", "nanopb-iOS", "PromisesObjC-iOS", "GoogleUtilities-00567490", "FirebaseCoreDiagnostics-iOS", "GoogleDataTransport-iOS", "GoogleUtilities-00567490", "nanopb-iOS", "PromisesObjC-iOS", "GoogleDataTransport-iOS", "GoogleUtilities-00567490", "nanopb-iOS", "nanopb-iOS", "PromisesObjC-iOS", "nanopb-iOS", "PromisesObjC-iOS"]

#### Unsupported dependencies ####
["sqite3", "FirebaseCoreDiagnostics", "GoogleUtilities", "FirebaseAnalytics", "FirebaseCore-iOS", "FirebaseCoreDiagnostics-iOS", "FirebaseInstallations-iOS", "GoogleAppMeasurement", "GoogleDataTransport-iOS", "GoogleUtilities-00567490", "PromisesObjC-iOS", "nanopb-iOS", "FIRAnalyticsConnector", "sqlite3"]

#### Frameworks not to be included in the Archive ####
["FirebaseCoreDiagnostics.framework", "GoogleUtilities.framework", "GoogleUtilities.framework", "GoogleUtilities.framework", "FirebaseAnalytics.framework", "FirebaseCore-iOS.framework", "FirebaseCoreDiagnostics-iOS.framework", "FirebaseInstallations-iOS.framework", "GoogleAppMeasurement.framework", "GoogleDataTransport-iOS.framework", "GoogleUtilities-00567490.framework", "PromisesObjC-iOS.framework", "nanopb-iOS.framework", "FIRAnalyticsConnector.framework", "FirebaseAnalytics.framework", "GoogleAppMeasurement.framework"]

#### Resources not to be included in the Archive ####
[]

#### Flagging unsupported libraries ####
    Target: Alamofire-framework-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: Alamofire-library
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: AlamofireImage-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: Firebase-Analytics-Core-CoreOnly-Crashlytics
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: FirebaseAnalytics
        Scheme: Debug - Production
            Succeded
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Succeded
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: FirebaseCore-iOS
        Scheme: Debug - Production
            Succeded
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Succeded
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: FirebaseCoreDiagnostics-iOS
        Scheme: Debug - Production
            Succeded
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Succeded
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: FirebaseCrashlytics-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: FirebaseInstallations-iOS
        Scheme: Debug - Production
            Succeded
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Succeded
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: GoogleAppMeasurement
        Scheme: Debug - Production
            Succeded
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Succeded
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: GoogleDataTransport-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: GoogleUtilities-00567490
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: KeychainAccess-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: Kingfisher
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: LicensePlist
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: Moya-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: PromiseKit-CoreLocation-CorePromise-Foundation-UIKit
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: PromisesObjC-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: PureSwiftUI-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: PureSwiftUITools-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: QRCodeReader.swift
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: Reveal-SDK
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: SwiftLint-framework-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: SwiftLint-library
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: SwiftUIX-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: nanopb-iOS
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: Pods-medCompanion iOS
        Scheme: Debug - Production
            Succeded
        Scheme: Debug - Staging
            Succeded
        Scheme: Debug - Development
            Succeded
        Scheme: Release - Production
            Succeded
        Scheme: Release - Staging
            Succeded
        Scheme: Release - Development
            Succeded
    Target: Pods-medCompanion iOS App Clip
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: Pods-medCompanion iOS App Clip Tests
        Scheme: Debug - Production
            Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: Pods-medCompanion iOS App Clip-medCompanion iOS App Clip UI Tests
        Scheme: Debug - Production
                Nothing to flag
        Scheme: Debug - Staging
            Nothing to flag
        Scheme: Debug - Development
            Nothing to flag
        Scheme: Release - Production
            Nothing to flag
        Scheme: Release - Staging
            Nothing to flag
        Scheme: Release - Development
            Nothing to flag
    Target: Pods-medCompanion iOS Tests
        Scheme: Debug - Production
            Succeded
        Scheme: Debug - Staging
            Succeded
        Scheme: Debug - Development
            Succeded
        Scheme: Release - Production
            Succeded
        Scheme: Release - Staging
            Succeded
        Scheme: Release - Development
            Succeded
    Target: Pods-medCompanion iOS Today Extension
        Scheme: Debug - Production
            Succeded
        Scheme: Debug - Staging
            Succeded
        Scheme: Debug - Development
            Succeded
        Scheme: Release - Production
            Succeded
        Scheme: Release - Staging
            Succeded
        Scheme: Release - Development
            Succeded
    Target: Pods-medCompanion iOS Widget Extension
        Scheme: Debug - Production
            Succeded
        Scheme: Debug - Staging
            Succeded
        Scheme: Debug - Development
            Succeded
        Scheme: Release - Production
            Succeded
        Scheme: Release - Staging
            Succeded
        Scheme: Release - Development
            Succeded
    Target: Pods-medCompanion iOS-medCompanion iOS UI Tests
        Scheme: Debug - Production
            Succeded
        Scheme: Debug - Staging
            Succeded
        Scheme: Debug - Development
            Succeded
        Scheme: Release - Production
            Succeded
        Scheme: Release - Staging
            Succeded
        Scheme: Release - Development
            Succeded

#### Filtering build phases ####
    Target: FirebaseCore-iOS
        - Filtering resources
        - Filtering compile sources
        - Filtering frameworks
        - Filtering headers
        - Filtering dependencies
    Target: FirebaseCoreDiagnostics-iOS
        - Filtering resources
        - Filtering compile sources
        - Filtering frameworks
        - Filtering headers
        - Filtering dependencies
    Target: FirebaseInstallations-iOS
        - Filtering resources
        - Filtering compile sources
        - Filtering frameworks
        - Filtering headers
        - Filtering dependencies
    Target: GoogleDataTransport-iOS
        - Filtering resources
        - Filtering compile sources
        - Filtering frameworks
        - Filtering headers
        - Filtering dependencies
    Target: GoogleUtilities-00567490
        - Filtering resources
        - Filtering compile sources
        - Filtering frameworks
        - Filtering headers
        - Filtering dependencies
    Target: PromisesObjC-iOS
        - Filtering resources
        - Filtering compile sources
        - Filtering frameworks
        - Filtering headers
        - Filtering dependencies
    Target: nanopb-iOS
        - Filtering resources
        - Filtering compile sources
        - Filtering frameworks
        - Filtering headers
        - Filtering dependencies

#### Filtering dependencies ####
    Target: FirebaseAnalytics
        - Filtering dependencies
    Target: GoogleAppMeasurement
        - Filtering dependencies

#### Changing frameworks and resources script ####
    Target: Pods-medCompanion iOS
        -Uninstalling frameworks
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Succeded
        -Uninstalling resources
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
    Target: Pods-medCompanion iOS App Clip
        -Uninstalling frameworks
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
        -Uninstalling resources
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
    Target: Pods-medCompanion iOS App Clip Tests
        -Uninstalling frameworks
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
        -Uninstalling resources
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
    Target: Pods-medCompanion iOS App Clip-medCompanion iOS App Clip UI Tests
        -Uninstalling frameworks
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
        -Uninstalling resources
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
    Target: Pods-medCompanion iOS Tests
        -Uninstalling frameworks
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
        -Uninstalling resources
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
    Target: Pods-medCompanion iOS Today Extension
        -Uninstalling frameworks
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
        -Uninstalling resources
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
    Target: Pods-medCompanion iOS Widget Extension
        -Uninstalling frameworks
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
        -Uninstalling resources
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
    Target: Pods-medCompanion iOS-medCompanion iOS UI Tests
        -Uninstalling frameworks
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Succeded
        -Uninstalling resources
            Uninstalling for configurations: ["Release", "Debug", "Debug - Production", "Debug - Staging", "Debug - Development", "Release - Production", "Release - Staging", "Release - Development"]
            Nothing to uninstall
    - Podfile
  - Writing Xcode project file to `Pods/Pods.xcodeproj`

Pod project (with analytics subspecies) [doesn’t compile]:

image

Pod project (if I remove the Analytics subspec) [compiles fine]:

image
fermoya commented 3 years ago

Hi @Brett-Best , I've modified the regex expression I use to look up dependencies, can you please try again with the updated version?

For the record, the issue is CocoaPods renames dependencies when they're part of targets with different SDKs. Same happens with different versions and frameworks vs libraries. In this particular case, FirebaseCrashlytics has a dependency called FirebaseCore which was named as FirebaseCore-iOS. The current regex expression was expecting something like iOS13.2, but not just iOS. FirebaseCore wasn't being determined as a FirebaseCrashlytics dependency and it was wrongly being removed

Brett-Best commented 3 years ago

Thanks @fermoya, can confirm the change fixes the problem for me :D