hen 0.5.0 → 0.5.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7cca013795ab8838dedb03aab88a80addc25210e
4
- data.tar.gz: e5394e737b54e49e6066ae511c830d94f2486c68
3
+ metadata.gz: 177356930491fcf2ccc9023fe0af2d921edb4a82
4
+ data.tar.gz: f58d0f06959aa50b58c39bfad8c0c0e36e58dec6
5
5
  SHA512:
6
- metadata.gz: da08775b2518dfa345cf05f854ea928a03dd972d32e094c22da59ffdbf9e5b91d29b9f375ddb4a08409b261e9b0fa4088669b83c922d35f00ae6641a46a0b618
7
- data.tar.gz: 89321c2b52aa71714342fd731c64ce9b2da52063bcc215f9679bdce87433a11a6fefaa2d7134cdad7558ba605c3d6779e461a8398f03adad36b4b5d5a28560a9
6
+ metadata.gz: adb2725d6d88da4134bc2db0071f6040b5b222d8416d3657c660c17e27889fbf23d4b4a6444be8641bbd73679239af7781b2808d123992e9e930df5bc3bd2ccf
7
+ data.tar.gz: bf93b94647fd1e4ad22587c96a514216e0eec745137688179191aae496a0a97cc74d66c4b3ea859d30a8fe620287c9c4e1395ae4500b9674fd88633c6739439a
data/ChangeLog CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  = Revision history for hen
4
4
 
5
+ == 0.5.1 [2014-03-31]
6
+
7
+ * Improved extension name handling.
8
+ * Only define 'gem:native' task when cross-compiling.
9
+ * Avoid circular require.
10
+
5
11
  == 0.5.0 [2013-12-19]
6
12
 
7
13
  * Added support for substitution directives in RDoc titles.
data/README CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  == VERSION
4
4
 
5
- This documentation refers to hen version 0.4.9
5
+ This documentation refers to hen version 0.5.1
6
6
 
7
7
 
8
8
  == DESCRIPTION
@@ -57,7 +57,6 @@ You can even extend Hen with your own tasks. More on that later. (TODO)
57
57
 
58
58
  == LINKS
59
59
 
60
- <b></b>
61
60
  Documentation:: http://blackwinter.github.com/hen
62
61
  Source code:: http://github.com/blackwinter/hen
63
62
  RubyGem:: http://rubygems.org/gems/hen
data/bin/hen CHANGED
@@ -9,7 +9,7 @@
9
9
  # Albertus-Magnus-Platz, #
10
10
  # 50923 Cologne, Germany #
11
11
  # #
12
- # Copyright (C) 2013 Jens Wille #
12
+ # Copyright (C) 2013-2014 Jens Wille #
13
13
  # #
14
14
  # Authors: #
15
15
  # Jens Wille <jens.wille@gmail.com> #
@@ -30,5 +30,7 @@
30
30
  ###############################################################################
31
31
  #++
32
32
 
33
+ require 'hen'
33
34
  require 'hen/commands'
35
+
34
36
  Hen::Commands[ARGV.shift || 'usage']
@@ -12,7 +12,6 @@ This documentation refers to <%= progname %> version 0.0.1
12
12
 
13
13
  == LINKS
14
14
 
15
- <b></b>
16
15
  LABEL:: <### PLACE YOUR LINK(S) HERE ###>
17
16
 
18
17
 
@@ -7,7 +7,7 @@
7
7
  # Albertus-Magnus-Platz, #
8
8
  # 50923 Cologne, Germany #
9
9
  # #
10
- # Copyright (C) 2013 Jens Wille #
10
+ # Copyright (C) 2013-2014 Jens Wille #
11
11
  # #
12
12
  # Authors: #
13
13
  # Jens Wille <jens.wille@gmail.com> #
@@ -32,8 +32,6 @@ require 'etc'
32
32
  require 'erb'
33
33
  require 'highline/import'
34
34
 
35
- require 'hen'
36
-
37
35
  class Hen
38
36
 
39
37
  # Some helper methods used by the Hen executable. Also available
@@ -3,7 +3,7 @@
3
3
  # #
4
4
  # hen -- Just a Rake helper #
5
5
  # #
6
- # Copyright (C) 2013 Jens Wille #
6
+ # Copyright (C) 2013-2014 Jens Wille #
7
7
  # #
8
8
  # Authors: #
9
9
  # Jens Wille <jens.wille@gmail.com> #
@@ -7,7 +7,7 @@
7
7
  # Albertus-Magnus-Platz, #
8
8
  # 50923 Cologne, Germany #
9
9
  # #
10
- # Copyright (C) 2013 Jens Wille #
10
+ # Copyright (C) 2013-2014 Jens Wille #
11
11
  # #
12
12
  # Authors: #
13
13
  # Jens Wille <jens.wille@gmail.com> #
@@ -31,8 +31,6 @@
31
31
  require 'nuggets/file/which'
32
32
  require 'nuggets/object/singleton_class'
33
33
 
34
- require 'hen'
35
-
36
34
  class Hen
37
35
 
38
36
  # Some helper methods for use inside of a Hen definition.
@@ -4,7 +4,7 @@ class Hen
4
4
 
5
5
  MAJOR = 0
6
6
  MINOR = 5
7
- TINY = 0
7
+ TINY = 1
8
8
 
9
9
  class << self
10
10
 
@@ -284,13 +284,22 @@ Hen :gem => :rdoc do
284
284
  end
285
285
 
286
286
  if Rake.const_defined?(:ExtensionTask)
