gem_hadar 0.0.2 → 0.0.3
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 +1 -1
- data/VERSION +1 -1
- data/gem_hadar.gemspec +5 -5
- data/lib/gem_hadar.rb +65 -12
- data/lib/gem_hadar/version.rb +1 -1
- metadata +8 -6
data/.gitignore
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.3
|
data/gem_hadar.gemspec
CHANGED
@@ -2,14 +2,14 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{gem_hadar}
|
5
|
-
s.version = "0.0.
|
5
|
+
s.version = "0.0.3"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Florian Frank"]
|
9
9
|
s.date = %q{2011-07-16}
|
10
10
|
s.description = %q{This library contains some useful functionality to support the development of Ruby Gems}
|
11
11
|
s.email = %q{flori@ping.de}
|
12
|
-
s.extra_rdoc_files = ["README.rdoc"]
|
12
|
+
s.extra_rdoc_files = ["README.rdoc", "lib/gem_hadar.rb", "lib/gem_hadar/version.rb"]
|
13
13
|
s.files = [".gitignore", "Gemfile", "LICENSE", "README.rdoc", "Rakefile", "VERSION", "gem_hadar.gemspec", "lib/gem_hadar.rb", "lib/gem_hadar/version.rb"]
|
14
14
|
s.homepage = %q{http://github.com/flori/gem_hadar}
|
15
15
|
s.rdoc_options = ["--title", "GemHadar - Library for the development of Ruby Gems", "--main", "README.rdoc"]
|
@@ -21,14 +21,14 @@ Gem::Specification.new do |s|
|
|
21
21
|
s.specification_version = 3
|
22
22
|
|
23
23
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
24
|
-
s.add_development_dependency(%q<gem_hadar>, ["~> 0.0.
|
24
|
+
s.add_development_dependency(%q<gem_hadar>, ["~> 0.0.3"])
|
25
25
|
s.add_runtime_dependency(%q<spruz>, ["~> 0.2.10"])
|
26
26
|
s.add_runtime_dependency(%q<dslkit>, ["~> 0.2.6"])
|
27
27
|
s.add_runtime_dependency(%q<sdoc>, ["~> 0.2.20"])
|
28
28
|
s.add_runtime_dependency(%q<rcov>, ["~> 0.9.9"])
|
29
29
|
s.add_runtime_dependency(%q<rake>, ["~> 0.9.2"])
|
30
30
|
else
|
31
|
-
s.add_dependency(%q<gem_hadar>, ["~> 0.0.
|
31
|
+
s.add_dependency(%q<gem_hadar>, ["~> 0.0.3"])
|
32
32
|
s.add_dependency(%q<spruz>, ["~> 0.2.10"])
|
33
33
|
s.add_dependency(%q<dslkit>, ["~> 0.2.6"])
|
34
34
|
s.add_dependency(%q<sdoc>, ["~> 0.2.20"])
|
@@ -36,7 +36,7 @@ Gem::Specification.new do |s|
|
|
36
36
|
s.add_dependency(%q<rake>, ["~> 0.9.2"])
|
37
37
|
end
|
38
38
|
else
|
39
|
-
s.add_dependency(%q<gem_hadar>, ["~> 0.0.
|
39
|
+
s.add_dependency(%q<gem_hadar>, ["~> 0.0.3"])
|
40
40
|
s.add_dependency(%q<spruz>, ["~> 0.2.10"])
|
41
41
|
s.add_dependency(%q<dslkit>, ["~> 0.2.6"])
|
42
42
|
s.add_dependency(%q<sdoc>, ["~> 0.2.20"])
|
data/lib/gem_hadar.rb
CHANGED
@@ -12,6 +12,7 @@ require 'rake/clean'
|
|
12
12
|
require 'rake/testtask'
|
13
13
|
require 'rcov/rcovtask'
|
14
14
|
require 'dslkit/polite'
|
15
|
+
require 'set'
|
15
16
|
require 'gem_hadar/version'
|
16
17
|
|
17
18
|
def GemHadar(&block)
|
@@ -59,16 +60,28 @@ class GemHadar
|
|
59
60
|
has_to_be_set :description
|
60
61
|
end
|
61
62
|
|
62
|
-
dsl_accessor :
|
63
|
+
dsl_accessor :require_paths do Set['lib'] end
|
64
|
+
|
65
|
+
def require_path(path = nil)
|
66
|
+
if path
|
67
|
+
self.require_paths = Set[path]
|
68
|
+
else
|
69
|
+
require_paths.first
|
70
|
+
end
|
71
|
+
end
|
63
72
|
|
64
73
|
dsl_accessor :readme
|
65
74
|
|
66
75
|
dsl_accessor :title
|
67
76
|
|
68
|
-
dsl_accessor :ignore_files do
|
77
|
+
dsl_accessor :ignore_files do Set[] end
|
69
78
|
|
70
79
|
dsl_accessor :test_dir
|
71
80
|
|
81
|
+
dsl_accessor :bindir
|
82
|
+
|
83
|
+
dsl_accessor :executables do Set[] end
|
84
|
+
|
72
85
|
dsl_accessor :test_files do
|
73
86
|
if test_dir
|
74
87
|
FileList[File.join(test_dir, '**/*.rb')]
|
@@ -77,6 +90,16 @@ class GemHadar
|
|
77
90
|
end
|
78
91
|
end
|
79
92
|
|
93
|
+
dsl_accessor :doc_files do
|
94
|
+
FileList[File.join('lib/**/*.rb')] + FileList[File.join('ext/**/*.c')]
|
95
|
+
end
|
96
|
+
|
97
|
+
dsl_accessor :extensions do FileList['ext/**/extconf.rb'] end
|
98
|
+
|
99
|
+
dsl_accessor :make do
|
100
|
+
ENV['MAKE'] || %w[gmake make].find { |c| system(c, '-v') }
|
101
|
+
end
|
102
|
+
|
80
103
|
dsl_accessor :files do
|
81
104
|
`git ls-files`.split("\n")
|
82
105
|
end
|
@@ -110,7 +133,7 @@ class GemHadar
|
|
110
133
|
def install_library(&block)
|
111
134
|
@install_library_block = lambda do
|
112
135
|
desc 'Install executable/library into site_ruby directories'
|
113
|
-
task :install, &block
|
136
|
+
task :install => :prepare_install, &block
|
114
137
|
end
|
115
138
|
end
|
116
139
|
|
@@ -134,7 +157,7 @@ class GemHadar
|
|
134
157
|
if args.empty?
|
135
158
|
ignore_files
|
136
159
|
else
|
137
|
-
ignore_files
|
160
|
+
args.each { |a| ignore_files << a }
|
138
161
|
end
|
139
162
|
end
|
140
163
|
|
@@ -163,6 +186,9 @@ class GemHadar
|
|
163
186
|
s.description = description
|
164
187
|
s.files = files
|
165
188
|
s.test_files = test_files
|
189
|
+
extensions.full? { |e| s.extensions = e }
|
190
|
+
bindir.full? { |b| s.bindir = b }
|
191
|
+
executables.full?(:to_a) { |e| s.executables = e }
|
166
192
|
|
167
193
|
s.add_development_dependency('gem_hadar', "~>#{VERSION}")
|
168
194
|
for d in @development_dependencies
|
@@ -172,7 +198,7 @@ class GemHadar
|
|
172
198
|
s.add_dependency(*d)
|
173
199
|
end
|
174
200
|
|
175
|
-
s.
|
201
|
+
s.require_paths = require_paths.to_a
|
176
202
|
|
177
203
|
if title
|
178
204
|
s.rdoc_options << '--title' << title
|
@@ -183,7 +209,7 @@ class GemHadar
|
|
183
209
|
s.rdoc_options << '--main' << readme
|
184
210
|
s.extra_rdoc_files << readme
|
185
211
|
end
|
186
|
-
|
212
|
+
s.extra_rdoc_files.concat doc_files
|
187
213
|
end
|
188
214
|
end
|
189
215
|
|
@@ -242,7 +268,7 @@ EOT
|
|
242
268
|
else
|
243
269
|
cmd << " --title '#{name.camelize} - #{summary}'"
|
244
270
|
end
|
245
|
-
cmd << ' ' <<
|
271
|
+
cmd << ' ' << doc_files * ' '
|
246
272
|
if readme
|
247
273
|
cmd << " #{readme}"
|
248
274
|
end
|
@@ -251,25 +277,29 @@ EOT
|
|
251
277
|
end
|
252
278
|
|
253
279
|
def test_task
|
254
|
-
Rake::TestTask.new do |t|
|
255
|
-
t.libs << test_dir
|
280
|
+
tt = Rake::TestTask.new(:run_tests) do |t|
|
281
|
+
t.libs << test_dir << require_paths
|
256
282
|
t.test_files = test_files
|
257
283
|
t.verbose = true
|
258
284
|
end
|
285
|
+
desc 'Run the tests'
|
286
|
+
task :test => [ (:compile if extensions.full?), tt.name ].compact
|
259
287
|
end
|
260
288
|
|
261
289
|
def rcov_task
|
262
|
-
Rcov::RcovTask.new do |t|
|
263
|
-
t.libs << test_dir
|
290
|
+
rt = Rcov::RcovTask.new(:run_rcov) do |t|
|
291
|
+
t.libs << test_dir << require_paths
|
264
292
|
t.test_files = test_files
|
265
293
|
t.verbose = true
|
266
294
|
t.rcov_opts = %W[-x '\\b#{test_dir}\/' -x '\\bgems\/']
|
267
295
|
end
|
296
|
+
desc 'Run the rcov code coverage tests'
|
297
|
+
task :rcov => [ (:compile if extensions.full?), rt.name ].compact
|
268
298
|
end
|
269
299
|
|
270
300
|
def write_ignore_file
|
271
301
|
File.write('.gitignore') do |output|
|
272
|
-
output.puts ignore
|
302
|
+
output.puts *ignore
|
273
303
|
end
|
274
304
|
end
|
275
305
|
|
@@ -299,6 +329,23 @@ EOT
|
|
299
329
|
end
|
300
330
|
end
|
301
331
|
|
332
|
+
def compile_task
|
333
|
+
for file in extensions
|
334
|
+
dir = File.dirname(file)
|
335
|
+
clean File.join(dir, 'Makefile'), File.join(dir, '*.{bundle,o,so}')
|
336
|
+
end
|
337
|
+
desc "Compile extensions: #{extensions * ', '}"
|
338
|
+
task :compile do
|
339
|
+
for file in extensions
|
340
|
+
dir, file = File.split(file)
|
341
|
+
cd dir do
|
342
|
+
ruby file
|
343
|
+
sh make
|
344
|
+
end
|
345
|
+
end
|
346
|
+
end
|
347
|
+
end
|
348
|
+
|
302
349
|
def create_all_tasks
|
303
350
|
default_task
|
304
351
|
build_task
|
@@ -315,6 +362,12 @@ EOT
|
|
315
362
|
version_tag_task
|
316
363
|
write_ignore_file
|
317
364
|
write_gemfile
|
365
|
+
if extensions.full?
|
366
|
+
compile_task
|
367
|
+
task :prepare_install => :compile
|
368
|
+
else
|
369
|
+
task :prepare_install
|
370
|
+
end
|
318
371
|
self
|
319
372
|
end
|
320
373
|
end
|
data/lib/gem_hadar/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gem_hadar
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 3
|
10
|
+
version: 0.0.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Florian Frank
|
@@ -26,12 +26,12 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - ~>
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
hash:
|
29
|
+
hash: 25
|
30
30
|
segments:
|
31
31
|
- 0
|
32
32
|
- 0
|
33
|
-
-
|
34
|
-
version: 0.0.
|
33
|
+
- 3
|
34
|
+
version: 0.0.3
|
35
35
|
type: :development
|
36
36
|
version_requirements: *id001
|
37
37
|
- !ruby/object:Gem::Dependency
|
@@ -122,6 +122,8 @@ extensions: []
|
|
122
122
|
|
123
123
|
extra_rdoc_files:
|
124
124
|
- README.rdoc
|
125
|
+
- lib/gem_hadar.rb
|
126
|
+
- lib/gem_hadar/version.rb
|
125
127
|
files:
|
126
128
|
- .gitignore
|
127
129
|
- Gemfile
|