xcake 0.9.1 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 891221c5b940944b3428a55e2f1e0ab950bbd6d9dcb9a69c769370f57dbac2c2
4
- data.tar.gz: 915e3f35a9a4587b4239988ff05babbec2baa7c00a93551f20d07eb1a3f9b83d
3
+ metadata.gz: 77cbacbbd95a37c5cd0eb49d0893b47ae42faaebe2df598c9c88ba34593d1408
4
+ data.tar.gz: bf1e167c8ca84c066c2cc97b091766c41395b14940c3f58c5980596ae4834beb
5
5
  SHA512:
6
- metadata.gz: 813a7b99d0dee437e31ccd5c131e35e0f9a6f02d166cacdb535357d981fad625724af8941351c4e2d33cc2a13fe790dbf10b12f55b7d7267a8a6fc203579d716
7
- data.tar.gz: 6a73e15219f0f00084a72c0ea26e559b61cb496cff0b793299857ea9933719121f265608e9de4161f17d04b5f2f25166f9973fff96c122f83b08c49e95f2e17e
6
+ metadata.gz: 19a859c16460092300efecac93ad3cf8f86a5add352e0c9376da627f26b6704b350637fddd037188bdf1bc04ccfa7501a4f97dc30da88183d880cea9d2e77244
7
+ data.tar.gz: 6d22d154fde9177304d3835e078a68e9c2dff85970af2c34be9b913ea0eb1c5c1f2d5fdfd4d6711280b1e9811ecd9b6e332011cd4e71faf25e84a49fdcdbdc3a
@@ -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
@@ -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
 
@@ -7,7 +7,7 @@ module Xcake
7
7
  EXTENSION_MAPPINGS = {
8
8
  PBXFrameworksBuildPhase: %w(.a .dylib .so .framework).freeze,
9
9
  PBXHeadersBuildPhase: %w(.h .hpp).freeze,
10
- PBXSourcesBuildPhase: %w(.c .m .mm .cpp .swift .xcdatamodeld .java).freeze,
10
+ PBXSourcesBuildPhase: %w(.c .m .mm .cpp .cc .swift .xcdatamodeld .java).freeze,
11
11
  PBXResourcesBuildPhase: %w(.xcassets).freeze
12
12
  }.freeze
13
13
 
@@ -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.1'.freeze
2
+ VERSION = '0.11.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,36 +1,36 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xcake
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.1
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Igor Makarov
8
8
  - James Campbell
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-01-13 00:00:00.000000000 Z
12
+ date: 2020-09-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: claide
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ">="
19
- - !ruby/object:Gem::Version
20
- version: 0.9.1
21
18
  - - "<"
22
19
  - !ruby/object:Gem::Version
23
20
  version: '2.0'
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 0.9.1
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
- - - ">="
29
- - !ruby/object:Gem::Version
30
- version: 0.9.1
31
28
  - - "<"
32
29
  - !ruby/object:Gem::Version
33
30
  version: '2.0'
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 0.9.1
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: cork
36
36
  requirement: !ruby/object:Gem::Requirement
@@ -77,50 +77,64 @@ dependencies:
77
77
  name: xcodeproj
78
78
  requirement: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: 1.3.0
83
80
  - - "<"
84
81
  - !ruby/object:Gem::Version
85
82
  version: 2.0.0
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ version: 1.3.0
86
86
  type: :runtime
87
87
  prerelease: false
88
88
  version_requirements: !ruby/object:Gem::Requirement
89
89
  requirements:
90
- - - ">="
91
- - !ruby/object:Gem::Version
92
- version: 1.3.0
93
90
  - - "<"
94
91
  - !ruby/object:Gem::Version
95
92
  version: 2.0.0
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: 1.3.0
96
96
  - !ruby/object:Gem::Dependency
97
97
  name: activesupport
98
98
  requirement: !ruby/object:Gem::Requirement
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'
187
+ type: :development
188
+ prerelease: false
189
+ version_requirements: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - "~>"
192
+ - !ruby/object:Gem::Version
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
173
201
  type: :development
174
202
  prerelease: false
175
203
  version_requirements: !ruby/object:Gem::Requirement
176
204
  requirements:
177
205
  - - "~>"
178
206
  - !ruby/object:Gem::Version
179
- version: '10.0'
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
@@ -303,7 +345,7 @@ homepage: https://github.com/igor-makarov/xcake/
303
345
  licenses:
304
346
  - MIT
305
347
  metadata: {}
306
- post_install_message:
348
+ post_install_message:
307
349
  rdoc_options: []
308
350
  require_paths:
309
351
  - lib
@@ -311,15 +353,15 @@ 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
- rubygems_version: 3.0.1
322
- signing_key:
363
+ rubygems_version: 3.1.2
364
+ signing_key:
323
365
  specification_version: 4
324
366
  summary: Generate Xcode Projects
325
367
  test_files: []