xcodeproj 1.5.4 → 1.5.5

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
- SHA1:
3
- metadata.gz: 0b1d369116a7d3da45d626c4b997b9d61fd9ccf8
4
- data.tar.gz: 35c1dd673e635eebbaa636dcfa6db0e9e33bb6c3
2
+ SHA256:
3
+ metadata.gz: 73d5beda835c2dcbc16acc08b2547e4480b0befb4594c041d0b0b7462fde8b8f
4
+ data.tar.gz: be2343edc22dcf4fab598c583d6daac293c352d4f8a5c48ccfcad1a4c717dcff
5
5
  SHA512:
6
- metadata.gz: 8f80155cd3b837c429f91a8efcbfe232eb6a27650d77945ccd461be6c957aa22a4fb1e2a8fa21703aeba76aa3ddfc130ca64dc1666ffb6822d83f2fbfc49e40e
7
- data.tar.gz: fc8000ee50ffb1eb3a1b2b6a1cc05367fbb468cb12e02f838adb32baf788dc9c9901dc62b3011d4c39afc399cdf1437de38de1cbfe120e9c3718965e85df91e1
6
+ metadata.gz: 021b9d3f9b6d6de5479dfea6913d18a91acd93062cfbde040742ab156538ac206ec4adabcf2aeaa29ce830528b92cdf292cbe7ce1e58a831ab50be3b66bf6620
7
+ data.tar.gz: 69db844aade7560ded3fe9eb63596165fcf1488c6627e2a13b07c9efac2b8c53b8c79865943e41bf80d3e2577c49af82c2bc8c6b380bb0aa28da3dad11da09fa
@@ -18,6 +18,7 @@ module Xcodeproj
18
18
  def initialize(argv)
19
19
  super
20
20
  unless self.ansi_output?
21
+ Colored2.disable!
21
22
  String.send(:define_method, :colorize) { |string, _| string }
22
23
  end
23
24
  end
@@ -8,7 +8,7 @@ module Xcodeproj
8
8
 
9
9
  # @return [String] The last known OS X SDK (stable).
10
10
  #
11
- LAST_KNOWN_OSX_SDK = '10.12'
11
+ LAST_KNOWN_OSX_SDK = '10.13'
12
12
 
13
13
  # @return [String] The last known tvOS SDK (stable).
14
14
  LAST_KNOWN_TVOS_SDK = '10.2'
@@ -22,22 +22,22 @@ module Xcodeproj
22
22
 
23
23
  # @return [String] The last known Swift version (stable).
24
24
  #
25
- LAST_KNOWN_SWIFT_VERSION = '3.0'
25
+ LAST_KNOWN_SWIFT_VERSION = '4.0'
26
26
 
27
27
  # @return [String] The default object version for Xcodeproj.
28
28
  DEFAULT_OBJECT_VERSION = 46
29
29
 
30
30
  # @return [String] The last known object version to Xcodeproj.
31
31
  #
32
- LAST_KNOWN_OBJECT_VERSION = 48
32
+ LAST_KNOWN_OBJECT_VERSION = 50
33
33
 
34
34
  # @return [String] The last known object version to Xcodeproj.
35
35
  #
36
- LAST_UPGRADE_CHECK = '0700'
36
+ LAST_UPGRADE_CHECK = '0930'
37
37
 
38
38
  # @return [String] The last known object version to Xcodeproj.
39
39
  #
40
- LAST_SWIFT_UPGRADE_CHECK = '0830'
40
+ LAST_SWIFT_UPGRADE_CHECK = '0930'
41
41
 
42
42
  # @return [String] The version of `.xcscheme` files supported by Xcodeproj
43
43
  #
@@ -99,6 +99,7 @@ module Xcodeproj
99
99
  'm' => 'sourcecode.c.objc',
100
100
  'markdown' => 'text',
101
101
  'mdimporter' => 'wrapper.cfbundle',
102
+ 'modulemap' => 'sourcecode.module',
102
103
  'mov' => 'video.quicktime',
103
104
  'mp3' => 'audio.mp3',
104
105
  'octest' => 'wrapper.cfbundle',
@@ -219,7 +220,7 @@ module Xcodeproj
219
220
  # ProjectHelper#common_build_settings
220
221
  }.freeze,
221
222
  [:debug, :application, :swift] => {
222
- 'SWIFT_OPTIMIZATION_LEVEL' => '-Onone',
223
+ # Empty?
223
224
  }.freeze,
224
225
  [:debug, :swift] => {
225
226
  'SWIFT_OPTIMIZATION_LEVEL' => '-Onone',
@@ -266,6 +267,7 @@ module Xcodeproj
266
267
  }.freeze,
267
268
  [:osx, :static_library] => {
268
269
  'EXECUTABLE_PREFIX' => 'lib',
270
+ 'SKIP_INSTALL' => 'YES',
269
271
  }.freeze,
270
272
  [:ios, :static_library] => {
271
273
  'OTHER_LDFLAGS' => '-ObjC',
@@ -286,6 +288,7 @@ module Xcodeproj
286
288
  'DYLIB_COMPATIBILITY_VERSION' => '1',
287
289
  'DYLIB_CURRENT_VERSION' => '1',
288
290
  'EXECUTABLE_PREFIX' => 'lib',
291
+ 'SKIP_INSTALL' => 'YES',
289
292
  }.freeze,
