bundler_bash_completion 0.0.1
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/.gitignore +4 -0
- data/.rspec +2 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +26 -0
- data/MIT-LICENSE +20 -0
- data/README.mdown +19 -0
- data/Rakefile +10 -0
- data/VERSION +1 -0
- data/bin/bundler_bash_completion +5 -0
- data/bundler_bash_completion.gemspec +20 -0
- data/lib/bundler_bash_completion.rb +175 -0
- data/spec/bundler_bash_completion_spec.rb +278 -0
- data/spec/spec_helper.rb +6 -0
- metadata +88 -0
data/.gitignore
ADDED
data/.rspec
ADDED
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
bundler_bash_completion (0.0.1)
|
5
|
+
|
6
|
+
GEM
|
7
|
+
remote: http://rubygems.org/
|
8
|
+
specs:
|
9
|
+
diff-lcs (1.1.3)
|
10
|
+
rake (0.9.2.2)
|
11
|
+
rspec (2.9.0)
|
12
|
+
rspec-core (~> 2.9.0)
|
13
|
+
rspec-expectations (~> 2.9.0)
|
14
|
+
rspec-mocks (~> 2.9.0)
|
15
|
+
rspec-core (2.9.0)
|
16
|
+
rspec-expectations (2.9.0)
|
17
|
+
diff-lcs (~> 1.1.3)
|
18
|
+
rspec-mocks (2.9.0)
|
19
|
+
|
20
|
+
PLATFORMS
|
21
|
+
ruby
|
22
|
+
|
23
|
+
DEPENDENCIES
|
24
|
+
bundler_bash_completion!
|
25
|
+
rake (~> 0.9.2.2)
|
26
|
+
rspec (~> 2.9.0)
|
data/MIT-LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2012 Alexis Toulotte
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.mdown
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
# Bundler bash completion
|
2
|
+
|
3
|
+
Provides `bash` completion for [`bundle`](http://gembundler.com/) command.
|
4
|
+
|
5
|
+
## Description
|
6
|
+
|
7
|
+
This will complete for all bundler commands (`install`, `outdated`, `show`,
|
8
|
+
etc.). Completion is also made for installed gems and their binaries (for
|
9
|
+
`bundle update`, `bundle exec`, etc.).
|
10
|
+
|
11
|
+
## Installation
|
12
|
+
|
13
|
+
First, install gem:
|
14
|
+
|
15
|
+
gem install bundler_bash_completion
|
16
|
+
|
17
|
+
Then, add following line to your `~/.bashrc` file.
|
18
|
+
|
19
|
+
complete -C bundler_bash_completion -o default bundle
|
data/Rakefile
ADDED
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.0.1
|
@@ -0,0 +1,20 @@
|
|
1
|
+
Gem::Specification.new do |s|
|
2
|
+
s.name = 'bundler_bash_completion'
|
3
|
+
s.version = File.read(File.expand_path(File.dirname(__FILE__) + '/VERSION')).strip
|
4
|
+
s.platform = Gem::Platform::RUBY
|
5
|
+
s.author = 'Alexis Toulotte'
|
6
|
+
s.email = 'al@alweb.org'
|
7
|
+
s.homepage = 'https://github.com/alexistoulotte/bundler_bash_completion'
|
8
|
+
s.summary = 'Bundler bash completion'
|
9
|
+
s.description = 'Provides bash completion for bundle command'
|
10
|
+
|
11
|
+
s.rubyforge_project = 'bundler_bash_completion'
|
12
|
+
|
13
|
+
s.files = `git ls-files`.split("\n")
|
14
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
15
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
16
|
+
s.require_paths = ['lib']
|
17
|
+
|
18
|
+
s.add_development_dependency 'rake', '~> 0.9.2.2'
|
19
|
+
s.add_development_dependency 'rspec', '~> 2.9.0'
|
20
|
+
end
|
@@ -0,0 +1,175 @@
|
|
1
|
+
class BundlerBashCompletion
|
2
|
+
|
3
|
+
TASKS = {
|
4
|
+
'check' => {
|
5
|
+
'--gemfile' => :block,
|
6
|
+
'--no-color' => :continue,
|
7
|
+
'--path' => :block,
|
8
|
+
},
|
9
|
+
'clean' => {
|
10
|
+
'--force' => :continue,
|
11
|
+
'--no-color' => :continue,
|
12
|
+
'--verbose' => :continue,
|
13
|
+
},
|
14
|
+
'config' => {},
|
15
|
+
'console' => {},
|
16
|
+
'exec' => {
|
17
|
+
:bin => :continue,
|
18
|
+
},
|
19
|
+
'gem' => {
|
20
|
+
'--bin' => :block,
|
21
|
+
},
|
22
|
+
'help' => {
|
23
|
+
:task => :continue,
|
24
|
+
},
|
25
|
+
'init' => {
|
26
|
+
'--no-color' => :continue,
|
27
|
+
'--verbose' => :continue,
|
28
|
+
},
|
29
|
+
'install' => {
|
30
|
+
'--binstubs' => :continue,
|
31
|
+
'--deployment' => :continue,
|
32
|
+
'--gemfile' => :block,
|
33
|
+
'--local' => :continue,
|
34
|
+
'--no-color' => :continue,
|
35
|
+
'--path' => :block,
|
36
|
+
'--shebang' => :block,
|
37
|
+
'--standalone' => :block,
|
38
|
+
'--system' => :continue,
|
39
|
+
'--verbose' => :continue,
|
40
|
+
'--without' => :block,
|
41
|
+
},
|
42
|
+
'list' => {
|
43
|
+
'--no-color' => :continue,
|
44
|
+
'--paths' => :continue,
|
45
|
+
'--verbose' => :continue,
|
46
|
+
:gem => :continue,
|
47
|
+
},
|
48
|
+
'open' => {
|
49
|
+
:gem => :continue,
|
50
|
+
},
|
51
|
+
'outdated' => {
|
52
|
+
'--local' => :continue,
|
53
|
+
'--no-color' => :continue,
|
54
|
+
'--pre' => :continue,
|
55
|
+
'--source' => :block,
|
56
|
+
'--verbose' => :continue,
|
57
|
+
:gem => :continue,
|
58
|
+
},
|
59
|
+
'package' => {},
|
60
|
+
'show' => {
|
61
|
+
'--no-color' => :continue,
|
62
|
+
'--paths' => :continue,
|
63
|
+
'--verbose' => :continue,
|
64
|
+
:gem => :continue,
|
65
|
+
},
|
66
|
+
'update' => {
|
67
|
+
'--no-color' => :continue,
|
68
|
+
'--source' => :block,
|
69
|
+
'--verbose' => :continue,
|
70
|
+
:gems => :continue,
|
71
|
+
},
|
72
|
+
'viz' => {
|
73
|
+
'--file' => :block,
|
74
|
+
'--format' => :block,
|
75
|
+
'--no-color' => :continue,
|
76
|
+
'--requirements' => :block,
|
77
|
+
'--verbose' => :continue,
|
78
|
+
'--version' => :block,
|
79
|
+
},
|
80
|
+
}
|
81
|
+
|
82
|
+
attr_reader :line
|
83
|
+
|
84
|
+
def initialize(line)
|
85
|
+
@line = line.to_s.gsub(/^\s+/, '').freeze
|
86
|
+
end
|
87
|
+
|
88
|
+
def arguments
|
89
|
+
@arguments ||= line.split(/\s+/)
|
90
|
+
end
|
91
|
+
|
92
|
+
def bins
|
93
|
+
@bins ||= begin
|
94
|
+
require 'bundler'
|
95
|
+
Bundler.setup.specs.map(&:executables).flatten + ['gem']
|
96
|
+
rescue Exception
|
97
|
+
['gem']
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
def command
|
102
|
+
arguments.first.to_s
|
103
|
+
end
|
104
|
+
|
105
|
+
def completion_word
|
106
|
+
@completion_word ||= (line =~ /\s+$/) ? '' : arguments.last
|
107
|
+
end
|
108
|
+
|
109
|
+
def complete
|
110
|
+
return tasks_completion if tasks_completion?
|
111
|
+
return task_options_completion if task_options_completion?
|
112
|
+
[]
|
113
|
+
end
|
114
|
+
|
115
|
+
def gems
|
116
|
+
@gems ||= begin
|
117
|
+
require 'bundler'
|
118
|
+
Bundler.setup.specs.map(&:name)
|
119
|
+
rescue Exception
|
120
|
+
[]
|
121
|
+
end
|
122
|
+
end
|
123
|
+
|
124
|
+
def task
|
125
|
+
@task ||= (completion_step > 1) ? arguments[1].to_s : ''
|
126
|
+
end
|
127
|
+
|
128
|
+
def task_options
|
129
|
+
@task_options ||= (completion_step > 2) ? arguments[2..(completion_step - 1)] : []
|
130
|
+
end
|
131
|
+
|
132
|
+
private
|
133
|
+
|
134
|
+
def bundle_command?
|
135
|
+
command == 'bundle'
|
136
|
+
end
|
137
|
+
|
138
|
+
def completion_step
|
139
|
+
@completion_step ||= arguments.size - (completion_word.empty? ? 0 : 1)
|
140
|
+
end
|
141
|
+
|
142
|
+
def tasks_completion
|
143
|
+
TASKS.keys.select { |t| t.start_with?(completion_word) }
|
144
|
+
end
|
145
|
+
|
146
|
+
def tasks_completion?
|
147
|
+
bundle_command? && completion_step == 1
|
148
|
+
end
|
149
|
+
|
150
|
+
def task_options_completion
|
151
|
+
options = TASKS[task] || {}
|
152
|
+
return [] if options[task_options.last] == :block
|
153
|
+
completion = options.keys.map do |key|
|
154
|
+
if key == :task
|
155
|
+
(task_options & TASKS.keys).empty? ? TASKS.keys : nil
|
156
|
+
elsif key == :gem
|
157
|
+
(task_options & gems).empty? ? gems : nil
|
158
|
+
elsif key == :gems
|
159
|
+
gems - task_options
|
160
|
+
elsif key == :bin
|
161
|
+
(task_options & bins).empty? ? bins : nil
|
162
|
+
else
|
163
|
+
key
|
164
|
+
end
|
165
|
+
end
|
166
|
+
completion.flatten!
|
167
|
+
completion.compact!
|
168
|
+
completion.select { |c| c.start_with?(completion_word) }
|
169
|
+
end
|
170
|
+
|
171
|
+
def task_options_completion?
|
172
|
+
bundle_command? && completion_step > 1 && TASKS.key?(task)
|
173
|
+
end
|
174
|
+
|
175
|
+
end
|
@@ -0,0 +1,278 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe BundlerBashCompletion do
|
4
|
+
|
5
|
+
def completion(line = nil)
|
6
|
+
BundlerBashCompletion.new(line)
|
7
|
+
end
|
8
|
+
|
9
|
+
describe '#arguments' do
|
10
|
+
|
11
|
+
it 'is given line splitted by whitespaces' do
|
12
|
+
completion('bundle exec rails s').arguments.should == ['bundle', 'exec', 'rails', 's']
|
13
|
+
end
|
14
|
+
|
15
|
+
end
|
16
|
+
|
17
|
+
describe '#bins' do
|
18
|
+
|
19
|
+
it 'is installed binaries' do
|
20
|
+
completion.bins.should include('autospec', 'bundler_bash_completion', 'gem', 'ldiff', 'rake', 'rspec')
|
21
|
+
completion.bins.should_not include('rails')
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
|
26
|
+
describe '#command' do
|
27
|
+
|
28
|
+
it 'is first argument' do
|
29
|
+
completion('bundle exec').command.should == 'bundle'
|
30
|
+
completion('rake').command.should == 'rake'
|
31
|
+
end
|
32
|
+
|
33
|
+
it 'is empty string if line is blank' do
|
34
|
+
completion(nil).command.should == ''
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
|
39
|
+
describe '#complete' do
|
40
|
+
|
41
|
+
context 'with "foo"' do
|
42
|
+
|
43
|
+
it 'is an empty array' do
|
44
|
+
completion('foo').complete.should == []
|
45
|
+
end
|
46
|
+
|
47
|
+
end
|
48
|
+
|
49
|
+
context 'with "bundle"' do
|
50
|
+
|
51
|
+
it 'is an empty array' do
|
52
|
+
completion('bundle').complete.should == []
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
56
|
+
|
57
|
+
context 'with "bundle "' do
|
58
|
+
|
59
|
+
it 'is all tasks' do
|
60
|
+
completion('bundle ').complete.should include('check', 'outdated', 'list', 'show')
|
61
|
+
end
|
62
|
+
|
63
|
+
end
|
64
|
+
|
65
|
+
context 'with "bundle "' do
|
66
|
+
|
67
|
+
it 'is all tasks' do
|
68
|
+
completion('bundle ').complete.should include('check', 'outdated', 'list', 'show')
|
69
|
+
end
|
70
|
+
|
71
|
+
end
|
72
|
+
|
73
|
+
context 'with "bundle in"' do
|
74
|
+
|
75
|
+
it 'is "init" & "install" tasks' do
|
76
|
+
completion('bundle in').complete.should == ['init', 'install']
|
77
|
+
end
|
78
|
+
|
79
|
+
end
|
80
|
+
|
81
|
+
context 'with "bundle in "' do
|
82
|
+
|
83
|
+
it 'is an empty array' do
|
84
|
+
completion('bundle in ').complete.should == []
|
85
|
+
end
|
86
|
+
|
87
|
+
end
|
88
|
+
|
89
|
+
context 'with "bundle foo"' do
|
90
|
+
|
91
|
+
it 'is an empty array' do
|
92
|
+
completion('bundle foo').complete.should == []
|
93
|
+
end
|
94
|
+
|
95
|
+
end
|
96
|
+
|
97
|
+
context 'with "bundle foo "' do
|
98
|
+
|
99
|
+
it 'is an empty array' do
|
100
|
+
completion('bundle foo ').complete.should == []
|
101
|
+
end
|
102
|
+
|
103
|
+
end
|
104
|
+
|
105
|
+
context 'with "bundle install "' do
|
106
|
+
|
107
|
+
it 'is "--local", "--path", "--verbose", "--without", etc.' do
|
108
|
+
completion('bundle install ').complete.should include('--local', '--path', '--verbose', '--without')
|
109
|
+
end
|
110
|
+
|
111
|
+
end
|
112
|
+
|
113
|
+
context 'with "bundle install --p"' do
|
114
|
+
|
115
|
+
it 'is "--path"' do
|
116
|
+
completion('bundle install --p').complete.should == ['--path']
|
117
|
+
end
|
118
|
+
|
119
|
+
end
|
120
|
+
|
121
|
+
context 'with "bundle install --path "' do
|
122
|
+
|
123
|
+
it 'is an empty array' do
|
124
|
+
completion('bundle install --path ').complete.should == []
|
125
|
+
end
|
126
|
+
|
127
|
+
end
|
128
|
+
|
129
|
+
context 'with "bundle install --local "' do
|
130
|
+
|
131
|
+
it 'is "--local", "--path", "--without", etc.' do
|
132
|
+
completion('bundle install ').complete.should include('--local', '--path', '--without')
|
133
|
+
end
|
134
|
+
|
135
|
+
end
|
136
|
+
|
137
|
+
context 'with "bundle help in"' do
|
138
|
+
|
139
|
+
it 'is "init" and "install"' do
|
140
|
+
completion('bundle help in').complete.should == ['init', 'install']
|
141
|
+
end
|
142
|
+
|
143
|
+
end
|
144
|
+
|
145
|
+
context 'with "bundle help install "' do
|
146
|
+
|
147
|
+
it 'is an empty array' do
|
148
|
+
completion('bundle help install ').complete.should == []
|
149
|
+
end
|
150
|
+
|
151
|
+
end
|
152
|
+
|
153
|
+
context 'with "bundle show "' do
|
154
|
+
|
155
|
+
it 'is gems and "--verbose", etc.' do
|
156
|
+
completion('bundle show ').complete.should include('diff-lcs', 'rake', 'rspec', '--verbose')
|
157
|
+
end
|
158
|
+
|
159
|
+
end
|
160
|
+
|
161
|
+
context 'with "bundle show rspec "' do
|
162
|
+
|
163
|
+
it 'is "--paths", "--no-color" and "--verbose"' do
|
164
|
+
completion('bundle show rspec ').complete.should == ['--no-color', '--paths', '--verbose']
|
165
|
+
end
|
166
|
+
|
167
|
+
end
|
168
|
+
|
169
|
+
context 'with "bundle update "' do
|
170
|
+
|
171
|
+
it 'is gems and "--verbose", etc.' do
|
172
|
+
completion('bundle update ').complete.should include('diff-lcs', 'rake', 'rspec', '--verbose')
|
173
|
+
end
|
174
|
+
|
175
|
+
end
|
176
|
+
|
177
|
+
context 'with "bundle update rake rspec "' do
|
178
|
+
|
179
|
+
it 'is gems (without rake & rspec) and "--verbose", etc.' do
|
180
|
+
completion('bundle update rake rspec ').complete.should include('bundler', 'diff-lcs', 'rspec-core', '--verbose')
|
181
|
+
completion('bundle update rake rspec ').complete.should_not include('rake', 'rspec')
|
182
|
+
end
|
183
|
+
|
184
|
+
end
|
185
|
+
|
186
|
+
context 'with "bundle exec "' do
|
187
|
+
|
188
|
+
it 'is bins' do
|
189
|
+
completion('bundle exec ').complete.should include('ldiff', 'rake', 'rspec')
|
190
|
+
completion('bundle exec ').complete.should_not include('--verbose')
|
191
|
+
end
|
192
|
+
|
193
|
+
end
|
194
|
+
|
195
|
+
context 'with "bundle exec rake "' do
|
196
|
+
|
197
|
+
it 'is an empty array' do
|
198
|
+
completion('bundle exec rake ').complete.should == []
|
199
|
+
end
|
200
|
+
|
201
|
+
end
|
202
|
+
|
203
|
+
end
|
204
|
+
|
205
|
+
describe '#completion_word' do
|
206
|
+
|
207
|
+
it 'is last word on line' do
|
208
|
+
completion('bundle instal').completion_word.should == 'instal'
|
209
|
+
end
|
210
|
+
|
211
|
+
it 'is an empty string if line ends with a white space' do
|
212
|
+
completion('bundle install ').completion_word.should == ''
|
213
|
+
completion('bundle install ').completion_word.should == ''
|
214
|
+
end
|
215
|
+
|
216
|
+
end
|
217
|
+
|
218
|
+
describe '#gems' do
|
219
|
+
|
220
|
+
it 'is installed gems' do
|
221
|
+
completion.gems.should include('bundler', 'rake', 'rspec', 'rspec-core', 'rspec-expectations')
|
222
|
+
completion.gems.should_not include('rails')
|
223
|
+
end
|
224
|
+
|
225
|
+
end
|
226
|
+
|
227
|
+
describe '#line' do
|
228
|
+
|
229
|
+
it 'is line given at initializion' do
|
230
|
+
completion('hello').line.should == 'hello'
|
231
|
+
end
|
232
|
+
|
233
|
+
it 'is frozen' do
|
234
|
+
expect {
|
235
|
+
completion('hello').line.gsub!('l', 'w')
|
236
|
+
}.to raise_error(/can't modify frozen String/)
|
237
|
+
end
|
238
|
+
|
239
|
+
it 'is converted to string' do
|
240
|
+
completion(:hello).line.should == 'hello'
|
241
|
+
end
|
242
|
+
|
243
|
+
it 'first whitespaces are removed' do
|
244
|
+
completion(' hello').line.should == 'hello'
|
245
|
+
end
|
246
|
+
|
247
|
+
it 'last whitespaces are preserved' do
|
248
|
+
completion('hello ').line.should == 'hello '
|
249
|
+
end
|
250
|
+
|
251
|
+
end
|
252
|
+
|
253
|
+
describe '#task' do
|
254
|
+
|
255
|
+
it 'is an empty string when not ending with a whitespace' do
|
256
|
+
completion('bundle install').task.should == ''
|
257
|
+
end
|
258
|
+
|
259
|
+
it 'is task given by second argument if ending with a whitespace' do
|
260
|
+
completion('bundle install ').task.should == 'install'
|
261
|
+
completion('bundle foo ').task.should == 'foo'
|
262
|
+
completion('bundle help install ').task.should == 'help'
|
263
|
+
end
|
264
|
+
|
265
|
+
end
|
266
|
+
|
267
|
+
describe '#task_options' do
|
268
|
+
|
269
|
+
it 'is correct' do
|
270
|
+
completion('bundle install --path').task_options.should == []
|
271
|
+
completion('bundle install ').task_options.should == []
|
272
|
+
completion('bundle install --path fo').task_options.should == ['--path']
|
273
|
+
completion('bundle install --path fo ').task_options.should == ['--path', 'fo']
|
274
|
+
end
|
275
|
+
|
276
|
+
end
|
277
|
+
|
278
|
+
end
|
data/spec/spec_helper.rb
ADDED
metadata
ADDED
@@ -0,0 +1,88 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: bundler_bash_completion
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Alexis Toulotte
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2012-03-28 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rake
|
16
|
+
requirement: &70259655050140 !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ~>
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 0.9.2.2
|
22
|
+
type: :development
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *70259655050140
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: rspec
|
27
|
+
requirement: &70259655049560 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ~>
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 2.9.0
|
33
|
+
type: :development
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *70259655049560
|
36
|
+
description: Provides bash completion for bundle command
|
37
|
+
email: al@alweb.org
|
38
|
+
executables:
|
39
|
+
- bundler_bash_completion
|
40
|
+
extensions: []
|
41
|
+
extra_rdoc_files: []
|
42
|
+
files:
|
43
|
+
- .gitignore
|
44
|
+
- .rspec
|
45
|
+
- Gemfile
|
46
|
+
- Gemfile.lock
|
47
|
+
- MIT-LICENSE
|
48
|
+
- README.mdown
|
49
|
+
- Rakefile
|
50
|
+
- VERSION
|
51
|
+
- bin/bundler_bash_completion
|
52
|
+
- bundler_bash_completion.gemspec
|
53
|
+
- lib/bundler_bash_completion.rb
|
54
|
+
- spec/bundler_bash_completion_spec.rb
|
55
|
+
- spec/spec_helper.rb
|
56
|
+
homepage: https://github.com/alexistoulotte/bundler_bash_completion
|
57
|
+
licenses: []
|
58
|
+
post_install_message:
|
59
|
+
rdoc_options: []
|
60
|
+
require_paths:
|
61
|
+
- lib
|
62
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
63
|
+
none: false
|
64
|
+
requirements:
|
65
|
+
- - ! '>='
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: '0'
|
68
|
+
segments:
|
69
|
+
- 0
|
70
|
+
hash: -1437438930328702423
|
71
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
72
|
+
none: false
|
73
|
+
requirements:
|
74
|
+
- - ! '>='
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '0'
|
77
|
+
segments:
|
78
|
+
- 0
|
79
|
+
hash: -1437438930328702423
|
80
|
+
requirements: []
|
81
|
+
rubyforge_project: bundler_bash_completion
|
82
|
+
rubygems_version: 1.8.17
|
83
|
+
signing_key:
|
84
|
+
specification_version: 3
|
85
|
+
summary: Bundler bash completion
|
86
|
+
test_files:
|
87
|
+
- spec/bundler_bash_completion_spec.rb
|
88
|
+
- spec/spec_helper.rb
|