287
- extension_options[:name] ||= gem_name.include?('-') ?
288
- gem_name.tr('-', '_') : "#{gem_name}_native"
287
+ # gem_name | extension name | ext_name
288
+ # ---------------------------------------
289
+ # libcdb-ruby | libcdb_ruby | libcdb
290
+ # rb-gsl | gsl_native | gsl
291
+ # unicode | unicode_native | unicode
289
292
 
290
- ext_name = gem_name.include?('-') ? gem_name.split('-').first : gem_name
293
+ gem_name_parts = gem_name.split('-')
294
+ gem_name_parts.shift if gem_name_parts.first == 'rb'
295
+ gem_name_parts << 'native' if gem_name_parts.size == 1
296
+
297
+ extension_options[:name] ||= gem_name_parts.join('_')
298
+
299
+ ext_name = extension_options.delete(:ext_name) { gem_name_parts.first }
291
300
 
292
301
  extension_options[:lib_dir] ||= File.join(['lib', ext_name, ENV['FAT_DIR']].compact)
293
- extension_options[:ext_dir] ||= File.join(['ext', ext_name])
302
+ extension_options[:ext_dir] ||= File.join(['ext', ext_name].compact)
294
303
 
295
304
  unless extension_options.key?(:cross_compile)
296
305
  extension_options[:cross_compile] = true
@@ -298,19 +307,19 @@ Hen :gem => :rdoc do
298
307
 
299
308
  if extension_options[:cross_compile]
300
309
  extension_options[:cross_platform] ||= %w[x86-mswin32-60 x86-mingw32]
301
- end
302
310
 
303
- if ruby_versions = extension_options.delete(:ruby_versions)
304
- ENV['RUBY_CC_VERSION'] ||= Array(ruby_versions).join(':')
311
+ if ruby_versions = extension_options.delete(:ruby_versions)
312
+ ENV['RUBY_CC_VERSION'] ||= Array(ruby_versions).join(':')
313
+ end
314
+
315
+ desc 'Build native gems'
316
+ task 'gem:native' => %w[cross compile native gem]
305
317
  end
306
318
 
307
319
  extension_task = Rake::ExtensionTask.new(nil, gem_spec) { |ext|
308
320
  set_options(ext, extension_options, 'Extension')
309
321
  }
310
322
 
311
- desc 'Build native gems'
312
- task 'gem:native' => %w[cross compile native gem]
313
-
314
323
  %w[spec test].each { |t| task t => :compile }
315
324
  else
316
325
  skipping 'Extension'
@@ -352,7 +361,7 @@ Hen :gem => :rdoc do
352
361
  task 'gem:push' => 'gem:push:meta'
353
362
  end
354
363
 
355
- if extension_task
364
+ if have_task?('gem:native')
356
365
  platforms = Array(extension_task.cross_platform).join(',')
357
366
  gems_glob = gem_path.sub(/(?=\.gem\z)/, "-{#{platforms}}")
358
367
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jens Wille
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-12-19 00:00:00.000000000 Z
11
+ date: 2014-03-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ruby-nuggets
@@ -49,20 +49,11 @@ extra_rdoc_files:
49
49
  - COPYING
50
50
  - ChangeLog
51
51
  files:
52
- - lib/hen.rb
53
- - lib/hen/cli.rb
54
- - lib/hen/commands.rb
55
- - lib/hen/dsl.rb
56
- - lib/hen/version.rb
57
- - bin/hen
58
- - lib/hens/gem.rake
59
- - lib/hens/rdoc.rake
60
- - lib/hens/spec.rake
61
- - lib/hens/test.rake
62
52
  - COPYING
63
53
  - ChangeLog
64
54
  - README
65
55
  - Rakefile
56
+ - bin/hen
66
57
  - example/_henrc
67
58
  - example/hens/sample.rake
68
59
  - example/project/COPYING
@@ -72,20 +63,30 @@ files:
72
63
  - example/project/_gitignore
73
64
  - example/project/lib/__progname__.rb
74
65
  - example/project/lib/__progname__/version.rb
66
+ - lib/hen.rb
67
+ - lib/hen/cli.rb
68
+ - lib/hen/commands.rb
69
+ - lib/hen/dsl.rb
70
+ - lib/hen/version.rb
71
+ - lib/hens/gem.rake
72
+ - lib/hens/rdoc.rake
73
+ - lib/hens/spec.rake
74
+ - lib/hens/test.rake
75
75
  homepage: http://github.com/blackwinter/hen
76
76
  licenses:
77
77
  - AGPL-3.0
78
78
  metadata: {}
79
79
  post_install_message: |2+
80
80
 
81
- hen-0.5.0 [2013-12-19]:
81
+ hen-0.5.1 [2014-03-31]:
82
82
 
83
- * Added support for substitution directives in RDoc titles.
84
- * General cleanup and refactoring.
83
+ * Improved extension name handling.
84
+ * Only define 'gem:native' task when cross-compiling.
85
+ * Avoid circular require.
85
86
 
86
87
  rdoc_options:
87
88
  - "--title"
88
- - hen Application documentation (v0.5.0)
89
+ - hen Application documentation (v0.5.1)
89
90
  - "--charset"
90
91
  - UTF-8
91
92
  - "--line-numbers"
@@ -106,7 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
106
107
  version: '0'
107
108
  requirements: []
108
109
  rubyforge_project:
109
- rubygems_version: 2.1.11
110
+ rubygems_version: 2.2.2
110
111
  signing_key:
111
112
  specification_version: 4
112
113
  summary: Hoe or Echoe? No, thanks! Just a Rake helper that fits my own personal style.