rprogram 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
data/.rspec ADDED
@@ -0,0 +1 @@
1
+ --colour --format documentation
data/ChangeLog.md CHANGED
@@ -1,3 +1,7 @@
1
+ ### 0.2.1 / 2010-10-27
2
+
3
+ * Allow the formatter block passed to {RProgram::Option} to return `nil`.
4
+
1
5
  ### 0.2.0 / 2010-10-03
2
6
 
3
7
  * Added {RProgram::Nameable::ClassMethods}.
data/Rakefile CHANGED
@@ -1,43 +1,35 @@
1
1
  require 'rubygems'
2
2
  require 'rake'
3
- require './lib/rprogram/version.rb'
4
3
 
5
4
  begin
6
- gem 'jeweler', '~> 1.4.0'
7
- require 'jeweler'
5
+ gem 'ore-tasks', '~> 0.1.2'
6
+ require 'ore/tasks'
8
7
 
9
- Jeweler::Tasks.new do |gem|
10
- gem.name = 'rprogram'
11
- gem.version = RProgram::VERSION
12
- gem.summary = %Q{A library for creating wrappers around command-line programs.}
13
- gem.description = %Q{RProgram is a library for creating wrappers around command-line programs. RProgram provides a Rubyful interface to programs and all their options or non-options. RProgram can also search for programs installed on a system.}
14
- gem.email = 'postmodern.mod3@gmail.com'
15
- gem.homepage = 'http://github.com/postmodern/rprogram'
16
- gem.authors = ['Postmodern']
17
- gem.add_development_dependency 'rspec', '>= 1.3.0'
18
- gem.add_development_dependency 'yard', '>= 0.5.3'
19
- gem.has_rdoc = 'yard'
20
- end
21
- Jeweler::GemcutterTasks.new
22
- rescue LoadError
23
- puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
8
+ Ore::Tasks.new
9
+ rescue LoadError => e
10
+ STDERR.puts e.message
11
+ STDERR.puts "Run `gem install ore-tasks` to install 'ore/tasks'."
24
12
  end
25
13
 
26
- require 'spec/rake/spectask'
27
- Spec::Rake::SpecTask.new(:spec) do |spec|
28
- spec.libs += ['lib', 'spec']
29
- spec.spec_files = FileList['spec/**/*_spec.rb']
30
- spec.spec_opts = ['--options', '.specopts']
31
- end
14
+ begin
15
+ gem 'rspec', '~> 2.0.0'
16
+ require 'rspec/core/rake_task'
32
17
 
33
- task :spec => :check_dependencies
18
+ RSpec::Core::RakeTask.new
19
+ rescue LoadError => e
20
+ task :spec do
21
+ abort "Please run `gem install rspec` to install RSpec."
22
+ end
23
+ end
34
24
  task :default => :spec
35
25
 
36
26
  begin
27
+ gem 'yard', '~> 0.6.0'
37
28
  require 'yard'
38
- YARD::Rake::YardocTask.new
39
- rescue LoadError
29
+
30
+ YARD::Rake::YardocTask.new
31
+ rescue LoadError => e
40
32
  task :yard do
41
- abort "YARD is not available. In order to run yard, you must: gem install yard"
33
+ abort "Please run `gem install yard` to install YARD."
42
34
  end
43
35
  end
data/gemspec.yml ADDED
@@ -0,0 +1,20 @@
1
+ name: rprogram
2
+ summary: A library for creating wrappers around command-line programs.
3
+ description:
4
+ RProgram is a library for creating wrappers around command-line programs.
5
+ RProgram provides a Rubyful interface to programs and all their options
6
+ or non-options. RProgram can also search for programs installed on a
7
+ system. files without having to use YAML or define classes named like
8
+ the file.
9
+
10
+ license: MIT
11
+ authors: Postmodern
12
+ email: postmodern.mod3@gmail.com
13
+ homepage: http://github.com/postmodern/rprogram
14
+ has_yard: true
15
+
16
+ development_dependencies:
17
+ ore: ~> 0.2.0
18
+ ore-tasks: ~> 0.1.2
19
+ rspec: ~> 2.0.0
20
+ yard: ~> 0.6.0
@@ -110,12 +110,15 @@ module RProgram
110
110
 
111
111
  if @multiple
112
112
  return value.inject([]) do |args,value|
113
- args + @formatter.call(self,[value])
113
+ arg = @formatter.call(self,[value])
114
+
115
+ args += arg if arg
116
+ args
114
117
  end
115
118
  else
116
119
  value = [value.join(@separator)] if @separator
117
120
 
118
- return @formatter.call(self,value)
121
+ return (@formatter.call(self,value) || [])
119
122
  end
120
123
  end
121
124
 
@@ -1,4 +1,4 @@
1
1
  module RProgram
2
2
  # Version of RProgram
3
- VERSION = '0.2.0'
3
+ VERSION = '0.2.1'
4
4
  end
data/rprogram.gemspec CHANGED
@@ -1,104 +1,10 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
1
  # -*- encoding: utf-8 -*-
5
2
 
6
- Gem::Specification.new do |s|
7
- s.name = %q{rprogram}
8
- s.version = "0.2.0"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Postmodern"]
12
- s.date = %q{2010-10-03}
13
- s.description = %q{RProgram is a library for creating wrappers around command-line programs. RProgram provides a Rubyful interface to programs and all their options or non-options. RProgram can also search for programs installed on a system.}
14
- s.email = %q{postmodern.mod3@gmail.com}
15
- s.extra_rdoc_files = [
16
- "ChangeLog.md",
17
- "LICENSE.txt",
18
- "README.md"
19
- ]
20
- s.files = [
21
- ".gitignore",
22
- ".specopts",
23
- ".yardopts",
24
- "ChangeLog.md",
25
- "LICENSE.txt",
26
- "README.md",
27
- "Rakefile",
28
- "lib/rprogram.rb",
29
- "lib/rprogram/compat.rb",
30
- "lib/rprogram/exceptions.rb",
31
- "lib/rprogram/exceptions/program_not_found.rb",
32
- "lib/rprogram/extensions.rb",
33
- "lib/rprogram/nameable.rb",
34
- "lib/rprogram/nameable/class_methods.rb",
35
- "lib/rprogram/nameable/nameable.rb",
36
- "lib/rprogram/non_option.rb",
37
- "lib/rprogram/option.rb",
38
- "lib/rprogram/option_list.rb",
39
- "lib/rprogram/options.rb",
40
- "lib/rprogram/options/class_methods.rb",
41
- "lib/rprogram/options/options.rb",
42
- "lib/rprogram/program.rb",
43
- "lib/rprogram/rprogram.rb",
44
- "lib/rprogram/task.rb",
45
- "lib/rprogram/version.rb",
46
- "lib/rprogram/yard.rb",
47
- "rprogram.gemspec",
48
- "spec/classes/aliased_program.rb",
49
- "spec/classes/ls_program.rb",
50
- "spec/classes/ls_selinux_task.rb",
51
- "spec/classes/ls_task.rb",
52
- "spec/classes/named_program.rb",
53
- "spec/compat_spec.rb",
54
- "spec/nameable_spec.rb",
55
- "spec/non_option_spec.rb",
56
- "spec/option_examples.rb",
57
- "spec/option_list_spec.rb",
58
- "spec/option_spec.rb",
59
- "spec/program_spec.rb",
60
- "spec/rprogram_spec.rb",
61
- "spec/spec_helper.rb",
62
- "spec/task_spec.rb"
63
- ]
64
- s.has_rdoc = %q{yard}
65
- s.homepage = %q{http://github.com/postmodern/rprogram}
66
- s.rdoc_options = ["--charset=UTF-8"]
67
- s.require_paths = ["lib"]
68
- s.rubygems_version = %q{1.3.7}
69
- s.summary = %q{A library for creating wrappers around command-line programs.}
70
- s.test_files = [
71
- "spec/classes/ls_program.rb",
72
- "spec/classes/named_program.rb",
73
- "spec/classes/ls_selinux_task.rb",
74
- "spec/classes/aliased_program.rb",
75
- "spec/classes/ls_task.rb",
76
- "spec/nameable_spec.rb",
77
- "spec/program_spec.rb",
78
- "spec/rprogram_spec.rb",
79
- "spec/option_examples.rb",
80
- "spec/non_option_spec.rb",
81
- "spec/compat_spec.rb",
82
- "spec/option_list_spec.rb",
83
- "spec/spec_helper.rb",
84
- "spec/option_spec.rb",
85
- "spec/task_spec.rb"
86
- ]
87
-
88
- if s.respond_to? :specification_version then
89
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
90
- s.specification_version = 3
91
-
92
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
93
- s.add_development_dependency(%q<rspec>, [">= 1.3.0"])
94
- s.add_development_dependency(%q<yard>, [">= 0.5.3"])
95
- else
96
- s.add_dependency(%q<rspec>, [">= 1.3.0"])
97
- s.add_dependency(%q<yard>, [">= 0.5.3"])
98
- end
99
- else
100
- s.add_dependency(%q<rspec>, [">= 1.3.0"])
101
- s.add_dependency(%q<yard>, [">= 0.5.3"])
3
+ begin
4
+ Ore::Specification.new do |gemspec|
5
+ # custom logic here
102
6
  end
7
+ rescue NameError
8
+ STDERR.puts "The 'rprogram.gemspec' file requires Ore."
9
+ STDERR.puts "Run `gem install ore` to install Ore."
103
10
  end
104
-
data/spec/option_spec.rb CHANGED
@@ -4,6 +4,14 @@ require 'spec_helper'
4
4
  require 'option_examples'
5
5
 
6
6
  describe Option do
7
+ describe "custom formatting" do
8
+ it "should allow the format block to return nil" do
9
+ opt = Option.new(:flag => '-f') { |opt,value| }
10
+
11
+ opt.arguments('bla').should == []
12
+ end
13
+ end
14
+
7
15
  describe "single flag" do
8
16
  before(:all) do
9
17
  @option = Option.new(:flag => '-f')
data/spec/spec_helper.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  require 'rubygems'
2
- gem 'rspec', '>=1.3.0'
3
- require 'spec'
2
+ gem 'rspec', '~> 2.0.0'
3
+ require 'rspec'
4
4
 
5
5
  require 'rprogram/version'
6
6
 
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 2
8
- - 0
9
- version: 0.2.0
8
+ - 1
9
+ version: 0.2.1
10
10
  platform: ruby
11
11
  authors:
12
12
  - Postmodern
@@ -14,57 +14,85 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-10-03 00:00:00 -07:00
17
+ date: 2010-10-27 00:00:00 -07:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
- name: rspec
21
+ name: ore
22
22
  prerelease: false
23
23
  requirement: &id001 !ruby/object:Gem::Requirement
24
24
  none: false
25
25
  requirements:
26
- - - ">="
26
+ - - ~>
27
27
  - !ruby/object:Gem::Version
28
28
  segments:
29
- - 1
30
- - 3
31
29
  - 0
32
- version: 1.3.0
30
+ - 2
31
+ - 0
32
+ version: 0.2.0
33
33
  type: :development
34
34
  version_requirements: *id001
35
35
  - !ruby/object:Gem::Dependency
36
- name: yard
36
+ name: ore-tasks
37
37
  prerelease: false
38
38
  requirement: &id002 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
- - - ">="
41
+ - - ~>
42
42
  - !ruby/object:Gem::Version
43
43
  segments:
44
44
  - 0
45
- - 5
46
- - 3
47
- version: 0.5.3
45
+ - 1
46
+ - 2
47
+ version: 0.1.2
48
48
  type: :development
49
49
  version_requirements: *id002
50
- description: RProgram is a library for creating wrappers around command-line programs. RProgram provides a Rubyful interface to programs and all their options or non-options. RProgram can also search for programs installed on a system.
50
+ - !ruby/object:Gem::Dependency
51
+ name: rspec
52
+ prerelease: false
53
+ requirement: &id003 !ruby/object:Gem::Requirement
54
+ none: false
55
+ requirements:
56
+ - - ~>
57
+ - !ruby/object:Gem::Version
58
+ segments:
59
+ - 2
60
+ - 0
61
+ - 0
62
+ version: 2.0.0
63
+ type: :development
64
+ version_requirements: *id003
65
+ - !ruby/object:Gem::Dependency
66
+ name: yard
67
+ prerelease: false
68
+ requirement: &id004 !ruby/object:Gem::Requirement
69
+ none: false
70
+ requirements:
71
+ - - ~>
72
+ - !ruby/object:Gem::Version
73
+ segments:
74
+ - 0
75
+ - 6
76
+ - 0
77
+ version: 0.6.0
78
+ type: :development
79
+ version_requirements: *id004
80
+ description: RProgram is a library for creating wrappers around command-line programs. RProgram provides a Rubyful interface to programs and all their options or non-options. RProgram can also search for programs installed on a system. files without having to use YAML or define classes named like the file.
51
81
  email: postmodern.mod3@gmail.com
52
82
  executables: []
53
83
 
54
84
  extensions: []
55
85
 
56
86
  extra_rdoc_files:
57
- - ChangeLog.md
58
- - LICENSE.txt
59
87
  - README.md
60
88
  files:
61
- - .gitignore
62
- - .specopts
89
+ - .rspec
63
90
  - .yardopts
64
91
  - ChangeLog.md
65
92
  - LICENSE.txt
66
93
  - README.md
67
94
  - Rakefile
95
+ - gemspec.yml
68
96
  - lib/rprogram.rb
69
97
  - lib/rprogram/compat.rb
70
98
  - lib/rprogram/exceptions.rb
@@ -102,11 +130,11 @@ files:
102
130
  - spec/task_spec.rb
103
131
  has_rdoc: yard
104
132
  homepage: http://github.com/postmodern/rprogram
105
- licenses: []
106
-
133
+ licenses:
134
+ - MIT
107
135
  post_install_message:
108
- rdoc_options:
109
- - --charset=UTF-8
136
+ rdoc_options: []
137
+
110
138
  require_paths:
111
139
  - lib
112
140
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -127,24 +155,17 @@ required_rubygems_version: !ruby/object:Gem::Requirement
127
155
  version: "0"
128
156
  requirements: []
129
157
 
130
- rubyforge_project:
158
+ rubyforge_project: rprogram
131
159
  rubygems_version: 1.3.7
132
160
  signing_key:
133
161
  specification_version: 3
134
162
  summary: A library for creating wrappers around command-line programs.
135
163
  test_files:
136
- - spec/classes/ls_program.rb
137
- - spec/classes/named_program.rb
138
- - spec/classes/ls_selinux_task.rb
139
- - spec/classes/aliased_program.rb
140
- - spec/classes/ls_task.rb
141
164
  - spec/nameable_spec.rb
142
165
  - spec/program_spec.rb
143
166
  - spec/rprogram_spec.rb
144
- - spec/option_examples.rb
145
167
  - spec/non_option_spec.rb
146
168
  - spec/compat_spec.rb
147
169
  - spec/option_list_spec.rb
148
- - spec/spec_helper.rb
149
170
  - spec/option_spec.rb
150
171
  - spec/task_spec.rb
data/.gitignore DELETED
@@ -1,9 +0,0 @@
1
- doc
2
- pkg
3
- tmp/*
4
- .DS_Store
5
- .yardoc
6
- *.db
7
- *.log
8
- *.swp
9
- *~
data/.specopts DELETED
@@ -1 +0,0 @@
1
- --colour --format specdoc