app-store-emigrant 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/.travis.yml ADDED
@@ -0,0 +1,6 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.8.7
4
+ - 1.9.2
5
+ - 1.9.3
6
+ script: bundle exec rake test
data/CHANGELOG ADDED
@@ -0,0 +1,9 @@
1
+ CHANGELOG
2
+
3
+ v0.0.2
4
+ - Added Ruby 1.8.7 support
5
+ - Added Travis continuous integration support
6
+ - Added proper README including background, usage and installation notes
7
+
8
+ v0.0.1
9
+ - Initial alpha release
data/README.md CHANGED
@@ -1,5 +1,41 @@
1
1
 
2
- App Store Emigrant
2
+ App Store Emigrant [![Build Status](https://secure.travis-ci.org/timkurvers/app-store-emigrant.png?branch=master)](http://travis-ci.org/timkurvers/app-store-emigrant)
3
3
  ==================
4
4
 
5
- Once this gem is even remotely stable, this README will be updated.
5
+ Copyright (c) 2012 Tim Kurvers <http://www.moonsphere.net>
6
+
7
+ App Store Emigrant is a Ruby gem that will manually attempt to verify whether
8
+ any of your local mobile applications are out of date, which iTunes will refuse
9
+ to do automatically once you have moved countries.
10
+
11
+ **Suported Ruby versions: 1.8.7 or higher**
12
+
13
+ Licensed under the **MIT** license, see LICENSE for more information.
14
+
15
+ Background
16
+ ----------
17
+
18
+ For more information on the issues faced when moving countries with regards to
19
+ Apple's ecosystem please see [these](https://discussions.apple.com/thread/2443094) [discussions](https://discussions.apple.com/message/16273593).
20
+
21
+
22
+ Installation
23
+ ------------
24
+
25
+ App Store Emigrant is available from RubyGems and can be installed as follows:
26
+
27
+ $ gem install app-store-emigrant
28
+
29
+
30
+ Usage
31
+ -----
32
+
33
+ Once installed, a new not-so-fantastically named binary called 'ase' will be
34
+ added to your path. Invoke the binary to start the verification process:
35
+
36
+ $ ase
37
+
38
+ If App Store Emigrant complains that it cannot find your default library,
39
+ help it along and specify where your iTunes library lurks:
40
+
41
+ $ ase ~/m00sic
@@ -9,9 +9,9 @@ Gem::Specification.new do |s|
9
9
  s.version = AppStore::Emigrant::VERSION
10
10
  s.authors = ['Tim Kurvers']
11
11
  s.email = ['tim@moonsphere.net']
12
- s.homepage = 'http://moonsphere.net'
12
+ s.homepage = 'https://github.com/timkurvers/app-store-emigrant'
13
13
  s.summary = 'App Store Emigrant will manually attempt to verify whether any of your local mobile applications are out of date'
14
- s.description = 'Moved countries and now iTunes refuses to notify you properly with updates? Rest assured, using App Store Emigrant you know exactly which apps are outdated'
14
+ s.description = 'App Store Emigrant will manually attempt to verify whether any of your local mobile applications are out of date, which iTunes - unfortunately - will refuse once you have moved countries'
15
15
 
16
16
  s.rubyforge_project = 'app-store-emigrant'
17
17
 
@@ -25,5 +25,10 @@ Gem::Specification.new do |s|
25
25
  s.add_dependency 'CFPropertyList', '~> 2.0.17'
26
26
 
27
27
  s.add_development_dependency 'rake'
28
+
29
+ if RUBY_VERSION < '1.9'
30
+ s.add_dependency 'json'
31
+ s.add_development_dependency 'minitest'
32
+ end
28
33
 
29
34
  end
@@ -18,7 +18,7 @@ module AppStore::Emigrant
18
18
  ]
19
19
 
20
20
  # Regular expression to match a version number in filenames
21
- FILENAME_VERSION_REGEX = Regexp.new('(?<version>[0-9.]+)(?:' + VALID_EXTENSIONS.join('|') + ')')
21
+ FILENAME_VERSION_REGEX = Regexp.new('([0-9.]+)(?:' + VALID_EXTENSIONS.join('|').gsub!('.', '\.') + ')')
22
22
 
23
23
  attr_reader :path
24
24
 
@@ -64,7 +64,7 @@ module AppStore::Emigrant
64
64
 
65
65
  # Otherwise, use the filename
66
66
  unless @version
67
- @version = filename[FILENAME_VERSION_REGEX, :version]
67
+ @version = filename[FILENAME_VERSION_REGEX, 1]
68
68
  end
69
69
 
70
70
  end
@@ -78,7 +78,7 @@ module AppStore::Emigrant
78
78
  begin
79
79
  Zip::ZipFile.open(@path) do |zip|
80
80
  data = zip.file.read('iTunesMetadata.plist')
81
- plist = CFPropertyList::List.new(data: data)
81
+ plist = CFPropertyList::List.new(:data => data)
82
82
  @metadata = CFPropertyList.native_types(plist.value)
83
83
  end
84
84
  rescue Zip::ZipError => e
@@ -26,7 +26,7 @@ module AppStore::Emigrant
26
26
  end
27
27
  puts
28
28
 
29
- sleep(1)
29
+ sleep(0.75)
30
30
  end
31
31
 
32
32
  end
@@ -34,7 +34,7 @@ module AppStore::Emigrant
34
34
  # Forcefully loads applications from disk
35
35
  def load!
36
36
  @apps = []
37
- @path.each_child do |item|
37
+ @path.children.each do |item|
38
38
  if item.file?
39
39
  begin
40
40
  @apps << App.new(item)
@@ -3,6 +3,6 @@ module AppStore; end
3
3
 
4
4
  module AppStore::Emigrant
5
5
 
6
- VERSION = '0.0.1'
6
+ VERSION = '0.0.2'
7
7
 
8
8
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: app-store-emigrant
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-27 00:00:00.000000000 Z
12
+ date: 2012-03-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rubyzip
16
- requirement: &70227983767300 !ruby/object:Gem::Requirement
16
+ requirement: &70224611793140 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 0.9.5
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70227983767300
24
+ version_requirements: *70224611793140
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rainbow
27
- requirement: &70227984172040 !ruby/object:Gem::Requirement
27
+ requirement: &70224611792640 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.1.3
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70227984172040
35
+ version_requirements: *70224611792640
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: CFPropertyList
38
- requirement: &70227984171580 !ruby/object:Gem::Requirement
38
+ requirement: &70224611792140 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 2.0.17
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70227984171580
46
+ version_requirements: *70224611792140
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rake
49
- requirement: &70227984171200 !ruby/object:Gem::Requirement
49
+ requirement: &70224611791740 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,9 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70227984171200
58
- description: Moved countries and now iTunes refuses to notify you properly with updates?
59
- Rest assured, using App Store Emigrant you know exactly which apps are outdated
57
+ version_requirements: *70224611791740
58
+ description: App Store Emigrant will manually attempt to verify whether any of your
59
+ local mobile applications are out of date, which iTunes - unfortunately - will refuse
60
+ once you have moved countries
60
61
  email:
61
62
  - tim@moonsphere.net
62
63
  executables:
@@ -65,6 +66,8 @@ extensions: []
65
66
  extra_rdoc_files: []
66
67
  files:
67
68
  - .gitignore
69
+ - .travis.yml
70
+ - CHANGELOG
68
71
  - Gemfile
69
72
  - LICENSE
70
73
  - README.md
@@ -83,7 +86,7 @@ files:
83
86
  - specs/fixtures/dummy-library/iTunesMetadata.plist
84
87
  - specs/helpers.rb
85
88
  - specs/library.rb
86
- homepage: http://moonsphere.net
89
+ homepage: https://github.com/timkurvers/app-store-emigrant
87
90
  licenses: []
88
91
  post_install_message:
89
92
  rdoc_options: []
@@ -103,7 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
103
106
  version: '0'
104
107
  requirements: []
105
108
  rubyforge_project: app-store-emigrant
106
- rubygems_version: 1.8.15
109
+ rubygems_version: 1.8.17
107
110
  signing_key:
108
111
  specification_version: 3
109
112
  summary: App Store Emigrant will manually attempt to verify whether any of your local