motion-cocoapods 1.1.4 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -40,16 +40,21 @@ dependencies, build them and link them to your application executable.
40
40
 
41
41
  == Options
42
42
 
43
+ If a Podfile.lock file exists, this will be used to install specific versions.
44
+ To update the versions, you can set the +UPDATE+ env variable.
45
+
46
+ $ rake UPDATE=1
47
+
43
48
  By default the output of CocoaPods doing its work is silenced. If, however, you
44
49
  would like to see the output, you can set the +COCOAPODS_VERBOSE+ env variable.
45
50
 
46
- $ env COCOAPODS_VERBOSE=1 rake
51
+ $ rake COCOAPODS_VERBOSE=1
47
52
 
48
53
  On every build, CocoaPods will try to update the specification repos in
49
54
  +~/.cocoapods+, if you want to skip this then set the +COCOAPODS_NO_UPDATE+ env
50
55
  variable.
51
56
 
52
- $ env COCOAPODS_NO_UPDATE=1 rake
57
+ $ rake COCOAPODS_NO_UPDATE=1
53
58
 
54
59
 
55
60
  == Contribute
@@ -38,33 +38,35 @@ module Motion::Project
38
38
  @pods ||= Motion::Project::CocoaPods.new(self)
39
39
  if block
40
40
  # We run the update/install commands only if necessary.
41
- podfile_lock = File.join(self.project_dir, 'vendor', 'Podfile.lock')
41
+ podfile_lock = Pod::Config.instance.project_lockfile
42
42
  podfile_changed = (!File.exist?(podfile_lock) or File.mtime(self.project_file) > File.mtime(podfile_lock))
43
43
  if podfile_changed and !ENV['COCOAPODS_NO_UPDATE']
44
44
  Pod::Command::Repo.new(Pod::Command::ARGV.new(["update"])).run
45
45
  end
46
46
  @pods.instance_eval(&block)
47
- @pods.install!(podfile_changed)
47
+ @pods.install!
48
48
  end
49
49
  @pods
50
50
  end
51
51
  end
52
52
 
53
53
  class CocoaPods
54
- VERSION = '1.1.4'
54
+ VERSION = '1.2.0'
55
55
  PODS_ROOT = 'vendor/Pods'
56
56
 
57
57
  def initialize(config)
58
58
  @config = config
59
+
59
60
  @podfile = Pod::Podfile.new {}
60
- @podfile.platform :ios, :deployment_target => config.deployment_target
61
+ @podfile.platform :ios, config.deployment_target
62
+ cp_config.podfile = @podfile
61
63
 
62
- cp_config = Pod::Config.instance
63
64
  if ENV['COCOAPODS_VERBOSE']
64
65
  cp_config.verbose = true
65
66
  else
66
67
  cp_config.silent = true
67
68
  end
69
+
68
70
  cp_config.integrate_targets = false
69
71
  cp_config.project_root = Pathname.new(File.expand_path(config.project_dir)) + 'vendor'
70
72
  end
@@ -83,21 +85,28 @@ module Motion::Project
83
85
  end
84
86
 
85
87
  def pods_installer
86
- @installer ||= Pod::Installer.new(@podfile)
88
+ @installer ||= begin
89
+ # This should move into a factory method in CocoaPods.
90
+ sandbox = Pod::Sandbox.new(cp_config.project_pods_root)
91
+ resolver = Pod::Resolver.new(@podfile, cp_config.lockfile, sandbox)
92
+ resolver.update_mode = !!ENV['UPDATE']
93
+ Pod::Installer.new(resolver)
94
+ end
87
95
  end
88
96
 
89
97
  # For now we only support one Pods target, this will have to be expanded
90
98
  # once we work on more spec support.
91
- def install!(podfile_changed)
92
- if bridgesupport_file.exist? && pods_installer.lock_file.exist?
99
+ def install!
100
+ if bridgesupport_file.exist? && cp_config.project_lockfile.exist?
93
101
  installed_pods_before = installed_pods
94
102
  end
95
103
 
96
- pods_installer.install! if podfile_changed
104
+ pods_installer.install!
97
105
 
98
106
  # Let RubyMotion re-generate the BridgeSupport file whenever the list of
99
107
  # installed pods changes.
100
- if bridgesupport_file.exist? && installed_pods_before && installed_pods_before != installed_pods
108
+ if bridgesupport_file.exist? && installed_pods_before &&
109
+ installed_pods_before != installed_pods
101
110
  bridgesupport_file.delete
102
111
  end
103
112
 
@@ -124,8 +133,12 @@ module Motion::Project
124
133
  end
125
134
  end
126
135
 
136
+ def cp_config
137
+ Pod::Config.instance
138
+ end
139
+
127
140
  def installed_pods
128
- YAML.load(pods_installer.lock_file.read)['PODS']
141
+ YAML.load(cp_config.project_lockfile.read)['PODS']
129
142
  end
130
143
 
131
144
  def bridgesupport_file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: motion-cocoapods
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.4
4
+ version: 1.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-09-09 00:00:00.000000000 Z
12
+ date: 2012-10-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: cocoapods
@@ -18,7 +18,7 @@ dependencies:
18
18
  requirements:
19
19
  - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: 0.9.1
21
+ version: 0.14.0
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ! '>='
28
28
  - !ruby/object:Gem::Version
29
- version: 0.9.1
29
+ version: 0.14.0
30
30
  description: motion-cocoapods allows RubyMotion projects to have access to the CocoaPods
31
31
  dependency manager.
32
32
  email: lrz@hipbyte.com
@@ -50,18 +50,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
50
50
  - - ! '>='
51
51
  - !ruby/object:Gem::Version
52
52
  version: '0'
53
- segments:
54
- - 0
55
- hash: 4469866718672717141
56
53
  required_rubygems_version: !ruby/object:Gem::Requirement
57
54
  none: false
58
55
  requirements:
59
56
  - - ! '>='
60
57
  - !ruby/object:Gem::Version
61
58
  version: '0'
62
- segments:
63
- - 0
64
- hash: 4469866718672717141
65
59
  requirements: []
66
60
  rubyforge_project:
67
61
  rubygems_version: 1.8.23