ipa 0.1.2 → 0.1.3

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.
data/Gemfile CHANGED
@@ -4,4 +4,4 @@ source :gemcutter
4
4
  gemspec
5
5
 
6
6
  gem 'rake'
7
- gem 'sj-plist', :require => 'plist'
7
+ gem 'CFPropertyList', '~> 2.2.0'
@@ -1,22 +1,22 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ipa (0.1.2)
4
+ ipa (0.1.3)
5
+ CFPropertyList (~> 2.2.0)
5
6
  rubyzip (~> 0.9.4)
6
- sj-plist
7
7
 
8
8
  GEM
9
9
  remote: http://rubygems.org/
10
10
  specs:
11
+ CFPropertyList (2.2.0)
11
12
  rake (0.9.2)
12
13
  rubyzip (0.9.9)
13
- sj-plist (3.2)
14
14
 
15
15
  PLATFORMS
16
16
  ruby
17
17
 
18
18
  DEPENDENCIES
19
+ CFPropertyList (~> 2.2.0)
19
20
  bundler (>= 1.0.0)
20
21
  ipa!
21
22
  rake
22
- sj-plist
@@ -15,7 +15,7 @@ Gem::Specification.new do |s|
15
15
  s.rubyforge_project = 'ipa'
16
16
 
17
17
  s.add_dependency 'rubyzip', '~> 0.9.4'
18
- s.add_dependency 'sj-plist'
18
+ s.add_dependency 'CFPropertyList', '~> 2.2.0'
19
19
  s.add_development_dependency 'bundler', '>= 1.0.0'
20
20
 
21
21
  s.files = `git ls-files`.split("\n")
data/lib/ipa.rb CHANGED
@@ -1,7 +1,6 @@
1
1
  require 'zip/zip'
2
2
  require 'zip/zipfilesystem'
3
- require 'plist'
4
- require 'plist/binary'
3
+ require 'cfpropertylist'
5
4
 
6
5
  module IPA
7
6
  class IPAFile
@@ -53,13 +52,23 @@ module IPA
53
52
  data
54
53
  end
55
54
 
56
- def info
57
- @info_plist ||= Plist::Binary::decode_binary_plist(
58
- payload_file('Info.plist'))
55
+ def info
56
+ if @info_plist.nil?
57
+ data = payload_file('Info.plist')
58
+ plist = CFPropertyList::List.new(:data => data)
59
+ @info_plist = CFPropertyList.native_types(plist.value)
60
+ end
61
+ @info_plist
59
62
  end
60
-
63
+
61
64
  def icon
62
- payload_file('Icon.png')
65
+ path = info &&
66
+ info['CFBundleIcons'] &&
67
+ info['CFBundleIcons']['CFBundlePrimaryIcon'] &&
68
+ (info['CFBundleIcons']['CFBundlePrimaryIcon']['CFBundleIconFile'] ||
69
+ info['CFBundleIcons']['CFBundlePrimaryIcon']['CFBundleIconFiles'].first)
70
+ path ||= 'Icon.png'
71
+ payload_file(path)
63
72
  end
64
73
 
65
74
  def artwork
@@ -1,3 +1,3 @@
1
1
  module IPA
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ipa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
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: 2013-07-24 00:00:00.000000000 Z
12
+ date: 2013-07-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rubyzip
@@ -28,21 +28,21 @@ dependencies:
28
28
  - !ruby/object:Gem::Version
29
29
  version: 0.9.4
30
30
  - !ruby/object:Gem::Dependency
31
- name: sj-plist
31
+ name: CFPropertyList
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  none: false
34
34
  requirements:
35
- - - ! '>='
35
+ - - ~>
36
36
  - !ruby/object:Gem::Version
37
- version: '0'
37
+ version: 2.2.0
38
38
  type: :runtime
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
- - - ! '>='
43
+ - - ~>
44
44
  - !ruby/object:Gem::Version
45
- version: '0'
45
+ version: 2.2.0
46
46
  - !ruby/object:Gem::Dependency
47
47
  name: bundler
48
48
  requirement: !ruby/object:Gem::Requirement
@@ -88,7 +88,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
88
88
  version: '0'
89
89
  segments:
90
90
  - 0
91
- hash: 2619299529273758385
91
+ hash: 1781569824872270545
92
92
  required_rubygems_version: !ruby/object:Gem::Requirement
93
93
  none: false
94
94
  requirements: