xcpretty / xcode-install

🔽 Install and update your Xcodes
https://fastlane.tools
MIT License
2.59k stars 239 forks source link

Error: block in fetch': undefined method `match' for nil:NilClass (NoMethodError) #362

Open m-dimascio opened 4 years ago

m-dimascio commented 4 years ago

I initially ran xcversion install 6.3 and it looked like it installed xcode 6.3, but it disappeared from my applications, so I'm not sure if it's a spotlight issue, although I can't seem to find it on my machine. However, I need at least version 8+, but when I try to install any version now, including 6.3, I get the following error (and nothing changed to my knowledge):

$ xcversion install 8

%Traceback (most recent call last):
    10: from /Users/OSx/.rbenv/versions/2.6.5/bin/xcversion:23:in `<main>'
     9: from /Users/OSx/.rbenv/versions/2.6.5/bin/xcversion:23:in `load'
     8: from /Users/OSx/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/xcode-install-2.6.1/bin/xcversion:12:in `<top (required)>'
     7: from /Users/OSx/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:334:in `run'
     6: from /Users/OSx/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/xcode-install-2.6.1/lib/xcode/install/install.rb:50:in `run'
     5: from /Users/OSx/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/xcode-install-2.6.1/lib/xcode/install.rb:278:in `install_version'
     4: from /Users/OSx/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/xcode-install-2.6.1/lib/xcode/install.rb:374:in `get_dmg'
     3: from /Users/OSx/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/xcode-install-2.6.1/lib/xcode/install.rb:142:in `download'
     2: from /Users/OSx/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/xcode-install-2.6.1/lib/xcode/install.rb:79:in `fetch'
     1: from /Users/OSx/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/xcode-install-2.6.1/lib/xcode/install.rb:79:in `times'
/Users/OSx/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/xcode-install-2.6.1/lib/xcode/install.rb:99:in `block in fetch': undefined method `match' for nil:NilClass (NoMethodError)

Some potentially helpful info:

$ xcversion --version 2.6.1

$ ruby -v ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-darwin16]

$ xcode-select -p /Library/Developer/CommandLineTools

$ system_profiler SPSoftwareDataType

System Software Overview:

      System Version: macOS 10.12.6 (16G2136)
      Kernel Version: Darwin 16.7.0
      Boot Volume: Os X
      Boot Mode: Normal
      Computer Name: citycommuter's MacBook Pro
      User Name: citycommuter (OSx)
      Secure Virtual Memory: Enabled
      System Integrity Protection: Enabled
      Time since boot: 1:40

Thank you for help.


Restarting and running

$ xcversion 8 install


xip: error: The archive “Xcode_8.xip” does not come from Apple.
No `Xcode.app(or Xcode-beta.app)` found in XIP. Please remove /Users/OSx/Library/Caches/XcodeInstall/Xcode_8.xip if you suspect a corrupted download or run `xcversion update` to see if the version you tried to install has been pulled by Apple. If none of this is true, please open a new GH issue. 

However, it still randomly goes back to original undefined method 'match' error as above when run again.

I've noticed the certificates for xcode < v9.2 are all expired since a few days ago for the .xip files, even downloaded directly from apple dev site. Not sure if there's a work around for this.

Vyazovoy commented 4 years ago

The only workaround would be to change system time like explained here. But the solution doesn't seem safe and stable.