app-store-emigrant 0.0.1 → 0.0.2
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/.travis.yml +6 -0
- data/CHANGELOG +9 -0
- data/README.md +38 -2
- data/app-store-emigrant.gemspec +7 -2
- data/lib/app-store-emigrant/app.rb +3 -3
- data/lib/app-store-emigrant/cli.rb +1 -1
- data/lib/app-store-emigrant/library.rb +1 -1
- data/lib/app-store-emigrant/version.rb +1 -1
- metadata +17 -14
data/.travis.yml
ADDED
data/CHANGELOG
ADDED
data/README.md
CHANGED
|
@@ -1,5 +1,41 @@
|
|
|
1
1
|
|
|
2
|
-
App Store Emigrant
|
|
2
|
+
App Store Emigrant [](http://travis-ci.org/timkurvers/app-store-emigrant)
|
|
3
3
|
==================
|
|
4
4
|
|
|
5
|
-
|
|
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
|
data/app-store-emigrant.gemspec
CHANGED
|
@@ -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 = '
|
|
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 = '
|
|
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('(
|
|
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,
|
|
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
|
|
81
|
+
plist = CFPropertyList::List.new(:data => data)
|
|
82
82
|
@metadata = CFPropertyList.native_types(plist.value)
|
|
83
83
|
end
|
|
84
84
|
rescue Zip::ZipError => e
|
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.
|
|
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-
|
|
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: &
|
|
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: *
|
|
24
|
+
version_requirements: *70224611793140
|
|
25
25
|
- !ruby/object:Gem::Dependency
|
|
26
26
|
name: rainbow
|
|
27
|
-
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: *
|
|
35
|
+
version_requirements: *70224611792640
|
|
36
36
|
- !ruby/object:Gem::Dependency
|
|
37
37
|
name: CFPropertyList
|
|
38
|
-
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: *
|
|
46
|
+
version_requirements: *70224611792140
|
|
47
47
|
- !ruby/object:Gem::Dependency
|
|
48
48
|
name: rake
|
|
49
|
-
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: *
|
|
58
|
-
description:
|
|
59
|
-
|
|
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:
|
|
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.
|
|
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
|