xcodeproj 0.23.0 → 0.23.1

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
  SHA1:
3
- metadata.gz: 7604bc7bc10022a4aadaf027b88825465ee74f02
4
- data.tar.gz: 5fb1643e3d2ae9018d1895161b805602a2c4aa7c
3
+ metadata.gz: fa0f6900b32b2e81187155258bd93efaccab24e7
4
+ data.tar.gz: 5990152c979ec79206161cd2f8ed0bcc47601bc1
5
5
  SHA512:
6
- metadata.gz: b4e454bea599a6eb8ee65d1bcf8ed9705ceebb85ff473f4374c5f863431fbb9c6171e6ca089568750cbbc028cfb3c587a2ec76ca3e639dabb595a844f8d66d52
7
- data.tar.gz: 4ab58ddb265b57be2d60f44b6775b0ccf37cf8ac49a67a930f4af1080ed6f42e47f01d3ca69796b999cb5d6390b1c4d37a9707badc63a5fe4f4c7117cef9ae89
6
+ metadata.gz: 4409f563332fb076e1c39d6be7fee7cd87086aa05428ffc85c8405f434067a915f4c4cd6f7be1972f1f0ec7006c4be12e328c4d69c332f1fb924facd5f52815f
7
+ data.tar.gz: d0b4413f8ad34fe2dbad39caf4870a8409f22fec4a6cbcaf5a489785b4bfc2531beb4a4292c029376303720567cef7b9a73f3ac09f14ca9e730597b9e92cb00d
@@ -1,5 +1,5 @@
1
1
  module Xcodeproj
2
2
  # The version of the xcodeproj gem.
3
3
  #
4
- VERSION = '0.23.0' unless defined? Xcodeproj::VERSION
4
+ VERSION = '0.23.1' unless defined? Xcodeproj::VERSION
5
5
  end
@@ -41,6 +41,7 @@ module Xcodeproj
41
41
  ruby_hash_write_xcode(hash, path)
42
42
  else
43
43
  CoreFoundation.RubyHashPropertyListWrite(hash, path)
44
+ fix_encoding(path)
44
45
  end
45
46
  end
46
47
 
@@ -63,6 +64,37 @@ module Xcodeproj
63
64
 
64
65
  private
65
66
 
67
+ # Simple workaround to escape characters which are outside of ASCII
68
+ # character-encoding. Relies on the fact that there are no XML characters
69
+ # which would need to be escaped.
70
+ #
71
+ # @note This is necessary because Xcode (4.6 currently) uses the MacRoman
72
+ # encoding unless the `// !$*UTF8*$!` magic comment is present. It
73
+ # is not possible to serialize a plist using the NeXTSTEP format
74
+ # without access to the private classes of Xcode and that comment
75
+ # is not compatible with the XML format. For the complete
76
+ # discussion see CocoaPods/CocoaPods#926.
77
+ #
78
+ #
79
+ # @note Sadly this hack is not sufficient for supporting Emoji.
80
+ #
81
+ # @param [String, Pathname] The path of the file which needs to be fixed.
82
+ #
83
+ # @return [void]
84
+ #
85
+ def fix_encoding(filename)
86
+ output = ''
87
+ input = File.open(filename, 'rb') { |file| file.read }
88
+ input.unpack('U*').each do |codepoint|
89
+ if codepoint > 127 # ASCII is 7-bit, so 0-127 are valid characters
90
+ output << "&##{codepoint};"
91
+ else
92
+ output << codepoint.chr
93
+ end
94
+ end
95
+ File.open(filename, 'wb') { |file| file.write(output) }
96
+ end
97
+
66
98
  # @return [Bool] Checks whether there are merge conflicts in the file.
67
99
  #
68
100
  # @param [#to_s] path
@@ -317,38 +317,6 @@ module Xcodeproj
317
317
  FileUtils.mkdir_p(save_path)
318
318
  file = File.join(save_path, 'project.pbxproj')
319
319
  Xcodeproj.write_plist(to_hash, file)
320
- fix_encoding(file)
321
- end
322
-
323
- # Simple workaround to escape characters which are outside of ASCII
324
- # character-encoding. Relies on the fact that there are no XML characters
325
- # which would need to be escaped.
326
- #
327
- # @note This is necessary because Xcode (4.6 currently) uses the MacRoman
328
- # encoding unless the `// !$*UTF8*$!` magic comment is present. It
329
- # is not possible to serialize a plist using the NeXTSTEP format
330
- # without access to the private classes of Xcode and that comment
331
- # is not compatible with the XML format. For the complete
332
- # discussion see CocoaPods/CocoaPods#926.
333
- #
334
- #
335
- # @note Sadly this hack is not sufficient for supporting Emoji.
336
- #
337
- # @param [String, Pathname] The path of the file which needs to be fixed.
338
- #
339
- # @return [void]
340
- #
341
- def fix_encoding(filename)
342
- output = ''
343
- input = File.open(filename, 'rb') { |file| file.read }
344
- input.unpack('U*').each do |codepoint|
345
- if codepoint > 127
346
- output << "&##{codepoint};"
347
- else
348
- output << codepoint.chr
349
- end
350
- end
351
- File.open(filename, 'wb') { |file| file.write(output) }
352
320
  end
353
321
 
354
322
  public
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xcodeproj
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.23.0
4
+ version: 0.23.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eloy Duran
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-10 00:00:00.000000000 Z
11
+ date: 2015-03-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport