hen 0.4.3 → 0.4.4

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/ChangeLog CHANGED
@@ -1,5 +1,19 @@
1
1
  = Revision history for hen
2
2
 
3
+ == 0.4.4 [2012-01-18]
4
+
5
+ * Some extension task improvements.
6
+ * Include extension files in RDoc.
7
+
8
+ == 0.4.3 [2012-01-09]
9
+
10
+ * Integrate with rake-compiler.
11
+ * Reverse merge config.
12
+
13
+ == 0.4.2 [2012-01-09]
14
+
15
+ * New option 'meta' to build meta-gems.
16
+
3
17
  == 0.4.1 [2012-01-02]
4
18
 
5
19
  * Make 'release' depend on 'doc:publish'.
data/README CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  == VERSION
4
4
 
5
- This documentation refers to hen version 0.4.3
5
+ This documentation refers to hen version 0.4.4
6
6
 
7
7
 
8
8
  == DESCRIPTION
data/lib/hen/version.rb CHANGED
@@ -4,7 +4,7 @@ class Hen
4
4
 
5
5
  MAJOR = 0
6
6
  MINOR = 4
7
- TINY = 3
7
+ TINY = 4
8
8
 
9
9
  class << self
10
10
 
data/lib/hens/gem.rake CHANGED
@@ -43,13 +43,10 @@ Hen :gem => :rdoc do
43
43
 
44
44
  meta_gems = Array(gem_options.delete(:meta))
45
45
 
46
- gem_spec = Gem::Specification.new { |spec|
47
-
48
- ### name
49
-
50
- gem_name = gem_options[:name] ||= project_name(rf_config)
46
+ gem_name = gem_options[:name] ||= project_name(rf_config)
47
+ abort 'Gem name missing' unless gem_name
51
48
 
52
- abort 'Gem name missing' unless gem_name
49
+ gem_spec = Gem::Specification.new { |spec|
53
50
 
54
51
  ### version
55
52
 
@@ -203,14 +200,14 @@ Hen :gem => :rdoc do
203
200
 
204
201
  }
205
202
 
206
- meta_prefix = "gem:meta:#{meta_gem_spec.name}"
203
+ meta_prefix = "gem:meta:#{meta_gem_name = meta_gem_spec.name}"
207
204
 
208
- desc "Display the #{meta_gem_spec.name} gem specification"
205
+ desc "Display the #{meta_gem_name} gem specification"
209
206
  task "#{meta_prefix}:spec" do
210
207
  puts meta_gem_spec.to_ruby
211
208
  end
212
209
 
213
- desc "Update (or create) the project's #{meta_gem_spec.name} gemspec file"
210
+ desc "Update (or create) the project's #{meta_gem_name} gemspec file"
214
211
  task "#{meta_prefix}:spec:update" do
215
212
  write_gemspec(meta_gem_spec)
216
213
  end
@@ -224,19 +221,27 @@ Hen :gem => :rdoc do
224
221
  pkg.need_zip = true
225
222
 
226
223
  if defined?(ZIP_COMMANDS)
227
- require 'nuggets/file/which'
228
- pkg.zip_command = File.which_command(ZIP_COMMANDS) || ZIP_COMMANDS.first
224
+ pkg.zip_command = begin
225
+ require 'nuggets/file/which'
226
+ File.which_command(ZIP_COMMANDS)
227
+ rescue LoadError
228
+ end || ZIP_COMMANDS.first
229
229
  end
230
230
  }
231
231
 
232
- unless gem_spec.extensions.empty?
233
- require 'rake/extensiontask'
234
- require 'nuggets/util/ruby'
232
+ begin
233
+ require 'rake/extensiontask' unless gem_spec.extensions.empty?
234
+ rescue LoadError
235
+ end
236
+
237
+ if Rake.const_defined?(:ExtensionTask)
238
+ extension_options[:name] ||= gem_name.include?('-') ?
239
+ gem_name.tr('-', '_') : "#{gem_name}_native"
235
240
 
236
- extension_options[:name] ||= "#{gem_spec.name}_native"
241
+ ext_name = gem_name.include?('-') ? gem_name.split('-').first : gem_name
237
242
 
238
- extension_options[:lib_dir] ||= File.join(['lib', gem_spec.name, ENV['FAT_DIR']].compact)
239
- extension_options[:ext_dir] ||= File.join(['ext', gem_spec.name])
243
+ extension_options[:lib_dir] ||= File.join(['lib', ext_name, ENV['FAT_DIR']].compact)
244
+ extension_options[:ext_dir] ||= File.join(['ext', ext_name])
240
245
 
241
246
  unless extension_options.has_key?(:cross_compile)
242
247
  extension_options[:cross_compile] = true
@@ -246,23 +251,22 @@ Hen :gem => :rdoc do
246
251
  extension_options[:cross_platform] ||= %w[x86-mswin32-60 x86-mingw32]
247
252
  end
248
253
 
249
- ruby_versions = extension_options.delete(:ruby_versions)
254
+ if ruby_versions = extension_options.delete(:ruby_versions)
255
+ ENV['RUBY_CC_VERSION'] ||= Array(ruby_versions).join(':')
256
+ end
250
257
 
251
258
  Rake::ExtensionTask.new(nil, gem_spec) { |ext|
252
259
  set_options(ext, extension_options, 'Extension')
253
260
  }
254
261
 
255
262
  desc 'Build native gems'
256
- task 'gem:native' do
257
- ENV['RUBY_CC_VERSION'] ||= Array(ruby_versions).join(':') if ruby_versions
263
+ task 'gem:native' => %w[cross compile native gem]
258
264
 
259
- sh(Util::Ruby.rake_command, *%w[cross compile])
260
- sh(Util::Ruby.rake_command, *%w[cross native gem])
261
- end
265
+ %w[spec test].each { |t| task t => :compile }
262
266
  end
263
267
 
264
- release_desc = "Release #{gem_spec.name} version #{gem_spec.version}"
265
- tag_desc = "Tag the #{gem_spec.name} release version #{gem_spec.version}"
268
+ release_desc = "Release #{gem_name} version #{gem_spec.version}"
269
+ tag_desc = "Tag the #{gem_name} release version #{gem_spec.version}"
266
270
 
267
271
  rubygems do |rg_pool|
268
272
 
@@ -301,7 +305,7 @@ Hen :gem => :rdoc do
301
305
  #uc['release_changes'] = changes if changes
302
306
  #uc['preformatted'] = true
303
307
 
304
- rf.add_release(rf_config[:project], gem_spec.name, version, *files)
308
+ rf.add_release(rf_config[:project], gem_name, version, *files)
305
309
  end
306
310
 
307
311
  desc release_desc
data/lib/hens/rdoc.rake CHANGED
@@ -2,7 +2,7 @@ Hen :rdoc do
2
2
 
3
3
  rdoc_options = {
4
4
  :rdoc_dir => 'doc',
5
- :rdoc_files => %w[README COPYING ChangeLog lib/**/*.rb],
5
+ :rdoc_files => %w[README COPYING ChangeLog lib/**/*.rb ext/**/*.c],
6
6
  :charset => 'UTF-8',
7
7
  :inline_source => true,
8
8
  :line_numbers => true,
@@ -41,7 +41,10 @@ Hen :rdoc do
41
41
 
42
42
  ### rdoc_files, main
43
43
 
44
- rdoc_files = FileList[rdoc_options.delete(:rdoc_files)].to_a
44
+ rdoc_files = FileList[rdoc_options.delete(:rdoc_files)].sort_by { |file|
45
+ [file.length, file]
46
+ }
47
+
45
48
  rdoc_files_local = rdoc_files.dup
46
49
 
47
50
  if mangle_files!(rdoc_files)
data/lib/hens/spec.rake CHANGED
@@ -60,14 +60,12 @@ Hen :spec do
60
60
  end
61
61
 
62
62
  #desc "Run specs with RCov"
63
- klass.new('spec:rcov') do |t|
63
+ spec_klass.new('spec:rcov') do |t|
64
64
  spec_block[t]
65
65
 
66
66
  t.rcov = true
67
67
  t.rcov_opts = rcov_opts
68
68
  end
69
-
70
- task :spec => :compile if have_task?(:compile)
71
69
  end
72
70
 
73
71
  end
data/lib/hens/test.rake CHANGED
@@ -16,8 +16,6 @@ Hen :test do
16
16
  t.test_files = test_files
17
17
  set_options(t, test_options, 'Test')
18
18
  }
19
-
20
- task :test => :compile if have_task?(:compile)
21
19
  end
22
20
 
23
21
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hen
3
3
  version: !ruby/object:Gem::Version
4
- hash: 9
4
+ hash: 7
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 4
9
- - 3
10
- version: 0.4.3
9
+ - 4
10
+ version: 0.4.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - Jens Wille
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-01-09 00:00:00 Z
18
+ date: 2012-01-18 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: ruby-nuggets
@@ -85,12 +85,12 @@ licenses: []
85
85
 
86
86
  post_install_message:
87
87
  rdoc_options:
88
- - --main
89
- - README
90
88
  - --charset
91
89
  - UTF-8
92
90
  - --title
93
- - hen Application documentation (v0.4.3)
91
+ - hen Application documentation (v0.4.4)
92
+ - --main
93
+ - README
94
94
  - --all
95
95
  - --line-numbers
96
96
  require_paths: