Coder Social home page Coder Social logo

xcodeproj's Introduction

Xcodeproj

Build Status Maintainability Test Coverage

Xcodeproj lets you create and modify Xcode projects from Ruby. Script boring management tasks or build Xcode-friendly libraries. Also includes support for Xcode workspaces (.xcworkspace), configuration files (.xcconfig) and Xcode Scheme files (.xcscheme).

It is used in CocoaPods to create a collection of supplemental libraries or frameworks, for all platforms Xcode supports.

The API reference can be found here.

Installing Xcodeproj

Xcodeproj itself installs through RubyGems, the Ruby package manager. Install it by performing the following command:

$ [sudo] gem install xcodeproj

Quickstart

To begin editing an xcodeproj file start by opening it as an Xcodeproj with:

require 'xcodeproj'
project_path = '/your_path/your_project.xcodeproj'
project = Xcodeproj::Project.open(project_path)

Some Small Examples To Get You Started

Look through all targets

project.targets.each do |target|
  puts target.name
end

Get all source files for a target

target = project.targets.first
files = target.source_build_phase.files.to_a.map do |pbx_build_file|
	pbx_build_file.file_ref.real_path.to_s

end.select do |path|
  path.end_with?(".m", ".mm", ".swift")

end.select do |path|
  File.exists?(path)
end

Set a specific build configuration to all targets

project.targets.each do |target|
  target.build_configurations.each do |config|
    config.build_settings['MY_CUSTOM_FLAG'] ||= 'TRUE'
  end
end
project.save

Command Line Tool

Installing the Xcodeproj gem will also install a command-line tool xcodeproj which you can use to generate project diffs, target diffs, output all configurations and show a YAML representation.

For more information consult xcodeproj --help.

Collaborate

All Xcodeproj development happens on GitHub. Contributing patches is really easy and gratifying.

Follow @CocoaPods to get up to date information about what's going on in the CocoaPods world.

LICENSE

These works are available under the MIT license. See the LICENSE file for more info.

xcodeproj's People

Contributors

0xced avatar alisoftware avatar alloy avatar amorde avatar ashton-w avatar banjun avatar benasher44 avatar byohay avatar cjwirth avatar dnkoutso avatar emkosz avatar endocrimes avatar fabiopelosin avatar heyzooi avatar hieu9102002 avatar igor-makarov avatar jkap avatar kylef avatar louisdh avatar lukeredpath avatar mrackwitz avatar neonichu avatar orta avatar pbernery avatar rbsgn avatar revolter avatar segiddins avatar simonseyer avatar somedev avatar thiagohmcruz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

xcodeproj's Issues

Robustness against duplicated elements and blank file references

Hi all.

I am facing this issue with Xcodeproj.
I have and Xcode workspace with dozen of projects in it. And I need to modify one particular project by adding new files to it.
The approach is very basic
But here's a more simple example.
I only open the existing project and then save it immediately, with no changes at all.

xcproj = Xcodeproj::Project.new("MyProject.xcodeproj")
xcproj.save_as("MyProjectCopy.xcodeproj")

And the output is corrupted. Xcode crashes while trying to open it.
xcodebuild also crashes while trying to build this project

$ xcodebuild -project MyProjectCustom.xcodeproj
2013-08-26 14:31:35.441 xcodebuild[16934:1207] [MT] DVTAssertions: ASSERTION FAILURE in /SourceCache/IDEXcode3ProjectSupport/IDEXcode3ProjectSupport-2110/Xcode3Sources/XcodeIDE/Frameworks/DevToolsBase/pbxcore/PBXContainerItemProxy.m:135
Details:  _containerPortal is NULL
Object:   <PBXContainerItemProxy: 0x401432ce0>
Method:   -remoteContainer
Thread:   <NSThread: 0x40030a1e0>{name = (null), num = 1}
Hints: None
Backtrace:
  0  0x0000000106fc96b3 -[DVTAssertionHandler handleFailureInMethod:object:fileName:lineNumber:messageFormat:arguments:] (in DVTFoundation)
  1  0x0000000106fc94e4 _DVTAssertionFailureHandler (in DVTFoundation)
  2  0x0000000108248ed5 -[PBXContainerItemProxy remoteContainer] (in DevToolsCore)
  3  0x0000000108248f28 -[PBXContainerItemProxy remoteContainerItem] (in DevToolsCore)
  4  0x00000001081d6cec -[PBXTarget missingDependencies] (in DevToolsCore)
  5  0x00000001082f785a -[XCTargetDGSnapshot initWithInformationFromTarget:withBuildParameters:] (in DevToolsCore)
  6  0x00000001082faa7d -[XCNativeTargetDGSnapshot initWithInformationFromTarget:withBuildParameters:] (in DevToolsCore)
  7  0x00000001081e6633 -[PBXTarget createDependencyGraphSnapshotWithTargetBuildParameters:] (in DevToolsCore)
  8  0x00000001081e2ace -[PBXTarget propagateTargetSnapshotIfNeededWithCompletionBlock:] (in DevToolsCore)
  9  0x00000001081e7574 -[PBXTarget(XCBuildables) prepareForBuildingWithBuildParameters:] (in DevToolsCore)
 10  0x0000000108356cdd -[Xcode3TargetBuildableSnapshot prepareForBuildingForBuilder:] (in DevToolsCore)
 11  0x00000001073dcb5e -[IDEBuilder initForBuildCommand:withBuildableSnapshot:buildTaskQueueSet:buildOnlyTheseFiles:restorePersistedBuildResults:] (in IDEFoundation)
 12  0x00000001073db7db -[IDEBuildOperation _addOperationForBuildableIfNeeded:recursionDetectionArray:] (in IDEFoundation)
 13  0x00000001073db4aa -[IDEBuildOperation addOperationsForBuildables] (in IDEFoundation)
 14  0x00000001073d86ab -[IDEBuildOperation start] (in IDEFoundation)
 15  0x00007fff8b1f85ca __NSThreadPerformPerform (in Foundation)
 16  0x00007fff854f8b31 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ (in CoreFoundation)
 17  0x00007fff854f8455 __CFRunLoopDoSources0 (in CoreFoundation)
 18  0x00007fff8551b7f5 __CFRunLoopRun (in CoreFoundation)
 19  0x00007fff8551b0e2 CFRunLoopRunSpecific (in CoreFoundation)
 20  0x00007fff85529dd1 CFRunLoopRun (in CoreFoundation)
 21  0x00000001077cac9a -[Xcode3CommandLineBuildTool _build] (in Xcode3Core)
 22  0x00000001077cfa00 -[Xcode3CommandLineBuildTool run] (in Xcode3Core)
 23  0x0000000106f3b9a6 (in xcodebuild)
 24  0x0000000106f3b770 (in xcodebuild)
 25  0x0000000000000003
Abort trap: 6

Another thing I noticed, before calling save_as the project.pbxproj file looked like this

// !$*UTF8*$!
{
    archiveVersion = 1;
    classes = {
    };
    objectVersion = 46;
    objects = {

/* Begin PBXBuildFile section */
        221C09D416B06BB1006B5691 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 221C09D316B06BB1006B5691 /* InfoPlist.strings */; };

***

But project.pbxproj created by Xcodeproj is an XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>archiveVersion</key>
    <string>1</string>
    <key>classes</key>
    <dict/>
    <key>objectVersion</key>
    <string>46</string>
    <key>objects</key>
    <dict>
        <key>221C09D316B06BB1006B5691</key>
        <dict>
            <key>fileEncoding</key>
            <string>4</string>
            <key>isa</key>
            <string>PBXFileReference</string>
            <key>lastKnownFileType</key>
            <string>text.plist.strings</string>
            <key>path</key>
            <string>InfoPlist.strings</string>
            <key>sourceTree</key>
            <string>&lt;group&gt;</string>
        </dict>

***

The format of the Xcode project file is Xcode 3.2 -compatible.

I tried this approach before on another Xcode project (no workspaces) and had no issues at all.
When working with that project it was also converted from JSON-like format to XML, and it also is 3.2 -compatible.

I'd appreciate help on this one.

Xcodeproj doesn't know about the following attributes {"projectRoots"=>["", "STLSources"]} for the 'PBXProject' isa

Report

  • What did you do?
  • What did you expect to happen?
  • What happened instead?

Stack

   CocoaPods : 0.23.0
        Ruby : ruby 2.0.0p195 (2013-05-14 revision 40734) [x86_64-darwin12.4.0]
    RubyGems : 2.0.3
        Host : Mac OS X 10.8.4 (12E55)
       Xcode : 5.0 (5A1412)
Ruby lib dir : /Users/onekiloparsec/.rvm/rubies/ruby-2.0.0-p195/lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ 9ff049d317eac23fc4f3a3d9643b8b81268c4348

Podfile

platform :osx, '10.7'
inhibit_all_warnings!

target :ESOProgramReader do
  pod 'AFNetworking', '~> 1.3'
end

Error

RuntimeError - [!] Xcodeproj doesn't know about the following attributes {"projectRoots"=>["", "STLSources"]} for the 'PBXProject' isa.
Please file an issue: https://github.com/CocoaPods/Xcodeproj/issues/new
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/xcodeproj-0.9.0/lib/xcodeproj/project/object.rb:247:in `configure_with_plist'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/xcodeproj-0.9.0/lib/xcodeproj/project.rb:185:in `new_from_plist'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/xcodeproj-0.9.0/lib/xcodeproj/project.rb:96:in `initialize'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/installer/analyzer.rb:452:in `new'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/installer/analyzer.rb:452:in `block in compute_target_platforms'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/installer/analyzer.rb:449:in `each'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/installer/analyzer.rb:449:in `compute_target_platforms'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/installer/analyzer.rb:54:in `analyze'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/installer.rb:171:in `analyze'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/installer.rb:94:in `block in resolve_dependencies'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/user_interface.rb:52:in `section'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/installer.rb:93:in `resolve_dependencies'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/installer.rb:86:in `install!'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/command/project.rb:38:in `run_install_with_update'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/command/project.rb:68:in `run'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/claide-0.3.2/lib/claide/command.rb:206:in `run'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/lib/cocoapods/command.rb:50:in `run'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/gems/cocoapods-0.23.0/bin/pod:19:in `<top (required)>'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/bin/pod:23:in `load'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/bin/pod:23:in `<main>'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/bin/ruby_noexec_wrapper:14:in `eval'
/Users/onekiloparsec/.rvm/gems/ruby-2.0.0-p195/bin/ruby_noexec_wrapper:14:in `<main>'

object "attempted to initialize an object with an unknown UUID" "for attribute: `files`" Error

Report

  • What did you do?

updated cocoapods to 0.16.0, then simply pod update

  • What did you expect to happen?

pods get updated successfully

  • What happened instead?

an error occurred :

#<UUID:04076AC614611246007212B5', isa: PBXResourcesBuildPhase'> attempted to initialize an object with an unknown UUID: 049AD7E016018B2F00AA3988 for attribute: files

Stack

   CocoaPods : 0.16.0
        Ruby : ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-darwin11.4.0]
    RubyGems : 1.8.24
        Host : Mac OS X 10.8.2 (12C60)
       Xcode : 4.5.2 (4G2008a)
Ruby lib dir : /Users/user/.rvm/rubies/ruby-1.9.2-p290/lib
Repositories : master - git://github.com/CocoaPods/Specs.git @ 9d8ef66d67ed6c05dd0054399b8a977385eddd07

Podfile

pod 'JSONKit'
pod do |s|
    s.name = 'AFNetworking'
    s.version = '0.10.1'
    s.source = { :git => 'https://github.com/AFNetworking/AFNetworking.git' }
    s.platform = :ios
    s.source_files = '*.{h,m}'
end
pod 'SFHFKeychainUtils'
pod 'SSZipArchive'
pod 'Reachability'
pod 'A2DynamicDelegate'
pod 'SDURLCache'
pod do |s|
  s.name = 'RaptureXML'
  s.version = '1.0'
  s.platform = :ios
  s.source = { :git => 'https://github.com/ZaBlanc/RaptureXML.git', :commit => '31bc44dafa5fbafa013b50d0a731246e15dca402' }
  s.source_files = 'Library/*.{h,m}'
end
pod do |s|
  s.name = 'WEPopover'
  s.version = '0.01'
  s.platform = :ios
  s.source = { :git => '[email protected]:werner77/WEPopover.git' }
  s.source_files = 'Classes/Popover/*.{h,m}'
end
pod do |s|
  s.name = 'OBSlider'
  s.version = '1.0'
  s.platform = :ios
  s.source = { :git => 'https://github.com/ole/OBSlider.git' }
  s.source_files = 'OBSlider/*.{h,m}'
end
pod do |s|
  s.name = 'MBProgressHUD'
  s.version = '0.4'
  s.platform = :ios
  s.source = { :git => '[email protected]:tangcha/MBProgressHUD.git' }
  s.source_files = '*.{h,m}'
end
pod do |s|
  s.name = 'GMGridView'
  s.version = '1.0'
  s.platform = :ios
  s.source = { :git => 'git://github.com/tangcha/GMGridView.git' }
  s.source_files = 'GMGridView/API/*.{h,m}'
  s.requires_arc = true
end

Error

`#<UUID: `04076AC614611246007212B5', isa: `PBXResourcesBuildPhase'>` attempted to initialize an object with an unknown UUID: `049AD7E016018B2F00AA3988` for attribute: `files`
Please file and issue: https://github.com/CocoaPods/Xcodeproj/issues/new
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:248:in `object_with_uuid'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:200:in `block (2 levels) in configure_with_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:199:in `each'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:199:in `block in configure_with_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:196:in `each'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:196:in `configure_with_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project.rb:183:in `new_from_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:245:in `object_with_uuid'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:200:in `block (2 levels) in configure_with_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:199:in `each'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:199:in `block in configure_with_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:196:in `each'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:196:in `configure_with_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project.rb:183:in `new_from_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:245:in `object_with_uuid'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:200:in `block (2 levels) in configure_with_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:199:in `each'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:199:in `block in configure_with_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:196:in `each'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project/object.rb:196:in `configure_with_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project.rb:183:in `new_from_plist'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/xcodeproj-0.4.0/lib/xcodeproj/project.rb:96:in `initialize'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/podfile.rb:46:in `new'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/podfile.rb:46:in `project'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/podfile.rb:50:in `build_configurations'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/podfile.rb:532:in `block in user_build_configurations'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/podfile.rb:532:in `map'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/podfile.rb:532:in `user_build_configurations'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/installer.rb:21:in `project'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/installer.rb:118:in `block (2 levels) in install!'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/user_interface.rb:77:in `message'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/installer.rb:117:in `block in install!'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/user_interface.rb:37:in `section'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/installer.rb:112:in `install!'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/command/install.rb:46:in `run_install_with_update'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/command/install.rb:51:in `run'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/lib/cocoapods/command.rb:75:in `run'
/Users/user/.rvm/gems/ruby-1.9.2-p290/gems/cocoapods-0.16.0/bin/pod:16:in `<top (required)>'
/Users/user/.rvm/gems/ruby-1.9.2-p290/bin/pod:23:in `load'
/Users/user/.rvm/gems/ruby-1.9.2-p290/bin/pod:23:in `<main>'

Add namespaced variant of all Pods.xcconfig variables

I am currently switching my project from xcode build settings to .xcconfig files.
While doing this, I've discovered I need to set OTHER_LDFLAGS.
Now the problem is: Pods depends on setting that variable, and although I am #importing the Pods.xcconfig, I have no way to append values to variables it set, I can only overwrite.

So I am suggesting that the Pods.xcconfig should contain a namespaced variant (PODS_{variable-name}) for each variable it sets, so people including the Pods.xcconfig file can then write OTHER_LDFLAGS = PODS_OTHER_LDFLAGS -something.

I do not suggest that these namespaced variants should replace the real variables, so for users that don't use .xcconfig files, nothing would change.

(related to #68)

Show does not work without specific *.xcodeproj

From the documentation:

Shows an overview of a project in a YAML representation.'

    $ show [PROJECT]

     If no `PROJECT' is specified then the current work directory is searched
     for one.

Yet when I type xcodeproj show while in a directory with a single *.xcodeproj, I get this error:

can't convert nil into String
/Users/michele/.rvm/gems/ruby-1.9.3-p194/gems/xcodeproj-0.4.0.rc9/lib/xcodeproj/command/show.rb:14:in `expand_path'
/Users/michele/.rvm/gems/ruby-1.9.3-p194/gems/xcodeproj-0.4.0.rc9/lib/xcodeproj/command/show.rb:14:in `initialize'
/Users/michele/.rvm/gems/ruby-1.9.3-p194/gems/xcodeproj-0.4.0.rc9/lib/xcodeproj/command.rb:102:in `new'
/Users/michele/.rvm/gems/ruby-1.9.3-p194/gems/xcodeproj-0.4.0.rc9/lib/xcodeproj/command.rb:102:in `parse'
/Users/michele/.rvm/gems/ruby-1.9.3-p194/gems/xcodeproj-0.4.0.rc9/lib/xcodeproj/command.rb:64:in `run'
/Users/michele/.rvm/gems/ruby-1.9.3-p194/gems/xcodeproj-0.4.0.rc9/bin/xcodeproj:13:in `<top (required)>'
/Users/michele/.rvm/gems/ruby-1.9.3-p194/bin/xcodeproj:19:in `load'
/Users/michele/.rvm/gems/ruby-1.9.3-p194/bin/xcodeproj:19:in `<main>'
/Users/michele/.rvm/gems/ruby-1.9.3-p194/bin/ruby_noexec_wrapper:14:in `eval'
/Users/michele/.rvm/gems/ruby-1.9.3-p194/bin/ruby_noexec_wrapper:14:in `<main>'

Specifying a file name works fine, and prints out the file as expected.

Project file serialized as XML

Xcodeproj will serialize *.pbxproj file as XML instead of Xcode default's property list (OpenStep plist) format. This is pretty annoying. Frankly I didn’t expect this, is there anyway keeping original file format and apply only related changes?

P.S.: do you think could you somehow trigger Xcode from CLI and make it re–serialize its own way after Xcodeproj did its job? Like a fake change, undo it and save (which is what would you do manually after all)…

Reference: liftoffcli/liftoff#27

Error while installing pods

Report

Actions

  1. Checkout project from my repository
  2. pod install in terminal

Expected
Pods installed successfully

  • What happened instead?

Stack

   CocoaPods : 0.16.0.rc2
        Ruby : ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin11.0]
    RubyGems : 1.8.24
        Host : Mac OS X 10.7.5 (11G63)
       Xcode : 4.5 (4G182)
Ruby lib dir : /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ 18822617e0fe67fcfd42b7606545e69daf26a778

Podfile

          platform :ios, '5.0'
pod 'Lockbox'
pod 'MKNetworkKit'
pod 'BlocksKit'
pod 'uiview-frame-helpers'
pod 'ESAdjustableLabel-Category'
pod 'StandardPaths'
pod 'SSZipArchive'
pod 'UIGlossyButton'
pod 'NYXImagesKit'
pod 'FileMD5Hash'
pod 'JSONKit'
pod 'MTControl'

#target :debug, :exclusive => true do
#   link_with 'MainTarget'
#   #pod 'DCIntrospect'
#   #pod 'OHHTTPStubs'
#   #pod 'UIViewDrawRectBlock'
#end

Error

[!] Xcodeproj doesn't know about the following attributes showEnvVarsInLog0 for the 'PBXShellScriptBuildPhase' isa.
Please file and issue: https://github.com/CocoaPods/Xcodeproj/issues/new
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:221:in `configure_with_plist'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project.rb:184:in `new_from_plist'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:226:in `object_with_uuid'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:200:in `configure_with_plist'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:199:in `each'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:199:in `configure_with_plist'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:196:in `each'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:196:in `configure_with_plist'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project.rb:184:in `new_from_plist'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:226:in `object_with_uuid'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:200:in `configure_with_plist'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:199:in `each'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:199:in `configure_with_plist'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:196:in `each'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project/object.rb:196:in `configure_with_plist'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project.rb:184:in `new_from_plist'
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.0.rc5/lib/xcodeproj/project.rb:96:in `initialize'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/podfile.rb:46:in `new'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/podfile.rb:46:in `project'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/podfile.rb:50:in `build_configurations'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/podfile.rb:546:in `user_build_configurations'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/podfile.rb:546:in `map'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/podfile.rb:546:in `user_build_configurations'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/installer.rb:21:in `project'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/installer.rb:118:in `install!'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/user_interface.rb:77:in `message'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/installer.rb:117:in `install!'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/user_interface.rb:37:in `section'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/installer.rb:112:in `install!'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/command/install.rb:46:in `run_install_with_update'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/command/install.rb:51:in `run'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/lib/cocoapods/command.rb:75:in `run'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.16.0.rc2/bin/pod:16
/usr/bin/pod:23:in `load'
/usr/bin/pod:23

Xcodeproj chokes on my project's info.plist

Looking at the source, it seems to only support string values in arrays. Why is this?

Here's my info.plist (slightly sanitized):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>CFBuildDate</key>
    <date>2011-10-31T17:30:16Z</date>
    <key>CFBuildNumber</key>
    <integer>1052</integer>
    <key>CFBundleDevelopmentRegion</key>
    <string>en</string>
    <key>CFBundleDisplayName</key>
    <string>My App</string>
    <key>CFBundleExecutable</key>
    <string>${EXECUTABLE_NAME}</string>
    <key>CFBundleIconFiles</key>
    <array>
        <string>Icon.png</string>
        <string>[email protected]</string>
        <string>Icon-72.png</string>
        <string>Icon-Small.png</string>
        <string>[email protected]</string>
    </array>
    <key>CFBundleIdentifier</key>
    <string>com.company.appname</string>
    <key>CFBundleInfoDictionaryVersion</key>
    <string>6.0</string>
    <key>CFBundleName</key>
    <string>${PRODUCT_NAME}</string>
    <key>CFBundlePackageType</key>
    <string>APPL</string>
    <key>CFBundleShortVersionString</key>
    <string>${APP_VERSION}</string>
    <key>CFBundleSignature</key>
    <string>????</string>
    <key>CFBundleURLTypes</key>
    <array>
        <dict>
            <key>CFBundleURLName</key>
            <string></string>
            <key>CFBundleURLSchemes</key>
            <array>
                <string>facebook1234</string>
            </array>
        </dict>
        <dict>
            <key>CFBundleURLName</key>
            <string>com.companyname.appname</string>
            <key>CFBundleURLSchemes</key>
            <array>
                <string>custom_url_scheme</string>
            </array>
        </dict>
    </array>
    <key>CFBundleVersion</key>
    <string>2.3</string>
    <key>LSRequiresIPhoneOS</key>
    <true/>
    <key>LSApplicationCategoryType</key>
    <string>public.app-category.music</string>
    <key>NSMainNibFile</key>
    <string>MainWindow</string>
    <key>UIBackgroundModes</key>
    <array>
        <string>audio</string>
    </array>
    <key>UIPrerenderedIcon</key>
    <true/>
    <key>UIStatusBarHidden</key>
    <true/>
    <key>UISupportedInterfaceOrientations</key>
    <array>
        <string>UIInterfaceOrientationPortrait</string>
        <string>UIInterfaceOrientationLandscapeLeft</string>
        <string>UIInterfaceOrientationLandscapeRight</string>
        <string>UIInterfaceOrientationPortraitUpsideDown</string>
    </array>
</dict>
</plist>

I'm guessing it's the custom URL schemes element (since it contains dictionaries), but not really sure.

It would also be handy if the error message spat out the node that was problematic, for easier debugging

Xcode crashes when click the Pods.xcodeproj in Xcode

Xcode version: 4.6 (4H127
CocoaPods version: 0.17.0.rc3
xcodeproj version: 0.5.2

After I created the workspace file with pod install, the generated Pods.xcodeproj constantly crash when I click the project to see what is setting with the project in Xcode.

But the build is OK, and app works fine.

Meanwhile xcodebuild failed to build the workspace.

Screen Shot 2013-03-14 at 13 51 18

Build fails due to new iOS 6.0 Orientation constants

seeing the following build issues:


error: use of undeclared identifier 'UIInterfaceOrientationMaskAll'; did you mean 'UIInterfaceOrientationPortrait'?
return UIInterfaceOrientationMaskAll


using xcodeproj 0.3.4...Thanks.

Xcodeproj returns empty list of targets after Ruby update

Hi all.

I'm having this annoying problem I can't get around.
I've been using Xcodeproj for a long time and had a Ruby script using it working like a charm.

Suddenly, the very same script stops working.
It still opens the Xcode project and I have a valid project object

xcproj = Xcodeproj::Project.new("Template.xcodeproj")
puts xcproj

output is

#<Xcodeproj::Project> path:`Template.xcodeproj` UUID:`4D3704082D04489D868B3A4D`

But then I get the targets and get nothing. This is the part that used to work before and stopped working just recently.

pp xcproj.targets
# outputs []

I believe it stopped working right after I ran gem update --system and gem update.
I am seeing this problem on two different macs, while on other 2 the very same script is working using the same Xcode project file.
I am also using rbenv if that is of any importance.

I'd appreciate any help with this one.
If I'm missing some important step with doing gems update, I have no idea what's that so far.

ERROR: Failed to build gem native extension

While installing xcodeproj 0.3.0

Hydrogen $ gem install xcodeproj 
Building native extensions.  This could take a while...
ERROR:  Error installing xcodeproj:
    ERROR: Failed to build gem native extension.

        /Users/siuying/.rvm/rubies/ruby-1.9.3-p194/bin/ruby extconf.rb
checking for -std=c99 option to compiler... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
    --with-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/Users/siuying/.rvm/rubies/ruby-1.9.3-p194/bin/ruby
/Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:381:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.
    from /Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:491:in `block in try_compile'
    from /Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:443:in `with_werror'
    from /Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:491:in `try_compile'
    from extconf.rb:24:in `block in <main>'
    from /Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:790:in `block in checking_for'
    from /Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:284:in `block (2 levels) in postpone'
    from /Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:254:in `open'
    from /Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:284:in `block in postpone'
    from /Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:254:in `open'
    from /Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:280:in `postpone'
    from /Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:789:in `checking_for'
    from extconf.rb:23:in `<main>'


Gem files will remain installed in /Users/siuying/.rvm/gems/ruby-1.9.3-p194/gems/xcodeproj-0.3.0 for inspection.
Results logged to /Users/siuying/.rvm/gems/ruby-1.9.3-p194/gems/xcodeproj-0.3.0/ext/xcodeproj/gem_make.out
mkmf.log

"/usr/bin/gcc-4.2 -o conftest -I/Users/siuying/.rvm/rubies/ruby-1.9.3-p194/include/ruby-1.9.1/x86_64-darwin11.3.0 -I/Users/siuying/.rvm/rubies/ruby-1.9.3-p194/include/ruby-1.9.1/ruby/backward -I/Users/siuying/.rvm/rubies/ruby-1.9.3-p194/include/ruby-1.9.1 -I. -I/Users/siuying/.rvm/usr/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE    -fno-common -pipe conftest.c  -L. -L/Users/siuying/.rvm/rubies/ruby-1.9.3-p194/lib -L/Users/siuying/.rvm/usr/lib -L. -L/usr/local/lib     -lruby.1.9.1  -lpthread -ldl -lobjc "
checked program was:
/* begin */
1: #include "ruby.h"
2: 
3: int main() {return 0;}
/* end */

Deleting BuildFiles while browsing them in a BuildPhase makes #each browse only half of the build files

I am trying to fix an issue in Xcodeproj.

I try to update an Xcode project by removing build files. I found a problem when deleting while browsing them in a build phase: the each method of AbstractBuildPhase#files does not return all files.

I added a spec that points out the problem. I commited it in the branch https://github.com/CocoaPods/Xcodeproj/tree/fix_build_files_removal branch.
The commit that adds the spec: 52cb6e1.

The test is called removes several build files from a build phase. You can adjust the number_of_files variable in this test. #each calls the block number_of_files / 2 with an even number, number_of_files / 2 + 1 with an odd number.

Crash on --help

  • xcodeproj --version
    0.5.0
  • xcodeproj --help

To see help for the available commands run:

  * $ xcodeproj target-diff --help
  * $ xcodeproj project-diff --help
  * $ xcodeproj show --help

Options:

    --help      Show help information
    --version   Prints the version of CocoaPods

/Users/slim/.rvm/gems/ruby-1.9.3-p194/gems/xcodeproj-0.5.0/lib/xcodeproj/command.rb:98:in `parse'
/Users/slim/.rvm/gems/ruby-1.9.3-p194/gems/xcodeproj-0.5.0/lib/xcodeproj/command.rb:64:in `run'
/Users/slim/.rvm/gems/ruby-1.9.3-p194/gems/xcodeproj-0.5.0/bin/xcodeproj:13:in `<top (required)>'
/Users/slim/.rvm/gems/ruby-1.9.3-p194/bin/xcodeproj:19:in `load'
/Users/slim/.rvm/gems/ruby-1.9.3-p194/bin/xcodeproj:19:in `<main>'
/Users/slim/.rvm/gems/ruby-1.9.3-p194/bin/ruby_noexec_wrapper:14:in `eval'
/Users/slim/.rvm/gems/ruby-1.9.3-p194/bin/ruby_noexec_wrapper:14:in `<main>'

Use consistent casing

Now that it’s no longer a MacRuby project, I think we should use snake case everywhere.

Provide support for localised resources

An example project, created with regular Xcode, contains two localized Localizable.strings files:

xcode

When inspecting the project with xcodeproj show ..., it will list localized files like this:

  - Resources:
    - Localizable.strings:
      - en
      - nl

The underlying Localizable.strings-files are actually in two folders called en.lproj and nl.lproj:

finder

When trying to mimic this setup, with the same underlying paths I add them like this:

project.new_file('Resources/en.lproj/Localizable.strings', 'Resources/Localizable.strings/en')

But the result is different from the way Xcode treats these special cases:

xcodeproj

Would you know how to add these files, so Xcode treats them the same way, as when you add them the old-fashioned way?

Xcodeproj doesn't know about the following attributes FileEncoding4 for the 'PBXFileReference' isa. (RuntimeError)

Hi

I am a newbie to Xcodeproj. As a QA, I was running the frank setup inside xcode project shown an error and asked to log the issue here. Please see the steps I did and the error log as below.

Thanks

Rama

sudo gem install frank-cucumber
Password:
Building native extensions. This could take a while...
Building native extensions. This could take a while...
Successfully installed i18n-0.6.1
Successfully installed plist-3.1.0
Successfully installed dnssd-2.0
Successfully installed thor-0.16.0
Successfully installed activesupport-3.2.11
Successfully installed colored-1.2
Successfully installed xcodeproj-0.4.1
Successfully installed frank-cucumber-1.1.3
8 gems installed
Installing ri documentation for i18n-0.6.1...
Installing ri documentation for plist-3.1.0...
Installing ri documentation for dnssd-2.0...
Installing ri documentation for thor-0.16.0...
Installing ri documentation for activesupport-3.2.11...

unrecognized option `--encoding'

frank setup
exist Frank
identical Frank/features/my_first.feature
identical Frank/features/step_definitions/launch_steps.rb
identical Frank/features/support/env.rb
identical Frank/frank_static_resources.bundle/ViewAttributeMapping.plist
identical Frank/frank_static_resources.bundle/images/ajax-loader.gif
identical Frank/frank_static_resources.bundle/images/file.gif
identical Frank/frank_static_resources.bundle/images/folder-closed.gif
identical Frank/frank_static_resources.bundle/images/folder.gif
identical Frank/frank_static_resources.bundle/images/loader.gif
identical Frank/frank_static_resources.bundle/images/loader.png
identical Frank/frank_static_resources.bundle/images/minus.gif
identical Frank/frank_static_resources.bundle/images/plus.gif
identical Frank/frank_static_resources.bundle/images/treeview-black-line.gif
identical Frank/frank_static_resources.bundle/images/treeview-black.gif
identical Frank/frank_static_resources.bundle/images/treeview-default-line.gif
identical Frank/frank_static_resources.bundle/images/treeview-default.gif
identical Frank/frank_static_resources.bundle/images/treeview-famfamfam-line.gif
identical Frank/frank_static_resources.bundle/images/treeview-famfamfam.gif
identical Frank/frank_static_resources.bundle/images/treeview-gray-line.gif
identical Frank/frank_static_resources.bundle/images/treeview-gray.gif
identical Frank/frank_static_resources.bundle/images/treeview-red-line.gif
identical Frank/frank_static_resources.bundle/images/treeview-red.gif
identical Frank/frank_static_resources.bundle/index.html
identical Frank/frank_static_resources.bundle/index.html.haml
identical Frank/frank_static_resources.bundle/js/accessible_views_view.coffee
identical Frank/frank_static_resources.bundle/js/accessible_views_view.js
identical Frank/frank_static_resources.bundle/js/controller.coffee
identical Frank/frank_static_resources.bundle/js/controller.js
identical Frank/frank_static_resources.bundle/js/details_view.coffee
identical Frank/frank_static_resources.bundle/js/details_view.js
identical Frank/frank_static_resources.bundle/js/dropdown_control.coffee
identical Frank/frank_static_resources.bundle/js/dropdown_control.js
identical Frank/frank_static_resources.bundle/js/ersatz_model.coffee
identical Frank/frank_static_resources.bundle/js/ersatz_model.js
identical Frank/frank_static_resources.bundle/js/ersatz_view.coffee
identical Frank/frank_static_resources.bundle/js/ersatz_view.js
identical Frank/frank_static_resources.bundle/js/experiment_bar_model.coffee
identical Frank/frank_static_resources.bundle/js/experiment_bar_model.js
identical Frank/frank_static_resources.bundle/js/experiment_bar_view.coffee
identical Frank/frank_static_resources.bundle/js/experiment_bar_view.js
identical Frank/frank_static_resources.bundle/js/frank.coffee
identical Frank/frank_static_resources.bundle/js/frank.js
identical Frank/frank_static_resources.bundle/js/lib/backbone.js
identical Frank/frank_static_resources.bundle/js/lib/coffee-script.js
identical Frank/frank_static_resources.bundle/js/lib/jquery-ui.min.js
identical Frank/frank_static_resources.bundle/js/lib/jquery.min.js
identical Frank/frank_static_resources.bundle/js/lib/jquery.treeview.js
identical Frank/frank_static_resources.bundle/js/lib/json2.js
identical Frank/frank_static_resources.bundle/js/lib/raphael.js
identical Frank/frank_static_resources.bundle/js/lib/require.js
identical Frank/frank_static_resources.bundle/js/lib/underscore.js
identical Frank/frank_static_resources.bundle/js/main.coffee
identical Frank/frank_static_resources.bundle/js/main.js
identical Frank/frank_static_resources.bundle/js/tabs_controller.coffee
identical Frank/frank_static_resources.bundle/js/tabs_controller.js
identical Frank/frank_static_resources.bundle/js/toast_controller.coffee
identical Frank/frank_static_resources.bundle/js/toast_controller.js
identical Frank/frank_static_resources.bundle/js/transform_stack.coffee
identical Frank/frank_static_resources.bundle/js/transform_stack.js
identical Frank/frank_static_resources.bundle/js/tree_view.coffee
identical Frank/frank_static_resources.bundle/js/tree_view.js
identical Frank/frank_static_resources.bundle/js/view_heir_model.coffee
identical Frank/frank_static_resources.bundle/js/view_heir_model.js
identical Frank/frank_static_resources.bundle/js/view_model.coffee
identical Frank/frank_static_resources.bundle/js/view_model.js
identical Frank/frank_static_resources.bundle/pictos/index.html
identical Frank/frank_static_resources.bundle/pictos/pictos-web.eot
identical Frank/frank_static_resources.bundle/pictos/pictos-web.svg
identical Frank/frank_static_resources.bundle/pictos/pictos-web.ttf
identical Frank/frank_static_resources.bundle/pictos/pictos-web.woff
identical Frank/frank_static_resources.bundle/pictos/pictos.css
identical Frank/frank_static_resources.bundle/pictos/pictos_base64.css
identical Frank/frank_static_resources.bundle/stylesheets/css/symbiote.css
identical Frank/frank_static_resources.bundle/stylesheets/sass/_elements.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/_header.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/_inspect_tabs_list_tabs.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/_jquery.treeview.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/_jqui.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/_layout.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/_mixins.sass
identical Frank/frank_static_resources.bundle/stylesheets/sass/_reset.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/_selector_test_toolbar.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/_solarized.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/_typography.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/_unicode.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/_z_index.scss
identical Frank/frank_static_resources.bundle/stylesheets/sass/symbiote.scss
identical Frank/frankify.xcconfig
identical Frank/libCocoaHTTPServer.a
identical Frank/libFrank.a
identical Frank/libShelley.a
/Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:241:in configure_with_plist': [!] Xcodeproj doesn't know about the following attributes FileEncoding4 for the 'PBXFileReference' isa. (RuntimeError) Please file an issue: https://github.com/CocoaPods/Xcodeproj/issues/new from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project.rb:183:innew_from_plist'
from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:267:in object_with_uuid' from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:218:inconfigure_with_plist'
from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:217:in each' from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:217:inconfigure_with_plist'
from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:214:in each' from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:214:inconfigure_with_plist'
from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project.rb:183:in new_from_plist' from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:267:inobject_with_uuid'
from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:218:in configure_with_plist' from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:217:ineach'
from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:217:in configure_with_plist' from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:214:ineach'
from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:214:in configure_with_plist' from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project.rb:183:innew_from_plist'
from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:267:in object_with_uuid' from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:208:inconfigure_with_plist'
from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:205:in each' from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project/object.rb:205:inconfigure_with_plist'
from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project.rb:183:in new_from_plist' from /Library/Ruby/Gems/1.8/gems/xcodeproj-0.4.1/lib/xcodeproj/project.rb:96:ininitialize'
from /Library/Ruby/Gems/1.8/gems/frank-cucumber-1.1.3/lib/frank-cucumber/frankifier.rb:51:in new' from /Library/Ruby/Gems/1.8/gems/frank-cucumber-1.1.3/lib/frank-cucumber/frankifier.rb:51:indecide_on_project'
from /Library/Ruby/Gems/1.8/gems/frank-cucumber-1.1.3/lib/frank-cucumber/frankifier.rb:19:in frankify!' from /Library/Ruby/Gems/1.8/gems/frank-cucumber-1.1.3/lib/frank-cucumber/frankifier.rb:9:infrankify!'
from /Library/Ruby/Gems/1.8/gems/frank-cucumber-1.1.3/lib/frank-cucumber/cli.rb:33:in setup' from /Library/Ruby/Gems/1.8/gems/thor-0.16.0/lib/thor/task.rb:27:insend'
from /Library/Ruby/Gems/1.8/gems/thor-0.16.0/lib/thor/task.rb:27:in run' from /Library/Ruby/Gems/1.8/gems/thor-0.16.0/lib/thor/invocation.rb:120:ininvoke_task'
from /Library/Ruby/Gems/1.8/gems/thor-0.16.0/lib/thor.rb:275:in dispatch' from /Library/Ruby/Gems/1.8/gems/thor-0.16.0/lib/thor/base.rb:425:instart'
from /Library/Ruby/Gems/1.8/gems/frank-cucumber-1.1.3/bin/frank:5
from /usr/bin/frank:19:in `load'
from /usr/bin/frank:19

CoreData Model version is incorrectly set/overridden (xcdatamodeld)

From CocoaPods/CocoaPods#1288

I think the new xcdatamodeld support has a bug in how it sets the model version. As it does not keep the version set by xcode originally, and kept in the .xccurrentversion plist file inside the xcdatamodeld/.

64cbdfd#L0R226

The code contains the comment

match Xcode behaviour the last xcdatamodel according to its path is set as the current version.

I don't think that is the correct behaviour if a version has been set already.

gem install error: CoreFoundation is needed to build the Xcodeproj C extension

I've tried installing xcodeproj version 0.8.1 and 0.0.9 and I get the same error on installation:

checking for CoreFoundation... no
checking for main() in -lCoreFoundation... no
CoreFoundation is needed to build the Xcodeproj C extension.

I'm using rvm ruby 2.0.0-p247 on Mac OS X 10.8.4 with Xcode 4.6.3 installed.

If I download the source, I see the same error from rake ext:build. Any ideas?

Split PBXObjectList into ordered and unordered classes.

If the list wraps a hash (which might only still be the case for the main Project#objects list?), then we can't guarantee order of the objects, nor does it matter.

If the list wraps an array of child UUIDs (like PBXGroup and it's children), then order can and should be guaranteed.

framework target?

Hi,

I saw project.new_target() function supports :application, :static_library, :dynamic_library.
I'm wondering why it doesn't have a :framework type?

Does it have any known limitation to implement or just an oversight?

Thanks!

Create Project via command line with boilerplate code

Hey,

I talked about my idea already on SO so I will just quote it. Just in case somebody will read it later.

I had this idea of making a command line utility similar to the rails setup application. It should automatically create a Xcode project, setup unit test, setup Frank, install most used Cocoapods and setup a project structure.

There is no such thing at the moment and I would really like to have it and open source it. I struggled around the other questions here yesterday but found nothing up to date.

I created a little Script which is still in progress.
And I stumbled upon this question:

Which is the best method to create the .pch or AppDelegate file?
Write them in Ruby and wrtie them to file?
Store them in the project directory and copy them while running the script?
Or is there a even better way? Maybe a YAML config file?

Thanks in advance.

Add method to duplicate existing target

Hi all.

It would be great to have duplicate method on PBXNativeTarget.

This would be handy when dealing with automated test, e.g. Calabash for iOS.
Test team could pick up latest app from the repo, locate main app target and duplicate it into many other targets, for Calabash, MonkeyTalk, RevealApp or any other test-related stuff the developers shouldn't care about.

For example calabash-ios setup does this job, but it' snot using Xcodeproj.

The way I intend to use it is to get the latest app code first, then duplicate main target into a bunch of test-specific targets, then update Podfile to add custom frameworks and pods to newly created targets. And all that with a couple of cli commands, so it can be used on CI server as well.

Multiple undefined methods for PBXProject

I'm guessing this has to do with the Xcode 4.6 release, as it updated the project file. All of the erros are occurring on the same line.

NoMethodError: undefined method `display_name' for Project with root object UUID: 29B97313FDCFA39411CA2CEA:Xcodeproj::Project

NoMethodError: undefined method `attributes' for Project with root object UUID: 29B97313FDCFA39411CA2CEA:Xcodeproj::Project

NoMethodError: undefined method `project_dir_path' for Project with root object UUID: 29B97313FDCFA39411CA2CEA:Xcodeproj::Project

NoMethodError: undefined method `project_root' for Project with root object UUID: A487DC7615FE5DCD0037E8A3:Xcodeproj::Project

NoMethodError: undefined method `product_ref_group' for Project with root object UUID: A487DC7615FE5DCD0037E8A3:Xcodeproj::Project

NoMethodError: undefined method `compatibility_version' for Project with root object UUID: A487DC7615FE5DCD0037E8A3:Xcodeproj::Project
from (irb):23
from /Users/michele/.rvm/rubies/ruby-1.9.3-p194/bin/irb:16:in `<main>'

Instances of Config class can not be created by specifying file path

Currently the only way to create instance of Config class is to specify its attributes. However Xcode config files are references by path while parsing Xcode project file. Thus it will be extremely helpful to support creation of instances of Config class by specifying path parameter.

gem install error

I tried to install the gem like this (I know, sudo is bad and I should use RVM ;-):
sudo gem install xcodeproj -V

I get this error:

creating Makefile
make
xcrun cc -I. -I. -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin12.0 -I. -DRUBY_EXTCONF_H=\"extconf.h\"  -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE   -fno-common -arch i386 -arch x86_64 -g -Os -pipe -fno-common -DENABLE_DTRACE  -fno-common  -pipe -fno-common  -std=c99  -c xcodeproj_ext.c
cc -arch i386 -arch x86_64 -pipe -bundle -undefined dynamic_lookup -o xcodeproj_ext.bundle xcodeproj_ext.o -L. -L/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib -L. -arch i386 -arch x86_64  -ObjC -framework CoreFoundation    -lruby  -lpthread -ldl -lobjc
make install
/usr/bin/install -c -m 0755 xcodeproj_ext.bundle ./.gem.20130406-29555-zd0wy8
ERROR:  While executing gem ... (NoMethodError)
    undefined method `join' for nil:NilClass

Any idea what might be wrong?

Get rid of ActiveSupport dependency

Because it also pulls in the i18n and multi_json gems. Either vendor the Inflector parts of ActiveSupport, or find a gem that has already extracted these.

How to add xcdatamodeld to project correctly?

Can't figure out how to correctly add xcdatamodeld to project.

project = Xcodeproj::Project.new
resources = project.groups.new('path' => resources_path, 'name' => 'Resources')
resources.files.new('path' => path_to_xcdatamodeld)
project.save_as("ui.xcodeproj")

if I open ui.xcodeproj then I can't open added xcdatamodeld %( Any hint to get it working?

Update gem because of source code changes

Hi!

Current version of xcodeproj gem is 0.1.0. However source code contained in this repository differs from code from rubygems.org and it seems like it doesn't contain following error:

uninitialized constant Xcodeproj::Project::PBXFileReference::Pathname (NameError) in $GEM_HOME/gems/xcodeproj-0.1.0/lib/xcodeproj/project.rb:260

Could you please update gem at rubygems.org?

Thanks in advance!

Xcodeproj doesn't build on Rubinius

When xcodeproj tries to compile the ext files on Rubinius, I get this error:

$ bundle exec rake spec
[!] Install the required dependencies to generate documentation: $ bundle install
cd ext/xcodeproj && rm -f Makefile *.o *.bundle
CFLAGS='-I/Users/dvyjones/.rvm/rubies/rbx-head/include' ruby extconf.rb
checking for -std=c99 option to compiler... yes
checking for CoreFoundation... no
checking for main() in -lCoreFoundation... no
CoreFoundation is needed to build the Xcodeproj C extension.
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/Users/dvyjones/.rvm/rubies/rbx-head/bin/rbx
    --with-CoreFoundationlib
    --without-CoreFoundationlib
rake aborted!
Command failed with status (1): [CFLAGS='-I/Users/dvyjones/.rvm/rubies/rbx-...]

Tasks: TOP => spec => spec:all => ext:cleanbuild => ext:build
(See full trace by running task with --trace)
(returned 1)

The same thing happens when I try to install the gem on Rubinius. As such, CocoaPods doesn't work on Rubinius.

Recycle UUIDs.

As we currently don’t recycle UUIDs, adding an explicit dependency to a scheme will fail because the UUID doesn’t match anymore. (Or at least this is what I guesstimate is the real problem.)

Basically, this makes it impossible to do:

  1. a clean checkout
  2. run pod install
  3. run test scheme that has explicit dependencies (with xctool)

/cc @blakewatters

Dump and Restore project to/from YAML

Sometimes when working on a project with big team we have problem when both person make change to project file and then one pulls changes and has problems merging project files.

To solve such thing, it can be interesting to actually commit a simple text file to SCM, like YAML, and then, restore the project from that file. That could make merging faster.

Google for it's own projects is using GYP

Maybe we can make some similar add-on?

Xcodeproj very slow at browsing/editing recursively contents of a "big" project

I use Xcodeproj in a script to automate edition of some Xcode projects.

On of the task of the script is to add image file references. There are quite a lot of images: nearly 500 arranged in folders and subfolders.

The script has a recursive method that browses these images and creates Xcode groups and files accordingly. The code works pretty well though it is very slow: between 3 to 8 minutes to complete.

I made some profiling with Ruby Prof and found that 99.49% of execution time is passed in Xcodeproj::Project::PBXObjectList#[] (If I am not wrong, this is the first time I use Ruby prof).

I explored the code and saw that each time a PBXObjectList is asked for an object (through the [] operator), the block in @callbacks[uuid_scope] is called. It seems to be slow, and called very often.

I tried some hack and put the result of the callback in a cache variable. It works pretty well but not when the project objects_hash is changed. I tried some hook to invalidate the cache when the object_hash is changed or when an object is removed from a PBXObjectList but this is not enough, the specs don't pass.

I would appreciate any help to know where to look exactly and what to change.

I hope the description is clear enough. I did not pushed my changes in my fork yet because it is not fully working but if you need it to better understand the change, I could push them.

Precompile the extensions

The extensions should be pre compiled to allow installation without build tools. It should support OS X and Linux (Travis)

Xcodeproj can't parse Core Data comments

This is an older project that used to use xmo'd. I'm just going to remove the comment for now, but wanted to file the issue in case this affects others as well.

(Got this via pod install)

[!] Xcodeproj doesn't know about the following attributes {"comments"=>"xmod\n--output-dir ./MyApp/Models"} for the 'PBXFileReference' isa.
Please file and issue: https://github.com/CocoaPods/Xcodeproj/issues/new
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:221:in `configure_with_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project.rb:184:in `new_from_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:190:in `block in configure_with_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:187:in `each'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:187:in `configure_with_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project.rb:184:in `new_from_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:226:in `object_with_uuid'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:200:in `block (2 levels) in configure_with_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:199:in `each'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:199:in `block in configure_with_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:196:in `each'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:196:in `configure_with_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project.rb:184:in `new_from_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:226:in `object_with_uuid'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:200:in `block (2 levels) in configure_with_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:199:in `each'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:199:in `block in configure_with_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:196:in `each'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:196:in `configure_with_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project.rb:184:in `new_from_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:190:in `block in configure_with_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:187:in `each'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project/object.rb:187:in `configure_with_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project.rb:184:in `new_from_plist'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/xcodeproj-0.4.0.rc6/lib/xcodeproj/project.rb:96:in `initialize'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/podfile.rb:46:in `new'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/podfile.rb:46:in `project'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/podfile.rb:50:in `build_configurations'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/podfile.rb:546:in `block in user_build_configurations'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/podfile.rb:546:in `map'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/podfile.rb:546:in `user_build_configurations'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/installer.rb:21:in `project'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/installer.rb:118:in `block (2 levels) in install!'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/user_interface.rb:77:in `message'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/installer.rb:117:in `block in install!'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/user_interface.rb:37:in `section'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/installer.rb:112:in `install!'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/command/install.rb:46:in `run_install_with_update'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/command/install.rb:51:in `run'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/lib/cocoapods/command.rb:75:in `run'
/Users/ben/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cocoapods-0.16.0.rc3/bin/pod:16:in `<top (required)>'
/Users/ben/.rbenv/versions/1.9.3-p194/bin/pod:23:in `load'
/Users/ben/.rbenv/versions/1.9.3-p194/bin/pod:23:in `<main>'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.