ipa 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
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: