furoshiki 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d0a17813563822aee7e3ff59e3ed2fd2751ee933
4
+ data.tar.gz: eea188ad94a3bbfa03fbe232f8b6e8200dcaa85f
5
+ SHA512:
6
+ metadata.gz: 42e0d0a9be95baf3ff80bda2606708f8240d43726fff18dc6165841278e6b8e1aa6d1f675ccd813e5813be076c4aa3f5a8a9ee18a9141379f980002d4876b19b
7
+ data.tar.gz: f48f91a79590f621aaaed9ddef6dccb6e0999f9462453345087cd64b64fb3e3ad4206e05934a0caf33761173230567e5d63ebe51de4c95d367de19a45d667da5
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- jruby-1.7.4
1
+ jruby-1.7.16
data/furoshiki.gemspec CHANGED
@@ -16,11 +16,12 @@ Gem::Specification.new do |s|
16
16
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
17
17
  s.require_paths = ["lib"]
18
18
 
19
- s.add_dependency "warbler"
19
+ s.add_dependency "warbler", '~> 1.4.4'
20
20
  s.add_dependency "plist"
21
- s.add_dependency 'rubyzip', '< 1.0.0'
21
+ s.add_dependency 'rubyzip', '>= 1.0.0'
22
22
 
23
23
  s.add_development_dependency 'rake'
24
24
  s.add_development_dependency 'rspec'
25
-
25
+ s.add_development_dependency 'rspec-its'
26
+ s.add_development_dependency 'pry'
26
27
  end
@@ -170,12 +170,14 @@ module Furoshiki
170
170
  def extract_template
171
171
  raise IOError, "Couldn't find app template at #{template_path}." unless template_path.size?
172
172
  extracted_app = nil
173
- ::Zip::ZipFile.new(template_path).each do |entry|
174
- # Fragile hack
175
- extracted_app = template_path.join(entry.name) if Pathname.new(entry.name).extname == '.app'
176
- p = tmp.join(entry.name)
177
- p.dirname.mkpath
178
- entry.extract(p)
173
+
174
+ ::Zip::File.open(template_path) do |zip_file|
175
+ zip_file.each do |entry|
176
+ extracted_app = template_path.join(entry.name) if Pathname.new(entry.name).extname == '.app'
177
+ p = tmp.join(entry.name)
178
+ p.dirname.mkpath
179
+ entry.extract(p)
180
+ end
179
181
  end
180
182
  mv tmp.join(extracted_app.basename.to_s), tmp_app_path
181
183
  end
@@ -1,4 +1,4 @@
1
1
  module Furoshiki
2
- VERSION = "0.1.2"
2
+ VERSION = '0.2.0'
3
3
  end
4
4
 
@@ -1,5 +1,5 @@
1
1
  require 'pathname'
2
- require 'zip/zip'
2
+ require 'zip'
3
3
 
4
4
  module Furoshiki
5
5
  module Zip
@@ -15,12 +15,13 @@ module Furoshiki
15
15
  # @example
16
16
  # To zip the directory "/tmp/input" so that unarchiving
17
17
  # gives you a single directory "input":
18
- #
19
- # zip = Furoshiki::Zip::Recursive
18
+ #
19
+ # output_file = '/tmp/out.zip'
20
+ #
21
+ # zip = Furoshiki::Zip::Recursive(output_file)
20
22
  # entries = Pathname.new("/tmp/input").entries
21
23
  # zip_prefix = ''
22
24
  # disk_prefix = '/tmp'
23
- # output_file = '/tmp/out.zip'
24
25
  # zf.write(entries, disk_prefix, zip_prefix, output_file)
25
26
  class Recursive
26
27
  def initialize(output_file)
@@ -30,9 +31,8 @@ module Furoshiki
30
31
  # @param [Array<Pathname>] entries the initial set of files to include
31
32
  # @param [Pathname] disk_prefix a path prefix for existing entries
32
33
  # @param [Pathname] zip_prefix a path prefix to add within archive
33
- # @param [Pathname] output_file the location of the output archive
34
34
  def write(entries, disk_prefix, zip_prefix)
35
- io = ::Zip::ZipFile.open(@output_file, ::Zip::ZipFile::CREATE);
35
+ io = ::Zip::File.open(@output_file, ::Zip::File::CREATE);
36
36
  write_entries(entries, disk_prefix, zip_prefix, io)
37
37
  io.close();
38
38
  end
@@ -15,35 +15,35 @@ describe Furoshiki::Shoes::Configuration do
15
15
  its(:dmg) { should be_an_instance_of(Hash) }
16
16
  its(:run) { should be_nil }
17
17
  its(:working_dir) { should eq(Pathname.new(Dir.pwd)) }
18
- it { should_not be_valid } # no :run
18
+ it { is_expected.not_to be_valid } # no :run
19
19
 
20
20
  describe "#icons" do
21
21
  it 'osx is nil' do
22
- subject.icons[:osx].should be_nil
22
+ expect(subject.icons[:osx]).to be_nil
23
23
  end
24
24
 
25
25
  it 'gtk is nil' do
26
- subject.icons[:gtk].should be_nil
26
+ expect(subject.icons[:gtk]).to be_nil
27
27
  end
28
28
 
29
29
  it 'win32 is nil' do
30
- subject.icons[:win32].should be_nil
30
+ expect(subject.icons[:win32]).to be_nil
31
31
  end
32
32
  end
33
33
 
34
34
  describe "#dmg" do
35
35
  it "has ds_store" do
36
- subject.dmg[:ds_store].should eq('path/to/default/.DS_Store')
36
+ expect(subject.dmg[:ds_store]).to eq('path/to/default/.DS_Store')
37
37
  end
38
38
 
39
39
  it "has background" do
40
- subject.dmg[:background].should eq('path/to/default/background.png')
40
+ expect(subject.dmg[:background]).to eq('path/to/default/background.png')
41
41
  end
42
42
  end
43
43
 
44
44
  describe "#to_hash" do
45
45
  it "round-trips" do
46
- Furoshiki::Shoes::Configuration.new(subject.to_hash).should eq(subject)
46
+ expect(Furoshiki::Shoes::Configuration.new(subject.to_hash)).to eq(subject)
47
47
  end
48
48
  end
49
49
  end
@@ -63,38 +63,38 @@ describe Furoshiki::Shoes::Configuration do
63
63
  its(:icons) { should be_an_instance_of(Hash) }
64
64
  its(:dmg) { should be_an_instance_of(Hash) }
65
65
  its(:working_dir) { should eq(@config_filename.dirname) }
66
- it { should be_valid }
66
+ it { is_expected.to be_valid }
67
67
 
68
68
  describe "#icons" do
69
69
  it 'has osx' do
70
- subject.icons[:osx].should eq('img/boots.icns')
70
+ expect(subject.icons[:osx]).to eq('img/boots.icns')
71
71
  end
72
72
 
73
73
  it 'has gtk' do
74
- subject.icons[:gtk].should eq('img/boots_512x512x32.png')
74
+ expect(subject.icons[:gtk]).to eq('img/boots_512x512x32.png')
75
75
  end
76
76
 
77
77
  it 'has win32' do
78
- subject.icons[:win32].should eq('img/boots.ico')
78
+ expect(subject.icons[:win32]).to eq('img/boots.ico')
79
79
  end
80
80
  end
81
81
 
82
82
  describe "#dmg" do
83
83
  it "has ds_store" do
84
- subject.dmg[:ds_store].should eq('path/to/custom/.DS_Store')
84
+ expect(subject.dmg[:ds_store]).to eq('path/to/custom/.DS_Store')
85
85
  end
86
86
 
87
87
  it "has background" do
88
- subject.dmg[:background].should eq('path/to/custom/background.png')
88
+ expect(subject.dmg[:background]).to eq('path/to/custom/background.png')
89
89
  end
90
90
  end
91
91
 
92
92
  it "incorporates custom features" do
93
- subject.custom.should eq('my custom feature')
93
+ expect(subject.custom).to eq('my custom feature')
94
94
  end
95
95
 
96
96
  it "round-trips" do
97
- Furoshiki::Shoes::Configuration.new(subject.to_hash).should eq(subject)
97
+ expect(Furoshiki::Shoes::Configuration.new(subject.to_hash)).to eq(subject)
98
98
  end
99
99
  end
100
100
 
@@ -110,7 +110,7 @@ describe Furoshiki::Shoes::Configuration do
110
110
  let(:options) { {:run => "path/to/non-existent/file"} }
111
111
  subject { Furoshiki::Shoes::Configuration.new options }
112
112
 
113
- it { should_not be_valid }
113
+ it { is_expected.not_to be_valid }
114
114
  end
115
115
 
116
116
  context "when osx icon is not specified" do
@@ -120,11 +120,11 @@ describe Furoshiki::Shoes::Configuration do
120
120
  subject { Furoshiki::Shoes::Configuration.new(options) }
121
121
 
122
122
  it "sets osx icon path to nil" do
123
- subject.icons[:osx].should be_nil
123
+ expect(subject.icons[:osx]).to be_nil
124
124
  end
125
125
 
126
126
  it "is valid" do
127
- subject.should be_valid
127
+ expect(subject).to be_valid
128
128
  end
129
129
  end
130
130
 
@@ -133,10 +133,10 @@ describe Furoshiki::Shoes::Configuration do
133
133
  subject { Furoshiki::Shoes::Configuration.new options }
134
134
 
135
135
  it "sets osx icon path" do
136
- subject.icons[:osx].should eq("path/to/non-existent/file")
136
+ expect(subject.icons[:osx]).to eq("path/to/non-existent/file")
137
137
  end
138
138
 
139
- it { should_not be_valid }
139
+ it { is_expected.not_to be_valid }
140
140
  end
141
141
 
142
142
  context "auto-loading" do
@@ -146,13 +146,13 @@ describe Furoshiki::Shoes::Configuration do
146
146
  it "looks for 'app.yaml' in current directory" do
147
147
  Dir.chdir @config_filename.parent do
148
148
  config = Furoshiki::Shoes::Configuration.load
149
- config.shortname.should eq('sweet-nebulae')
149
+ expect(config.shortname).to eq('sweet-nebulae')
150
150
  end
151
151
  end
152
152
 
153
153
  it "blows up if it can't find the file" do
154
154
  Dir.chdir File.dirname(__FILE__) do
155
- lambda { config = Furoshiki::Shoes::Configuration.load }.should raise_error
155
+ expect { config = Furoshiki::Shoes::Configuration.load }.to raise_error
156
156
  end
157
157
  end
158
158
  end
@@ -161,7 +161,7 @@ describe Furoshiki::Shoes::Configuration do
161
161
  it "finds the config" do
162
162
  Dir.chdir File.dirname(__FILE__) do
163
163
  config = Furoshiki::Shoes::Configuration.load(path)
164
- config.shortname.should eq('sweet-nebulae')
164
+ expect(config.shortname).to eq('sweet-nebulae')
165
165
  end
166
166
  end
167
167
  end
@@ -191,7 +191,7 @@ describe Furoshiki::Shoes::Configuration do
191
191
 
192
192
  context "when the file doesn't exist" do
193
193
  it "blows up" do
194
- lambda { Furoshiki::Shoes::Configuration.load('some/bogus/path') }.should raise_error
194
+ expect { Furoshiki::Shoes::Configuration.load('some/bogus/path') }.to raise_error
195
195
  end
196
196
  end
197
197
  end
@@ -5,6 +5,8 @@ SHOESSPEC_ROOT = File.expand_path('..', __FILE__)
5
5
  ENV['FUROSHIKI_HOME'] = SHOESSPEC_ROOT
6
6
 
7
7
  require 'rspec'
8
+ require 'rspec/its'
9
+ require 'pry'
8
10
  require 'pathname'
9
11
  require 'furoshiki/shoes'
10
12
 
@@ -38,7 +38,7 @@ describe Furoshiki::Shoes::SwtApp do
38
38
 
39
39
  it "sets package dir to {pwd}/pkg" do
40
40
  Dir.chdir @app_dir do
41
- subject.default_package_dir.should eq(@app_dir.join 'pkg')
41
+ expect(subject.default_package_dir).to eq(@app_dir.join 'pkg')
42
42
  end
43
43
  end
44
44
 
@@ -63,35 +63,35 @@ describe Furoshiki::Shoes::SwtApp do
63
63
  its(:template_path) { should exist }
64
64
 
65
65
  it "creates a .app" do
66
- @output_file.should exist
66
+ expect(@output_file).to exist
67
67
  end
68
68
 
69
69
  it "includes launcher" do
70
- launcher.should exist
70
+ expect(launcher).to exist
71
71
  end
72
72
 
73
73
  # Windows can't test this
74
74
  platform_is_not :windows do
75
75
  it "makes launcher executable" do
76
- launcher.should be_executable
76
+ expect(launcher).to be_executable
77
77
  end
78
78
  end
79
79
 
80
80
  it "deletes generic icon" do
81
- icon.parent.join('GenericApp.icns').should_not exist
81
+ expect(icon.parent.join('GenericApp.icns')).not_to exist
82
82
  end
83
83
 
84
84
  it "injects icon" do
85
- icon.should exist
85
+ expect(icon).to exist
86
86
  end
87
87
 
88
88
  it "injects jar" do
89
- jar.should exist
89
+ expect(jar).to exist
90
90
  end
91
91
 
92
92
  it "removes any extraneous jars" do
93
93
  jar_dir_contents = @output_file.join("Contents/Java").children
94
- jar_dir_contents.reject {|f| f == jar }.should be_empty
94
+ expect(jar_dir_contents.reject {|f| f == jar }).to be_empty
95
95
  end
96
96
 
97
97
  describe "Info.plist" do
@@ -101,23 +101,23 @@ describe Furoshiki::Shoes::SwtApp do
101
101
  end
102
102
 
103
103
  it "sets identifier" do
104
- @plist['CFBundleIdentifier'].should eq('com.hackety.shoes.sweet-nebulae')
104
+ expect(@plist['CFBundleIdentifier']).to eq('com.hackety.shoes.sweet-nebulae')
105
105
  end
106
106
 
107
107
  it "sets display name" do
108
- @plist['CFBundleDisplayName'].should eq('Sugar Clouds')
108
+ expect(@plist['CFBundleDisplayName']).to eq('Sugar Clouds')
109
109
  end
110
110
 
111
111
  it "sets bundle name" do
112
- @plist['CFBundleName'].should eq('Sugar Clouds')
112
+ expect(@plist['CFBundleName']).to eq('Sugar Clouds')
113
113
  end
114
114
 
115
115
  it "sets icon" do
116
- @plist['CFBundleIconFile'].should eq('boots.icns')
116
+ expect(@plist['CFBundleIconFile']).to eq('boots.icns')
117
117
  end
118
118
 
119
119
  it "sets version" do
120
- @plist['CFBundleVersion'].should eq('0.0.1')
120
+ expect(@plist['CFBundleVersion']).to eq('0.0.1')
121
121
  end
122
122
  end
123
123
  end
@@ -127,7 +127,7 @@ describe Furoshiki::Shoes::SwtApp do
127
127
  subject { Furoshiki::Shoes::SwtApp.new config }
128
128
 
129
129
  it "fails to initialize" do
130
- lambda { subject }.should raise_error(Furoshiki::ConfigurationError)
130
+ expect { subject }.to raise_error(Furoshiki::ConfigurationError)
131
131
  end
132
132
  end
133
133
  end
@@ -25,20 +25,20 @@ describe Furoshiki::Shoes::SwtJar do
25
25
  subject { @subject }
26
26
 
27
27
  it "creates a .jar" do
28
- output_file.should exist
28
+ expect(output_file).to exist
29
29
  end
30
30
 
31
31
  it "returns path to .jar" do
32
- @jar_path.should eq(output_file.to_s)
32
+ expect(@jar_path).to eq(output_file.to_s)
33
33
  end
34
34
 
35
35
  it "creates .jar smaller than 50MB" do
36
- File.size(output_file).should be < 50 * 1024 * 1024
36
+ expect(File.size(output_file)).to be < 50 * 1024 * 1024
37
37
  end
38
38
 
39
39
  it "excludes directories recursively" do
40
- jar = Zip::ZipFile.new(output_file)
41
- jar.entries.should_not include("dir_to_ignore/file_to_ignore")
40
+ jar = Zip::File.new(output_file)
41
+ expect(jar.entries).not_to include("dir_to_ignore/file_to_ignore")
42
42
  end
43
43
 
44
44
  its(:default_dir) { should eq(@output_dir) }
@@ -50,7 +50,7 @@ describe Furoshiki::Shoes::SwtJar do
50
50
  subject { Furoshiki::Shoes::SwtJar.new(config) }
51
51
 
52
52
  it "fails to initialize" do
53
- lambda { subject }.should raise_error(Furoshiki::ConfigurationError)
53
+ expect { subject }.to raise_error(Furoshiki::ConfigurationError)
54
54
  end
55
55
  end
56
56
  end
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,5 @@
1
+ require 'rspec/its'
2
+
1
3
  module PackageHelpers
2
4
  # need these values from a context block, so let doesn't work
3
5
  def spec_dir
@@ -10,7 +10,7 @@ end
10
10
  shared_context 'zip' do
11
11
  include_context 'package'
12
12
  let(:output_file) { @output_dir.join 'zip_directory_spec.zip' }
13
- let(:zip) { Zip::ZipFile.open output_file }
13
+ let(:zip) { Zip::File.open output_file }
14
14
 
15
15
  before :all do
16
16
  @output_dir.mkpath
@@ -10,20 +10,20 @@ describe Furoshiki::Zip::DirectoryContents do
10
10
  before :all do
11
11
  zip_directory_contents = Furoshiki::Zip::DirectoryContents.new input_dir, @output_file
12
12
  zip_directory_contents.write
13
- @zip = Zip::ZipFile.open @output_file
13
+ @zip = Zip::File.open @output_file
14
14
  end
15
15
 
16
16
  it "exists" do
17
- @output_file.should exist
17
+ expect(@output_file).to exist
18
18
  end
19
19
 
20
20
  it "does not include input directory without parents" do
21
- @zip.entries.map(&:name).should_not include(add_trailing_slash input_dir.basename)
21
+ expect(@zip.entries.map(&:name)).not_to include(add_trailing_slash input_dir.basename)
22
22
  end
23
23
 
24
24
  relative_input_paths(input_dir).each do |path|
25
25
  it "includes all children of input directory" do
26
- @zip.entries.map(&:name).should include(path)
26
+ expect(@zip.entries.map(&:name)).to include(path)
27
27
  end
28
28
  end
29
29
  end
@@ -11,26 +11,26 @@ describe Furoshiki::Zip::Directory do
11
11
  before :all do
12
12
  zip_directory = Furoshiki::Zip::Directory.new input_dir, @output_file
13
13
  zip_directory.write
14
- @zip = Zip::ZipFile.open @output_file
14
+ @zip = ::Zip::File.open @output_file
15
15
  end
16
16
 
17
17
  it "exists" do
18
- @output_file.should exist
18
+ expect(@output_file).to exist
19
19
  end
20
20
 
21
21
  it "includes input directory without parents" do
22
- @zip.entries.map(&:name).should include(add_trailing_slash input_dir.basename)
22
+ expect(@zip.entries.map(&:name)).to include(add_trailing_slash input_dir.basename)
23
23
  end
24
24
 
25
25
  relative_input_paths(input_dir.parent).each do |path|
26
26
  it "includes all children of input directory" do
27
- @zip.entries.map(&:name).should include(path)
27
+ expect(@zip.entries.map(&:name)).to include(path)
28
28
  end
29
29
  end
30
30
 
31
31
  it "doesn't include extra files" do
32
32
  number_of_files = Dir.glob("#{input_dir}/**/*").push(input_dir).length
33
- @zip.entries.length.should eq(number_of_files)
33
+ expect(@zip.entries.length).to eq(number_of_files)
34
34
  end
35
35
  end
36
36
  end
metadata CHANGED
@@ -1,30 +1,27 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: furoshiki
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 0.1.2
4
+ version: 0.2.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Steve Klabnik
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-09-27 00:00:00.000000000 Z
11
+ date: 2014-09-28 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: warbler
16
15
  version_requirements: !ruby/object:Gem::Requirement
17
16
  requirements:
18
- - - '>='
17
+ - - ~>
19
18
  - !ruby/object:Gem::Version
20
- version: '0'
21
- none: false
19
+ version: 1.4.4
22
20
  requirement: !ruby/object:Gem::Requirement
23
21
  requirements:
24
- - - '>='
22
+ - - ~>
25
23
  - !ruby/object:Gem::Version
26
- version: '0'
27
- none: false
24
+ version: 1.4.4
28
25
  prerelease: false
29
26
  type: :runtime
30
27
  - !ruby/object:Gem::Dependency
@@ -34,29 +31,25 @@ dependencies:
34
31
  - - '>='
35
32
  - !ruby/object:Gem::Version
36
33
  version: '0'
37
- none: false
38
34
  requirement: !ruby/object:Gem::Requirement
39
35
  requirements:
40
36
  - - '>='
41
37
  - !ruby/object:Gem::Version
42
38
  version: '0'
43
- none: false
44
39
  prerelease: false
45
40
  type: :runtime
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rubyzip
48
43
  version_requirements: !ruby/object:Gem::Requirement
49
44
  requirements:
50
- - - <
45
+ - - '>='
51
46
  - !ruby/object:Gem::Version
52
47
  version: 1.0.0
53
- none: false
54
48
  requirement: !ruby/object:Gem::Requirement
55
49
  requirements:
56
- - - <
50
+ - - '>='
57
51
  - !ruby/object:Gem::Version
58
52
  version: 1.0.0
59
- none: false
60
53
  prerelease: false
61
54
  type: :runtime
62
55
  - !ruby/object:Gem::Dependency
@@ -66,13 +59,11 @@ dependencies:
66
59
  - - '>='
67
60
  - !ruby/object:Gem::Version
68
61
  version: '0'
69
- none: false
70
62
  requirement: !ruby/object:Gem::Requirement
71
63
  requirements:
72
64
  - - '>='
73
65
  - !ruby/object:Gem::Version
74
66
  version: '0'
75
- none: false
76
67
  prerelease: false
77
68
  type: :development
78
69
  - !ruby/object:Gem::Dependency
@@ -82,13 +73,39 @@ dependencies:
82
73
  - - '>='
83
74
  - !ruby/object:Gem::Version
84
75
  version: '0'
85
- none: false
86
76
  requirement: !ruby/object:Gem::Requirement
87
77
  requirements:
88
78
  - - '>='
89
79
  - !ruby/object:Gem::Version
90
80
  version: '0'
91
- none: false
81
+ prerelease: false
82
+ type: :development
83
+ - !ruby/object:Gem::Dependency
84
+ name: rspec-its
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ requirement: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - '>='
93
+ - !ruby/object:Gem::Version
94
+ version: '0'
95
+ prerelease: false
96
+ type: :development
97
+ - !ruby/object:Gem::Dependency
98
+ name: pry
99
+ version_requirements: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - '>='
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ requirement: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - '>='
107
+ - !ruby/object:Gem::Version
108
+ version: '0'
92
109
  prerelease: false
93
110
  type: :development
94
111
  description: Create .app, .exe, and $LINUX_PACKAGE versions of your application, with its own embedded Ruby.
@@ -142,6 +159,7 @@ files:
142
159
  - vendor/appbundler-1.0.jar
143
160
  homepage: http://github.com/steveklabnik/furoshiki
144
161
  licenses: []
162
+ metadata: {}
145
163
  post_install_message:
146
164
  rdoc_options: []
147
165
  require_paths:
@@ -151,23 +169,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
151
169
  - - '>='
152
170
  - !ruby/object:Gem::Version
153
171
  version: '0'
154
- segments:
155
- - 0
156
- hash: 2
157
- none: false
158
172
  required_rubygems_version: !ruby/object:Gem::Requirement
159
173
  requirements:
160
174
  - - '>='
161
175
  - !ruby/object:Gem::Version
162
176
  version: '0'
163
- segments:
164
- - 0
165
- hash: 2
166
- none: false
167
177
  requirements: []
168
178
  rubyforge_project:
169
- rubygems_version: 1.8.24
179
+ rubygems_version: 2.1.9
170
180
  signing_key:
171
- specification_version: 3
181
+ specification_version: 4
172
182
  summary: Package and distribute applications with Ruby.
173
183
  test_files: []