290
293
  [:application] => {
291
294
  'ASSETCATALOG_COMPILER_APPICON_NAME' => 'AppIcon',
@@ -336,11 +339,13 @@ module Xcodeproj
336
339
  'CLANG_CXX_LIBRARY' => 'libc++',
337
340
  'CLANG_ENABLE_MODULES' => 'YES',
338
341
  'CLANG_ENABLE_OBJC_ARC' => 'YES',
342
+ 'CLANG_ENABLE_OBJC_WEAK' => 'YES',
339
343
  'CLANG_WARN__DUPLICATE_METHOD_MATCH' => 'YES',
340
344
  'CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING' => 'YES',
341
345
  'CLANG_WARN_BOOL_CONVERSION' => 'YES',
342
346
  'CLANG_WARN_COMMA' => 'YES',
343
347
  'CLANG_WARN_CONSTANT_CONVERSION' => 'YES',
348
+ 'CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS' => 'YES',
344
349
  'CLANG_WARN_DIRECT_OBJC_ISA_USAGE' => 'YES_ERROR',
345
350
  'CLANG_WARN_DOCUMENTATION_COMMENTS' => 'YES',
346
351
  'CLANG_WARN_EMPTY_BODY' => 'YES',
@@ -348,6 +353,7 @@ module Xcodeproj
348
353
  'CLANG_WARN_INFINITE_RECURSION' => 'YES',
349
354
  'CLANG_WARN_INT_CONVERSION' => 'YES',
350
355
  'CLANG_WARN_NON_LITERAL_NULL_CONVERSION' => 'YES',
356
+ 'CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF' => 'YES',
351
357
  'CLANG_WARN_OBJC_LITERAL_CONVERSION' => 'YES',
352
358
  'CLANG_WARN_OBJC_ROOT_CLASS' => 'YES_ERROR',
353
359
  'CLANG_WARN_RANGE_LOOP_ANALYSIS' => 'YES',
@@ -1,5 +1,5 @@
1
1
  module Xcodeproj
2
2
  # The version of the xcodeproj gem.
3
3
  #
4
- VERSION = '1.5.4'.freeze unless defined? Xcodeproj::VERSION
4
+ VERSION = '1.5.5'.freeze unless defined? Xcodeproj::VERSION
5
5
  end
@@ -1,3 +1,4 @@
1
+ require 'atomos'
1
2
  require 'fileutils'
2
3
  require 'securerandom'
3
4
 
@@ -350,7 +351,9 @@ module Xcodeproj
350
351
  @dirty = false if save_path == path
351
352
  FileUtils.mkdir_p(save_path)
352
353
  file = File.join(save_path, 'project.pbxproj')
353
- File.open(file, 'w') { |f| Nanaimo::Writer::PBXProjWriter.new(to_ascii_plist, :pretty => true, :output => f, :strict => false).write }
354
+ Atomos.atomic_write(file) do |f|
355
+ Nanaimo::Writer::PBXProjWriter.new(to_ascii_plist, :pretty => true, :output => f, :strict => false).write
356
+ end
354
357
  end
355
358
 
356
359
  # Marks the project as dirty, that is, modified from what is on disk.
@@ -809,7 +812,7 @@ module Xcodeproj
809
812
  targets.each do |target|
810
813
  scheme = XCScheme.new
811
814
  scheme.add_build_target(target)
812
- scheme.add_test_target(target) if target.test_target_type?
815
+ scheme.add_test_target(target) if target.respond_to?(:test_target_type?) && target.test_target_type?
813
816
  yield scheme, target if block_given?
814
817
  scheme.save_as(path, target.name, false)
815
818
  xcschememanagement['SchemeUserState']["#{target.name}.xcscheme"] = {}
@@ -72,7 +72,8 @@ module Xcodeproj
72
72
  #---------------------------------------------------------------------#
73
73
 
74
74
  # Gets the value for the given build setting considering any configuration
75
- # file present and resolving inheritance between them
75
+ # file present and resolving inheritance between them. It also takes in
76
+ # consideration environment variables.
76
77
  #
77
78
  # @param [String] key
78
79
  # the key of the build setting.
@@ -92,7 +93,7 @@ module Xcodeproj
92
93
  project_setting = nil if project_setting == self
93
94
  project_setting &&= project_setting.resolve_build_setting(key, root_target)
94
95
 
95
- [project_setting, config_setting, setting].compact.reduce do |inherited, value|
96
+ [project_setting, config_setting, setting, ENV[key]].compact.reduce do |inherited, value|
96
97
  expand_build_setting(value, inherited)
97
98
  end
98
99
  end
@@ -338,6 +338,7 @@ module Xcodeproj
338
338
  output << "<#{node.expanded_name}"
339
339
 
340
340
  @level += @indentation
341
+ node.context = node.parent.context # HACK: to ensure strings are properly quoted
341
342
  node.attributes.each_attribute do |attr|
342
343
  output << "\n"
343
344
  output << ' ' * @level
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xcodeproj
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.4
4
+ version: 1.5.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eloy Duran
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-12-16 00:00:00.000000000 Z
11
+ date: 2018-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: atomos
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.1.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.1.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: CFPropertyList
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -160,7 +174,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
160
174
  version: '0'
161
175
  requirements: []
162
176
  rubyforge_project:
163
- rubygems_version: 2.4.5.1
177
+ rubygems_version: 2.7.4
164
178
  signing_key:
165
179
  specification_version: 3
166
180
  summary: Create and modify Xcode projects from Ruby.