xcake 0.9.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b77df3cd23fa234738b12a4b908521af9abadfb2235883c82581f7c687aa1da5
4
- data.tar.gz: 0c13c5bd3c7731022b6f4376d476a15790e9cc1ddafcafb61119201b66ee153d
3
+ metadata.gz: f10dc2b5418af42a8060494dce9fc880d0de048b691d196d07449fb5e8e4610f
4
+ data.tar.gz: 12682aba93d4e5bbb69738925a340fbf160dd9a3ae9f6fb13fe9511dd11991f5
5
5
  SHA512:
6
- metadata.gz: 0f146ce1f82ec0a38b44b146c4dd58122ffd27a16b24673cff3f1f0132d53a77e15476c596fff6b7ee1dacc26448a8375ef803bda0ce0414c492f26ead423214
7
- data.tar.gz: 47d1d3d1ab0ff600c80f67413c7dd86386599210e9f240a17ab7ff69583131f15016960447605cfc57abb40399a563c9cf423631bc8c9320af52e965e854425d
6
+ metadata.gz: 30fbe5b4051d81781fb75b5db8d00945dd10158617216fff3f16d0a7f7f3e731b3bf38453c76f9f763803d5bcadf746ef8c2d0d8555fec48af6f9bc6e95259d4
7
+ data.tar.gz: 790ec183b083aed7640f98ed5a71b4dc680e06c7026c164831f7712d2bcf16aed49eb1198ab3560ba8a5721142bc75f82e18c7b16dbaee8af7b4767db9081d8b
@@ -1,7 +1,7 @@
1
1
  module Xcake
2
2
  module CoreExtensions
3
3
  # @example Including in a class
4
- # Class.send(:include, Xcake::CoreExtensions::ClassDescendants) # done with send because of old ruby versions
4
+ # extend Xcake::CoreExtensions::ClassDescendants
5
5
  #
6
6
  module ClassDescendants
7
7
  # Returns all descendants of a class
@@ -8,6 +8,12 @@ module Xcake
8
8
  # String coataining the contents of the script to run
9
9
  attr_accessor :script
10
10
 
11
+ # input/output paths
12
+ attr_accessor :input_paths
13
+ attr_accessor :output_paths
14
+ attr_accessor :input_file_list_paths
15
+ attr_accessor :output_file_list_paths
16
+
11
17
  def build_phase_type
12
18
  Xcodeproj::Project::Object::PBXShellScriptBuildPhase
13
19
  end
@@ -15,6 +21,10 @@ module Xcake
15
21
  def configure_native_build_phase(native_build_phase, _context)
16
22
  native_build_phase.name = name
17
23
  native_build_phase.shell_script = script.strip_heredoc
24
+ native_build_phase.input_paths = input_paths || []
25
+ native_build_phase.output_paths = output_paths || []
26
+ native_build_phase.input_file_list_paths = input_file_list_paths || []
27
+ native_build_phase.output_file_list_paths = output_file_list_paths || []
18
28
  end
19
29
 
20
30
  def to_s
@@ -17,7 +17,7 @@ module Xcake
17
17
  #
18
18
  # @example Using Supported Devices
19
19
  #
20
- # Target.new do |t|
20
+ # Target.new(project) do |t|
21
21
  # t.all_configurations.each do |c|
22
22
  # c.supported_devices = :ipad_only
23
23
  # end
@@ -63,7 +63,7 @@ module Xcake
63
63
  # the newly created target
64
64
  #
65
65
  def target(&block)
66
- target = Target.new(&block)
66
+ target = Target.new(self, &block)
67
67
  targets << target
68
68
  target
69
69
  end
@@ -5,6 +5,10 @@ module Xcake
5
5
  include Hooks
6
6
  include Hooks::InstanceHooks
7
7
 
8
+ # Defines hook which is ran before project is saved.
9
+ #
10
+ define_hooks :before_save
11
+
8
12
  # Defines hook which is ran after project is saved.
9
13
  #
10
14
  define_hooks :after_save
@@ -60,6 +60,10 @@ module Xcake
60
60
  t.type = :ui_test_bundle
61
61
  configure_test_target_for_host_target(t, host_target)
62
62
 
63
+ t.all_configurations.each do |c|
64
+ c.settings['TEST_TARGET_NAME'] = host_target.name
65
+ end
66
+
63
67
  yield(t) if block_given?
64
68
  end
65
69
  end
@@ -182,16 +182,19 @@ module Xcake
182
182
  #
183
183
  attr_accessor :schemes
184
184
 
185
+ # @param [Project] project
186
+ # the project the target belongs to.
187
+ #
185
188
  # @param [Proc] block
186
189
  # an optional block that configures the target through the DSL.
187
190
  #
188
191
  # @example Creating a Target.
189
192
  #
190
- # Target.new do |t|
193
+ # Target.new(project) do |t|
191
194
  # t.name "test"
192
195
  # end
193
196
  #
194
- def initialize
197
+ def initialize(project)
195
198
  @pinned_build_phases = []
196
199
  @build_phases = []
197
200
  @build_rules = []
@@ -200,6 +203,7 @@ module Xcake
200
203
  @system_libraries = []
201
204
  @target_dependencies = []
202
205
  @schemes = []
206
+ @project = project
203
207
 
204
208
  yield(self) if block_given?
205
209
  end
@@ -3,7 +3,7 @@ module Xcake
3
3
  include Dependency
4
4
  include Plugin
5
5
  include Visitor
6
- Class.send(:include, CoreExtensions::ClassDescendants) # done with send because of old ruby versions
6
+ extend CoreExtensions::ClassDescendants
7
7
 
8
8
  attr_accessor :context
9
9
 
@@ -8,6 +8,7 @@ module Xcake
8
8
 
9
9
  def leave_project(project)
10
10
  native_project = @context.native_object_for(project)
11
+ project.run_hook :before_save, native_project
11
12
  native_project.save
12
13
  project.run_hook :after_save
13
14
 
@@ -5,6 +5,8 @@ module Xcake
5
5
  end
6
6
 
7
7
  module ClassMethods
8
+ include CoreExtensions::ClassDescendants
9
+
8
10
  def load_plugins
9
11
  Dir[plugins_location].each { |file| require file }
10
12
  descendants
@@ -1,3 +1,3 @@
1
1
  module Xcake
2
- VERSION = '0.9.0'.freeze
2
+ VERSION = '0.10.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xcake
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Igor Makarov
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-12-30 00:00:00.000000000 Z
12
+ date: 2020-07-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: claide
@@ -99,28 +99,42 @@ dependencies:
99
99
  requirements:
100
100
  - - "<"
101
101
  - !ruby/object:Gem::Version
102
- version: '5'
102
+ version: '6'
103
103
  type: :runtime
104
104
  prerelease: false
105
105
  version_requirements: !ruby/object:Gem::Requirement
106
106
  requirements:
107
107
  - - "<"
108
108
  - !ruby/object:Gem::Version
109
- version: '5'
109
+ version: '6'
110
110
  - !ruby/object:Gem::Dependency
111
111
  name: bundler
112
112
  requirement: !ruby/object:Gem::Requirement
113
113
  requirements:
114
- - - "~>"
114
+ - - ">="
115
115
  - !ruby/object:Gem::Version
116
116
  version: '1.10'
117
117
  type: :development
118
118
  prerelease: false
119
119
  version_requirements: !ruby/object:Gem::Requirement
120
120
  requirements:
121
- - - "~>"
121
+ - - ">="
122
122
  - !ruby/object:Gem::Version
123
123
  version: '1.10'
124
+ - !ruby/object:Gem::Dependency
125
+ name: os
126
+ requirement: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: '1.0'
131
+ type: :development
132
+ prerelease: false
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '1.0'
124
138
  - !ruby/object:Gem::Dependency
125
139
  name: pry
126
140
  requirement: !ruby/object:Gem::Requirement
@@ -169,14 +183,28 @@ dependencies:
169
183
  requirements:
170
184
  - - "~>"
171
185
  - !ruby/object:Gem::Version
172
- version: '10.0'
186
+ version: '12.0'
173
187
  type: :development
174
188
  prerelease: false
175
189
  version_requirements: !ruby/object:Gem::Requirement
176
190
  requirements:
177
191
  - - "~>"
178
192
  - !ruby/object:Gem::Version
179
- version: '10.0'
193
+ version: '12.0'
194
+ - !ruby/object:Gem::Dependency
195
+ name: rb-readline
196
+ requirement: !ruby/object:Gem::Requirement
197
+ requirements:
198
+ - - "~>"
199
+ - !ruby/object:Gem::Version
200
+ version: 0.5.4
201
+ type: :development
202
+ prerelease: false
203
+ version_requirements: !ruby/object:Gem::Requirement
204
+ requirements:
205
+ - - "~>"
206
+ - !ruby/object:Gem::Version
207
+ version: 0.5.4
180
208
  - !ruby/object:Gem::Dependency
181
209
  name: rspec
182
210
  requirement: !ruby/object:Gem::Requirement
@@ -191,6 +219,20 @@ dependencies:
191
219
  - - "~>"
192
220
  - !ruby/object:Gem::Version
193
221
  version: 3.4.0
222
+ - !ruby/object:Gem::Dependency
223
+ name: rubocop
224
+ requirement: !ruby/object:Gem::Requirement
225
+ requirements:
226
+ - - "~>"
227
+ - !ruby/object:Gem::Version
228
+ version: 0.64.0
229
+ type: :development
230
+ prerelease: false
231
+ version_requirements: !ruby/object:Gem::Requirement
232
+ requirements:
233
+ - - "~>"
234
+ - !ruby/object:Gem::Version
235
+ version: 0.64.0
194
236
  - !ruby/object:Gem::Dependency
195
237
  name: rubocop-git
196
238
  requirement: !ruby/object:Gem::Requirement
@@ -311,15 +353,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
311
353
  requirements:
312
354
  - - ">="
313
355
  - !ruby/object:Gem::Version
314
- version: 2.0.0
356
+ version: 2.3.3
315
357
  required_rubygems_version: !ruby/object:Gem::Requirement
316
358
  requirements:
317
359
  - - ">="
318
360
  - !ruby/object:Gem::Version
319
361
  version: '0'
320
362
  requirements: []
321
- rubyforge_project:
322
- rubygems_version: 2.7.7
363
+ rubygems_version: 3.1.2
323
364
  signing_key:
324
365
  specification_version: 4
325
366
  summary: Generate Xcode Projects