Capacitor: ArgumentError - Illformed requirement `"$IOS_FIREBASE_ANALYTICS_VERSION"` for ios Capacitor ionic 5

Created on 7 Sep 2020  路  9Comments  路  Source: ionic-team/capacitor

Bug Report

Capacitor Version

Latest Dependencies:

  @capacitor/cli: 2.4.0
  @capacitor/core: 2.4.0
  @capacitor/android: 2.4.0
  @capacitor/electron: 2.4.0
  @capacitor/ios: 2.4.0

Installed Dependencies:

  @capacitor/cli 2.4.0
  @capacitor/android 2.4.0
  @capacitor/core 2.4.0
  @capacitor/ios 2.4.0
  @capacitor/electron not installed

Platform(s)

Ios

Current Behavior


After updating the pods
Step 1: update the pods
Step 2: ionic build this command works
Step 3: npx cap sync ios shows the error

Expected Behavior

Code Reproduction

Other Technical Details

npm --version output: 6.4.1

node --version output: 10.13.0

pod --version output (iOS issues only):1.10.0.beta.2

Additional Context

ArgumentError - Illformed requirement "$IOS_FIREBASE_ANALYTICS_VERSION"
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/requirement.rb:63:in parse' /Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/requirement.rb:88:inblock in initialize'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/requirement.rb:88:in map!' /Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/requirement.rb:88:ininitialize'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/requirement.rb:34:in new' /Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/requirement.rb:34:increate'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/dependency.rb:101:in initialize' /Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/specification/consumer.rb:223:innew'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/specification/consumer.rb:223:in block in dependencies' /Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/specification/consumer.rb:222:ineach'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/specification/consumer.rb:222:in map' /Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/specification/consumer.rb:222:independencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/specification.rb:403:in block in dependencies' /Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/specification.rb:402:inmap'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.0.beta.2/lib/cocoapods-core/specification.rb:402:in dependencies' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/validator.rb:44:ininitialize'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/external_sources/abstract_external_source.rb:201:in new' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/external_sources/abstract_external_source.rb:201:invalidator_for_podspec'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/external_sources/abstract_external_source.rb:186:in validate_podspec' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/external_sources/abstract_external_source.rb:178:instore_podspec'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/external_sources/path_source.rb:17:in block in fetch' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/user_interface.rb:64:insection'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/external_sources/path_source.rb:11:in fetch' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/installer/analyzer.rb:989:infetch_external_source'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/installer/analyzer.rb:968:in block (2 levels) in fetch_external_sources' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/installer/analyzer.rb:967:ineach'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/installer/analyzer.rb:967:in block in fetch_external_sources' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/user_interface.rb:64:insection'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/installer/analyzer.rb:966:in fetch_external_sources' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/installer/analyzer.rb:117:inanalyze'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/installer.rb:414:in analyze' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/installer.rb:239:inblock in resolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/user_interface.rb:64:in section' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/installer.rb:238:inresolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/installer.rb:160:in install!' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/command/install.rb:52:inrun'
/Library/Ruby/Gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:334:in run' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/lib/cocoapods/command.rb:52:inrun'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.0.beta.2/bin/pod:55:in <top (required)>' /usr/local/bin/pod:23:inload'
/usr/local/bin/pod:23:in `

'

ios

Most helpful comment

Just because there is a capacitor plugin doesn't mean this shouldn't be fixed.
The problem is the CLI is not replacing the IOS_FIREBASE_ANALYTICS_VERSION variable with the default value and causing pod install to fail. This can affect other plugins that might not have an alternative Capacitor plugin

All 9 comments

We got the same problem, had to revert the plugin to 2.3.0

LE: Sorry, i had to revert cordova-plugin-firebase-analytics to version: 4.3.1

It did not work. stil it shows same issue

+1 . I got same error after update npm package (delete package-lock.json then reinstall)

Thanks but mine worked with npm i capacitor-firebase-analytics after removing the firebase analytics plugin

Use the new Capacitor Community Firebase Analytics plugin: https://github.com/capacitor-community/firebase-analytics

Just because there is a capacitor plugin doesn't mean this shouldn't be fixed.
The problem is the CLI is not replacing the IOS_FIREBASE_ANALYTICS_VERSION variable with the default value and causing pod install to fail. This can affect other plugins that might not have an alternative Capacitor plugin

This workaround works for me.
edit and change s.dependency 'Firebase/Analytics', '$IOS_FIREBASE_ANALYTICS_VERSION' to s.dependency 'Firebase/Analytics', '6.31.0' in file ios/capacitor-cordovar-ios-plugins/CordovaPluginsStatic.podspec. then call pod install in ios/App.
Screen Shot 2020-09-09 at 10 30 00

closing since the linked PR was merged and the fix was released in 2.4.1

Note that you need to update @capacitor/cli to 2.4.1.

Thanks @jcesarmobile

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ebk46 picture ebk46  路  3Comments

stripathix picture stripathix  路  3Comments

mlynch picture mlynch  路  3Comments

MatanYadaev picture MatanYadaev  路  3Comments

peterpeterparker picture peterpeterparker  路  3Comments