hen 0.7.1 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 498ad06883b7b8ed922913e433a2b14686432080
4
- data.tar.gz: a9009b33ac57e4695df6cf2fca97bc43628d4b9a
3
+ metadata.gz: 4072e13f1feb0d60af5d5cc34da7241534729021
4
+ data.tar.gz: f928a7f50cf2fa8792e21b74f5b89bc003d48ca4
5
5
  SHA512:
6
- metadata.gz: dc962996c983173994195733d666dffa587f21a5b8f061244e677ff62eba928eab425fd43b4cdc1320a5c4f131780576ab394c43aacee2bf3f022988eb5f6862
7
- data.tar.gz: aa2f6ca6d9635d68abcdf8e5522f455dd5f270357a7cc2eed60d646ecc643e77008bf7819e8ea635f998d2174a2a7d31088a496fd2daeaeb1c42cb744efba152
6
+ metadata.gz: 21ab42db487595edd0efac73bef24ac27b63839f7c4cec703552a850eb30d9bf7c05dfebaaabe2d8ec12c2e4675f6831f42c4ae73fe398151f6d75ec238a8dfa
7
+ data.tar.gz: 928c0691dfcd088104f2dc253b6939873b92477bdfa5e1ea105c3edb0910eb1eeb3c95d55439d5ee38fb6ffc4b937130f7d9139c7419bd0e3facec8d6e6b2516
data/ChangeLog CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  = Revision history for hen
4
4
 
5
+ == 0.8.0 [2014-10-31]
6
+
7
+ * Removed support for legacy versions of RDoc, RSpec and RubyGems.
8
+ * Included workaround to make RDoc labels cross-browser compatible (issue
9
+ 330[https://github.com/rdoc/rdoc/pull/330]).
10
+
5
11
  == 0.7.1 [2014-10-17]
6
12
 
7
13
  * Specify default dependency for hen with pessimistic version constraint.
data/README CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  == VERSION
4
4
 
5
- This documentation refers to hen version 0.7.1
5
+ This documentation refers to hen version 0.8.0
6
6
 
7
7
 
8
8
  == DESCRIPTION
data/lib/hen/dsl.rb CHANGED
@@ -152,12 +152,6 @@ class Hen
152
152
  end
153
153
  end
154
154
 
155
- # DEPRECATED: Use #rubygems instead.
156
- def gemcutter(&block)
157
- warn "#{self}#gemcutter is deprecated; use `rubygems' instead."
158
- rubygems(&block)
159
- end
160
-
161
155
  # Encapsulates tasks targeting at Git, skipping those if the current
162
156
  # project is not controlled by Git. Yields a Git object via #init_git.
163
157
  def git
@@ -187,14 +181,8 @@ class Hen
187
181
  # Loads the RubyGems +push+ command, giving
188
182
  # a nicer error message if it's not found.
189
183
  def have_rubygems?
190
- begin
191
- require 'rubygems/command_manager'
192
- require 'rubygems/commands/push_command'
193
- rescue LoadError
194
- # rubygems < 1.3.6, gemcutter < 0.4.0
195
- require 'commands/abstract_command'
196
- require 'commands/push'
197
- end
184
+ require 'rubygems/command_manager'
185
+ require 'rubygems/commands/push_command'
198
186
 
199
187
  Gem::Commands::PushCommand
200
188
  rescue LoadError, NameError
data/lib/hen/version.rb CHANGED
@@ -3,8 +3,8 @@ class Hen
3
3
  module Version
4
4
 
5
5
  MAJOR = 0
6
- MINOR = 7
7
- TINY = 1
6
+ MINOR = 8
7
+ TINY = 0
8
8
 
9
9
  class << self
10
10
 
data/lib/hens/gem.rake CHANGED
@@ -20,20 +20,10 @@ Hen gem: :rdoc do
20
20
  require_path: 'lib'
21
21
  }.update(config[:gem])
22
22
 
23
- gem_klass = begin
24
- raise LoadError if gem_options.delete(:legacy)
25
-
26
- require 'rubygems/package_task'
27
- Gem::PackageTask
28
- rescue LoadError
29
- require 'rake/gempackagetask'
30
- Rake::GemPackageTask
31
- end
23
+ require 'rubygems/package_task'
32
24
 
33
25
  if Object.const_defined?(:RDOC_OPTIONS)
34
26
  rdoc_files = RDOC_OPTIONS[:rdoc_files]
35
- gem_options[:has_rdoc] = !rdoc_files.empty? if Gem::VERSION < '1.7'
36
-
37
27
  gem_options[:rdoc_options] ||= RDOC_OPTIONS[:options]
38
28
  end
39
29
 
@@ -269,7 +259,7 @@ Hen gem: :rdoc do
269
259
 
270
260
  }
271
261
 
272
- pkg_task = gem_klass.new(gem_spec) { |pkg|
262
+ pkg_task = Gem::PackageTask.new(gem_spec) { |pkg|
273
263
  pkg.need_tar_gz = true
274
264
  pkg.need_zip = true
275
265
 
@@ -280,7 +270,7 @@ Hen gem: :rdoc do
280
270
 
281
271
  meta_gem_specs.each { |meta_gem_spec|
282
272
 
283
- meta_pkg_task = gem_klass.new(meta_gem_spec)
273
+ meta_pkg_task = Gem::PackageTask.new(meta_gem_spec)
284
274
 
285
275
  taskname = meta_gem_spec.taskname
286
276
 
data/lib/hens/rdoc.rake CHANGED
@@ -1,44 +1,25 @@
1
1
  Hen :rdoc do
2
2
 
3
3
  rdoc_options = {
4
- rdoc_dir: 'doc',
5
- rdoc_files: %w[README COPYING ChangeLog lib/**/*.rb ext/**/*.c],
6
- title: '{name:%s }Application documentation{version: (v%s)}',
7
- charset: 'UTF-8',
8
- inline_source: true,
9
- line_numbers: true,
10
- all: true
4
+ rdoc_dir: 'doc',
5
+ rdoc_files: %w[README COPYING ChangeLog lib/**/*.rb ext/**/*.c],
6
+ title: '{name:%s }Application documentation{version: (v%s)}',
7
+ charset: 'UTF-8',
8
+ line_numbers: true,
9
+ all: true
11
10
  }.update(config[:rdoc])
12
11
 
13
- rdoc_klass = begin
14
- raise LoadError if rdoc_options.delete(:legacy)
15
-
16
- require 'rdoc/task'
17
-
18
- rdoc_options.delete(:inline_source) # deprecated
19
- RDoc::Task
20
- rescue LoadError
21
- begin
22
- require 'rake/rdoctask'
23
- Rake::RDocTask
24
- rescue LoadError => err
25
- load_error = err
26
- end
27
- end
28
-
29
12
  info = {
30
13
  'name' => config[:gem][:name],
31
14
  'version' => config[:gem][:version],
32
15
  'date' => Date.today.to_s
33
16
  }
34
17
 
35
- rdoc_options[:title].gsub!(/\{(\w+):(.*?)\}/) { i = info[$1] and $2 % i }
36
-
37
18
  ### rdoc_dir
38
19
 
39
20
  rdoc_dir = rdoc_options.delete(:rdoc_dir)
40
21
 
41
- ### rdoc_files, main
22
+ ### rdoc_files
42
23
 
43
24
  rdoc_files = FileList[[
44
25
  rdoc_options.delete(:rdoc_files),
@@ -55,6 +36,8 @@ Hen :rdoc do
55
36
  rdoc_files_local = []
56
37
  end
57
38
 
39
+ ### main
40
+
58
41
  rdoc_options.delete(:main) unless rdoc_files.include?(
59
42
  File.join(rdoc_options.values_at(:root, :main).compact))
60
43
 
@@ -63,6 +46,10 @@ Hen :rdoc do
63
46
  main_candidates.grep(%r{\Areadme[^/]*\z}i).first || main_candidates.first
64
47
  end
65
48
 
49
+ ### title
50
+
51
+ rdoc_options[:title].gsub!(/\{(\w+):(.*?)\}/) { i = info[$1] and $2 % i }
52
+
66
53
  ### rdoc_options
67
54
 
68
55
  rdoc_opts = map_options(rdoc_options)
@@ -74,24 +61,34 @@ Hen :rdoc do
74
61
  options: rdoc_opts
75
62
  }
76
63
 
77
- unless rdoc_files.empty?
78
- raise load_error if load_error
64
+ unless rdoc_files.empty? && rdoc_files_local.empty?
65
+ require 'rdoc/task'
66
+
67
+ class RDoc::Markup::ToLabel
68
+
69
+ alias_method :_hen_original_convert, :convert
70
+
71
+ def convert(*args)
72
+ _hen_original_convert(*args).gsub('%', '-').sub(/^-/, '')
73
+ end
74
+
75
+ end if defined?(RDoc::Markup::ToLabel)
76
+ end
79
77
 
80
- rdoc_task = rdoc_klass.new(:doc) { |rdoc|
78
+ unless rdoc_files.empty?
79
+ RDoc::Task.new(:doc) { |rdoc|
81
80
  rdoc.rdoc_dir = rdoc_dir
82
81
  rdoc.rdoc_files = rdoc_files
83
82
  rdoc.options = rdoc_opts
84
83
  }
85
84
  else
86
85
  task :doc do
87
- warn 'No files to generate documentation for!'
86
+ warn 'No files to generate documentation for...'
88
87
  end
89
88
  end
90
89
 
91
90
  unless rdoc_files_local.empty?
92
- raise load_error if load_error
93
-
94
- rdoc_klass.new('doc:local') { |rdoc|
91
+ RDoc::Task.new('doc:local') { |rdoc|
95
92
  rdoc.rdoc_dir = rdoc_dir + '.local'
96
93
  rdoc.rdoc_files = rdoc_files_local
97
94
  rdoc.options = rdoc_opts
@@ -104,10 +101,12 @@ Hen :rdoc do
104
101
  def rerdoc_task_description; local_description(super); end
105
102
  }
106
103
  }
104
+ else
105
+ task 'doc:local' do
106
+ warn 'No files to generate documentation for...'
107
+ end
107
108
  end
108
109
 
109
- publish_desc = 'Publish RDoc documentation'
110
-
111
110
  git do |git|
112
111
 
113
112
  git_branch = 'gh-pages'
@@ -132,14 +131,14 @@ Hen :rdoc do
132
131
  git.checkout_fetched_branch pages_url, git_branch
133
132
 
134
133
  rm_r Dir['*']
135
- cp_r Dir["../#{rdoc_task.rdoc_dir}/*"], '.'
134
+ cp_r Dir["../#{rdoc_dir}/*"], '.'
136
135
 
137
136
  git.add_and_commit 'Updated documentation.'
138
137
  git.push pages_url, git_branch
139
138
  }
140
139
  end
141
140
 
142
- desc publish_desc; publish_desc = nil
141
+ desc 'Publish RDoc documentation'
143
142
  task 'doc:publish' => 'doc:publish:github'
144
143
 
145
144
  elsif clone_url # still git repo, but no gh-pages branch
data/lib/hens/spec.rake CHANGED
@@ -6,46 +6,19 @@ Hen :spec do
6
6
  options: 'spec/spec.opts'
7
7
  }.update(config[:spec])
8
8
 
9
- spec_klass = begin
10
- raise LoadError if spec_options.delete(:legacy)
11
-
12
- require 'rspec/core/rake_task'
13
- RSpec::Core::RakeTask
14
- rescue LoadError
15
- begin
16
- require 'spec/rake/spectask'
17
- Spec::Rake::SpecTask
18
- rescue LoadError => err
19
- load_error = err
20
- end
21
- end
22
-
23
9
  spec_files = spec_options.delete(:files) ||
24
10
  FileList[spec_options.delete(:pattern)].to_a
25
11
 
26
12
  mangle_files!(spec_files, managed: false)
27
13
 
28
14
  unless spec_files.empty?
29
- raise load_error if load_error
15
+ require 'rspec/core/rake_task'
30
16
 
31
17
  spec_helper = spec_options.delete(:helper)
32
18
 
33
19
  if spec_helper && File.readable?(spec_helper)
34
20
  spec_files.delete(spec_helper)
35
-
36
- begin
37
- require 'rspec/core/version'
38
-
39
- # RSpec began sorting test files in version 2.12.0 (c76c1e6)
40
- curr_version = Gem::Version.new(RSpec::Core::Version::STRING)
41
- sort_version = Gem::Version.new('2.12.0')
42
-
43
- raise LoadError if curr_version < sort_version
44
-
45
- (spec_options[:require] ||= []) << File.basename(spec_helper, '.rb')
46
- rescue LoadError, NameError
47
- spec_files.unshift(spec_helper)
48
- end
21
+ (spec_options[:require] ||= []) << File.basename(spec_helper, '.rb')
49
22
  end
50
23
 
51
24
  opts_file = spec_options.delete(:options)
@@ -55,31 +28,9 @@ Hen :spec do
55
28
  File.readlines(opts_file).each { |line| spec_opts << line.chomp }
56
29
  end
57
30
 
58
- spec_block = lambda { |t|
59
- if t.respond_to?(:spec_files=)
60
- t.spec_files = spec_files
61
- t.spec_opts = spec_opts
62
- else
63
- t.pattern = spec_files
64
- t.rspec_opts = spec_opts
65
- end
66
- }
67
-
68
- spec_klass.new(&spec_block)
69
-
70
- rcov_opts = ['--exclude', spec_files.join(',')]
71
- rcov_file = File.join(spec_files.first[%r{[^/.]+}], 'rcov.opts')
72
-
73
- if rcov_file && File.readable?(rcov_file)
74
- File.readlines(rcov_file).each { |line| rcov_opts << line.chomp }
75
- end
76
-
77
- #desc "Run specs with RCov"
78
- spec_klass.new('spec:rcov') { |t|
79
- spec_block[t]
80
-
81
- t.rcov = true
82
- t.rcov_opts = rcov_opts
31
+ RSpec::Core::RakeTask.new { |t|
32
+ t.pattern = spec_files
33
+ t.rspec_opts = spec_opts
83
34
  }
84
35
  end
85
36
 
data/lib/hens/test.rake CHANGED
@@ -1,7 +1,5 @@
1
1
  Hen :test do
2
2
 
3
- require 'rake/testtask'
4
-
5
3
  test_options = {
6
4
  pattern: 'test/**/*_test.rb'
7
5
  }.update(config[:test])
@@ -12,6 +10,8 @@ Hen :test do
12
10
  mangle_files!(test_files, managed: false)
13
11
 
14
12
  unless test_files.empty?
13
+ require 'rake/testtask'
14
+
15
15
  Rake::TestTask.new { |t|
16
16
  t.test_files = test_files
17
17
  set_options(t, test_options, 'Test')
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.7.1
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jens Wille
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-17 00:00:00.000000000 Z
11
+ date: 2014-10-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: highline
@@ -106,16 +106,15 @@ licenses:
106
106
  metadata: {}
107
107
  post_install_message: |2+
108
108
 
109
- hen-0.7.1 [2014-10-17]:
109
+ hen-0.8.0 [2014-10-31]:
110
110
 
111
- * Specify default dependency for hen with pessimistic version constraint.
112
- * Recognize +extra_files+ option for RDoc task.
113
- * Respect RDoc option +root+ when looking for +main+ file.
114
- * Prefer +README+ as +main+ file.
111
+ * Removed support for legacy versions of RDoc, RSpec and RubyGems.
112
+ * Included workaround to make RDoc labels cross-browser compatible (issue
113
+ 330[https://github.com/rdoc/rdoc/pull/330]).
115
114
 
116
115
  rdoc_options:
117
116
  - "--title"
118
- - hen Application documentation (v0.7.1)
117
+ - hen Application documentation (v0.8.0)
119
118
  - "--charset"
120
119
  - UTF-8
121
120
  - "--line-numbers"