cocoapods-deintegrate icon indicating copy to clipboard operation
cocoapods-deintegrate copied to clipboard

NoMethodError - undefined method

Open OnTheFly64 opened this issue 4 years ago • 7 comments

Report

What did you do?

ℹ Run pod install

What did you expect to happen?

ℹ Install all pod dependencies correctly.

What happened instead?

ℹ Received NoMethodError.

CocoaPods Environment

ℹ ### Stack

   CocoaPods : 1.9.3
        Ruby : ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin19]
    RubyGems : 3.0.3
        Host : Mac OS X 10.15.6 (19G2021)
       Xcode : 12.0 (12A7209)
         Git : git version 2.19.0
Ruby lib dir : /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib
Repositories : master - git - https://github.com/CocoaPods/Specs.git @ 79127eda4e9720cc7702e0153bcfb8f742912c4d

               trunk - CDN - https://cdn.cocoapods.org/

Plugins

cocoapods-clean       : 0.0.1
cocoapods-deintegrate : 1.0.4
cocoapods-plugins     : 1.0.0
cocoapods-search      : 1.0.0
cocoapods-stats       : 1.1.0
cocoapods-trunk       : 1.5.0
cocoapods-try         : 1.2.0

Podfile

# Uncomment this line if you're using Swift
use_frameworks!

platform :ios, '13.0'
workspace 'My App'

target 'My App' do
    pod 'RMStore'
    #pod 'RMStore/RMStoreReceiptVerifier'
    #pod 'RMStore/RMStoreTransactionReceiptVerifier'
    #pod 'RMStore/RMStoreKeychainPersistence'
    #pod 'RMStore/RMStoreUserDefaultsPersistence'
    pod 'OpenSSL-Universal'
    pod 'Bolts'
    pod 'Parse'
    pod 'UICKeyChainStore', '~> 2.1'
    pod 'mailcore2-ios'
    pod 'IQKeyboardManager'
end

Error

NoMethodError - undefined method `build_files' for #<Xcodeproj::Project::Object::PBXReferenceProxy:0x00007ffea6324950>
/Library/Ruby/Gems/2.6.0/gems/cocoapods-deintegrate-1.0.4/lib/cocoapods/deintegrator.rb:53:in `block (2 levels) in deintegrate_pods_libraries'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-deintegrate-1.0.4/lib/cocoapods/deintegrator.rb:51:in `each'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-deintegrate-1.0.4/lib/cocoapods/deintegrator.rb:51:in `block in deintegrate_pods_libraries'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-deintegrate-1.0.4/lib/cocoapods/deintegrator.rb:50:in `deintegrate_pods_libraries'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-deintegrate-1.0.4/lib/cocoapods/deintegrator.rb:29:in `block in deintegrate_target'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-deintegrate-1.0.4/lib/cocoapods/deintegrator.rb:24:in `deintegrate_target'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/installer/user_project_integrator.rb:127:in `block (2 levels) in deintegrate_removed_targets'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/installer/user_project_integrator.rb:126:in `each'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/installer/user_project_integrator.rb:126:in `block in deintegrate_removed_targets'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/config.rb:41:in `with_changes'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/installer/user_project_integrator.rb:121:in `deintegrate_removed_targets'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/installer/user_project_integrator.rb:72:in `integrate!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/installer.rb:801:in `block in integrate_user_project'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/installer.rb:797:in `integrate_user_project'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/installer.rb:176:in `integrate'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/installer.rb:162:in `install!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/lib/cocoapods/command/install.rb:52:in `run'
/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.9.3/lib/cocoapods/command.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.3/bin/pod:55:in `<top (required)>'
/usr/local/bin/pod:23:in `load'
/usr/local/bin/pod:23:in `<main>'

Traceback (most recent call last):
	6: from /usr/local/bin/xcodeproj:23:in `<main>'
	5: from /usr/local/bin/xcodeproj:23:in `load'
	4: from /Library/Ruby/Gems/2.6.0/gems/xcodeproj-1.18.0/bin/xcodeproj:10:in `<top (required)>'
	3: from /Library/Ruby/Gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:334:in `run'
	2: from /Library/Ruby/Gems/2.6.0/gems/xcodeproj-1.18.0/lib/xcodeproj/command/target_diff.rb:31:in `run'
	1: from /Library/Ruby/Gems/2.6.0/gems/xcodeproj-1.18.0/lib/xcodeproj/command/target_diff.rb:31:in `new'
/Library/Ruby/Gems/2.6.0/gems/xcodeproj-1.18.0/lib/xcodeproj/helper.rb:9:in `initialize': Target 1 by name `' not found in the project. (ArgumentError)

OnTheFly64 avatar Oct 02 '20 17:10 OnTheFly64

This looks like a bad xcodeproj reference. You'd need to upload a sample app or the actual project for us to diagnose.

dnkoutso avatar Oct 02 '20 18:10 dnkoutso

This looks like a bad xcodeproj reference. You'd need to upload a sample app or the actual project for us to diagnose.

Never done that before. Dumb question, but doing so exposes all of my code on Github?

OnTheFly64 avatar Oct 02 '20 18:10 OnTheFly64

if you upload your full project then you'd have to remove the source files or their contents to ensure you dont do that.

Alternatively, a new xcodeproj that demonstrates the issue would also work and avoid that as well.

dnkoutso avatar Oct 02 '20 18:10 dnkoutso

if you upload your full project then you'd have to remove the source files or their contents to ensure you dont do that.

Alternatively, a new xcodeproj that demonstrates the issue would also work and avoid that as well.

Created a new Xcodeproj and of course the pod install completed without any issues.

OnTheFly64 avatar Oct 02 '20 18:10 OnTheFly64

gh repo clone OnTheFly64/Holdover-Calculator https://github.com/OnTheFly64/Holdover-Calculator.git

OnTheFly64 avatar Oct 02 '20 19:10 OnTheFly64

Yes this is a tiny bug in the deintegrator...perhaps because you had manually deleted the reference. The deintegrator should handle this a bit better to protect from this case...your workaround is easy...

Delete Pods_Holdover_Calculator.framework from Holdover CalculatorUITests and Holdover CalculatorTests and run pod install again.

Screen_Shot_2020-10-02_at_12_30_01_PM

I will transfer this issue to the deintegrator.

dnkoutso avatar Oct 02 '20 19:10 dnkoutso