webgen 1.3.0 → 1.4.0

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.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +2 -2
  3. data/VERSION +1 -1
  4. data/data/webgen/passive_sources/stylesheets/api.css +2 -4
  5. data/data/webgen/passive_sources/templates/api.template +1 -1
  6. data/data/webgen/passive_sources/templates/feed.template +1 -1
  7. data/lib/webgen/cli.rb +67 -63
  8. data/lib/webgen/cli/commands/create.rb +4 -6
  9. data/lib/webgen/cli/commands/create_bundle.rb +8 -18
  10. data/lib/webgen/cli/commands/create_website.rb +15 -21
  11. data/lib/webgen/cli/commands/generate.rb +10 -16
  12. data/lib/webgen/cli/commands/install.rb +4 -6
  13. data/lib/webgen/cli/commands/show.rb +3 -3
  14. data/lib/webgen/cli/commands/show_bundles.rb +9 -13
  15. data/lib/webgen/cli/commands/show_config.rb +12 -18
  16. data/lib/webgen/cli/commands/show_dependencies.rb +7 -8
  17. data/lib/webgen/cli/commands/show_extensions.rb +10 -13
  18. data/lib/webgen/cli/commands/show_tree.rb +11 -16
  19. data/lib/webgen/cli/utils.rb +0 -18
  20. data/lib/webgen/content_processor.rb +2 -2
  21. data/lib/webgen/content_processor/sass.rb +6 -0
  22. data/lib/webgen/item_tracker/nodes.rb +8 -1
  23. data/lib/webgen/node_finder.rb +53 -31
  24. data/lib/webgen/path.rb +15 -3
  25. data/lib/webgen/path_handler/api.rb +23 -2
  26. data/lib/webgen/path_handler/page_utils.rb +5 -3
  27. data/lib/webgen/path_handler/sitemap.rb +1 -1
  28. data/lib/webgen/version.rb +1 -1
  29. data/test/webgen/path_handler/test_api.rb +24 -6
  30. data/test/webgen/path_handler/test_page_utils.rb +5 -0
  31. data/test/webgen/test_cli.rb +3 -3
  32. data/test/webgen/test_content_processor.rb +1 -0
  33. data/test/webgen/test_node_finder.rb +5 -4
  34. data/test/webgen/test_path.rb +14 -4
  35. metadata +52 -52
@@ -251,7 +251,8 @@ module Webgen
251
251
  # For a description of the parameter +mode+ see #io.
252
252
  #
253
253
  # An error is raised, if no IO object is associated with the Path instance.
254
- def data(mode = 'r')
254
+ def data(mode = nil)
255
+ mode ||= @meta_info['io_open_mode'] || 'r'
255
256
  io(mode) {|io| io.read}
256
257
  end
257
258
 
@@ -304,7 +305,11 @@ module Webgen
304
305
  else
305
306
  analyse_file
306
307
  end
307
- @meta_info['title'] ||= @basename.tr('_-', ' ').capitalize
308
+ @meta_info['title'] ||= begin
309
+ name = @basename.tr('_-', ' ')
310
+ name[0] = name[0].upcase
311
+ name
312
+ end
308
313
  @ext ||= ''
309
314
  raise "The basename of a path may not be empty: #{@path}" if @basename.empty? || @basename == '#'
310
315
  raise "The parent path must start with a slash: #{@path}" if @path[0] != ?/
@@ -323,9 +328,16 @@ module Webgen
323
328
  @parent_path = File.join(File.dirname(@path), '/')
324
329
  match_data = FILENAME_RE.match(File.basename(@path))
325
330
 
326
- if !match_data[1].nil? && match_data[3].nil? && match_data[4].nil? # handle special case of sort_info.basename as basename.ext
331
+ if !match_data[1].nil? && match_data[3].nil? && match_data[4].nil?
332
+ # handle special case of sort_info.basename as basename.ext
327
333
  @basename = match_data[1]
328
334
  @ext = match_data[2]
335
+ elsif !match_data[1].nil? && match_data[3].nil? && !match_data[4].nil? &&
336
+ (lang = Webgen::LanguageManager.language_for_code(match_data[2]))
337
+ # handle special case of sort_info.basename.ext as basename.lang.ext if basename is a lang
338
+ @basename = match_data[1]
339
+ @meta_info['lang'] = lang
340
+ @ext = match_data[4]
329
341
  else
330
342
  @meta_info['sort_info'] ||= match_data[1].to_i unless match_data[1].nil?
331
343
  @basename = match_data[2]
@@ -43,10 +43,12 @@ module Webgen
43
43
  api.file_nodes = {}
44
44
 
45
45
  rdoc.store.all_classes_and_modules.sort.each do |klass|
46
+ adapt_rdoc_class(path, klass)
46
47
  klass_node = create_page_node_for_class(path, dir_node, klass, output_flag_file)
47
48
  api.class_nodes[klass.full_name] = klass_node
48
49
  klass_node.node_info[:api] = api
49
50
  klass.each_method {|method| create_fragment_node_for_method(path, klass_node, method)}
51
+ klass.each_attribute {|attr| create_fragment_node_for_method(path, klass_node, attr)}
50
52
  end
51
53
 
52
54
  rdoc.store.all_files.sort.each do |file|
@@ -137,16 +139,35 @@ module Webgen
137
139
  end
138
140
  protected :rdoc_store
139
141
 
142
+ # Adapt a RDoc class/module object to provide a different output path depending on the
143
+ # output_structure meta information of the API path.
144
+ def adapt_rdoc_class(api_path, klass)
145
+ case api_path['output_structure']
146
+ when 'hierarchical'
147
+ api_path['use_proxy_path'] = false
148
+ def klass.http_url(prefix)
149
+ if classes_and_modules.size > 0
150
+ super(prefix).sub(/\.html/, '/index.html')
151
+ else
152
+ super(prefix)
153
+ end
154
+ end
155
+ else
156
+ api_path['use_proxy_path'] = true
157
+ end
158
+ end
159
+ protected :adapt_rdoc_class
160
+
140
161
  # Create a page node for the given class +klass+ and return it.
141
162
  #
142
163
  # A link definition entry for the class is also created.
143
164
  def create_page_node_for_class(api_path, dir_node, klass, output_flag_file)
144
165
  klass_path_str = klass.http_url(dir_node.alcn)
145
166
 
146
- create_directory(api_path, Webgen::Path.new(File.dirname(klass_path_str) + '/'))
167
+ create_directory(api_path, Webgen::Path.new(File.dirname(klass_path_str) + '/'), api_path['use_proxy_path'])
147
168
 
148
169
  path = Webgen::Path.new(klass_path_str, 'handler' => 'page', 'modified_at' => api_path['modified_at'],
149
- 'title' => "#{klass.type} #{klass.full_name}", 'api_class_name' => klass.full_name,
170
+ 'title' => "#{klass.full_name}", 'api_class_name' => klass.full_name,
150
171
  'api_name' => api_path['api_name'], 'template' => api_path['api_template'])
151
172
  node = @website.ext.path_handler.create_secondary_nodes(path).first
152
173
 
@@ -39,9 +39,11 @@ module Webgen
39
39
 
40
40
  context.content = blocks[name].dup
41
41
  context[:block_name] = name
42
- pipeline ||= ((self['blocks'] || {})[name] || {})['pipeline'] ||
43
- ((self['blocks'] || {})['defaults'] || {})['pipeline'] ||
44
- []
42
+ pipeline ||= if (t = self['blocks']) && (t = t[name] || t['defaults']) && t.key?('pipeline')
43
+ t['pipeline']
44
+ else
45
+ []
46
+ end
45
47
  content_processor.normalize_pipeline(pipeline).each do |processor|
46
48
  content_processor.call(processor, context)
47
49
  end
@@ -46,7 +46,7 @@ module Webgen
46
46
  path['node_class'] = Node.to_s
47
47
  create_node(path) do |node|
48
48
  set_blocks(node, blocks)
49
- node.node_info[:entries] = {:flatten => true, :and => node['entries']}
49
+ node.node_info[:entries] = {:flatten => true, :not => {:mi => {'no_output' => true}}, :and => node['entries']}
50
50
  @website.ext.item_tracker.add(node, :nodes, :node_finder_option_set,
51
51
  {:opts => node.node_info[:entries], :ref_alcn => node.alcn}, :meta_info)
52
52
  end
@@ -3,6 +3,6 @@
3
3
  module Webgen
4
4
 
5
5
  # The version of webgen.
6
- VERSION = '1.3.0'
6
+ VERSION = '1.4.0'
7
7
 
8
8
  end
@@ -5,6 +5,9 @@ require 'webgen/path_handler/api'
5
5
 
6
6
  class TestPathHandlerApi < Minitest::Test
7
7
 
8
+ class SampleTestSubclass
9
+ end
10
+
8
11
  include Webgen::TestHelper
9
12
 
10
13
  def setup
@@ -26,26 +29,41 @@ class TestPathHandlerApi < Minitest::Test
26
29
  FileUtils.rm_rf(@website.directory)
27
30
  end
28
31
 
29
- def test_create_nodes
32
+ def setup_for_create_nodes
30
33
  @website.ext.path_handler = Webgen::PathHandler.new(@website)
31
34
  @website.ext.path_handler.register('Directory')
32
35
  @website.ext.path_handler.register('Page')
33
36
  @website.ext.path_handler.register('Copy')
34
37
  @website.ext.link_definitions = {}
35
- @api.create_nodes(@path, nil)
38
+ end
36
39
 
37
- assert(@website.tree['/my_dir/TestPathHandlerApi.en.html'])
38
- assert_equal(['/my_dir/TestPathHandlerApi.en.html', 'TestPathHandlerApi'],
40
+ def assert_common_tests_for_create_nodes(test_alcn)
41
+ assert(@website.tree[test_alcn])
42
+ assert_equal([test_alcn, 'TestPathHandlerApi'],
39
43
  @website.ext.link_definitions['my_api:TestPathHandlerApi'])
40
- assert(@website.tree['/my_dir/TestPathHandlerApi.en.html#method-i-setup'])
41
- assert_equal(['/my_dir/TestPathHandlerApi.en.html#method-i-setup', 'TestPathHandlerApi#setup'],
44
+ assert(@website.tree["#{test_alcn}#method-i-setup"])
45
+ assert_equal(["#{test_alcn}#method-i-setup", 'TestPathHandlerApi#setup'],
42
46
  @website.ext.link_definitions['my_api:TestPathHandlerApi#setup'])
43
47
  assert(@website.tree['/my_dir/API_rdoc.en.html'])
48
+ assert(@website.tree['/my_dir/TestPathHandlerApi/SampleTestSubclass.en.html'])
44
49
 
45
50
  cache_dir = @website.tmpdir(File.join('path_handler.api', 'my_api'))
46
51
  assert(File.directory?(cache_dir))
47
52
  end
48
53
 
54
+ def test_create_nodes
55
+ setup_for_create_nodes
56
+ @api.create_nodes(@path, nil)
57
+ assert_common_tests_for_create_nodes('/my_dir/TestPathHandlerApi.en.html')
58
+ end
59
+
60
+ def test_create_nodes_hierarchical
61
+ setup_for_create_nodes
62
+ @path['output_structure'] = 'hierarchical'
63
+ @api.create_nodes(@path, nil)
64
+ assert_common_tests_for_create_nodes('/my_dir/TestPathHandlerApi/index.en.html')
65
+ end
66
+
49
67
  def test_rdoc_options
50
68
  data_methods = [:verbosity, :dry_run, :update_output_dir,
51
69
  :force_output, :files]
@@ -82,6 +82,11 @@ class TestPageUtils < Minitest::Test
82
82
 
83
83
  node.render_block('content', @context, ['test', 'test'])
84
84
  assert_equal('testtestmycontent', @context.content)
85
+
86
+ # with no content processor
87
+ node.meta_info['blocks'] = {'content' => {'pipeline' => nil}}
88
+ node.render_block('content', @context)
89
+ assert_equal('mycontent', @context.content)
85
90
  end
86
91
 
87
92
  end
@@ -7,7 +7,7 @@ class TestCLICommandParser < Minitest::Test
7
7
 
8
8
  class SampleCommand < CmdParse::Command
9
9
  def initialize
10
- super('sample', false)
10
+ super('sample', takes_commands: false)
11
11
  end
12
12
  end
13
13
 
@@ -30,11 +30,11 @@ class TestCLICommandParser < Minitest::Test
30
30
  out, err = capture_io do
31
31
  begin
32
32
  @cli.parse(['help'])
33
- assert_equal(Dir.pwd, @cli.directory + '/')
33
+ assert_equal(Dir.pwd, @cli.directory)
34
34
  rescue SystemExit
35
35
  end
36
36
  end
37
- assert_match(/Global options:/, out)
37
+ assert_match(/Global Options:/, out)
38
38
  assert_match(/create.*generate.*help.*install.*sample.*.*show.*config.*deps.*extensions.*version/m, out)
39
39
  end
40
40
 
@@ -76,6 +76,7 @@ class TestContentProcessor < Minitest::Test
76
76
  def test_normalize_pipeline
77
77
  @cp.register('MyProcessor')
78
78
  @cp.register('MyProcessor', :name => 'other')
79
+ assert_equal([], @cp.normalize_pipeline(nil))
79
80
  assert_equal(['my_processor', 'other', 'other'], @cp.normalize_pipeline('my_processor,other,other'))
80
81
  assert_equal(['my_processor', 'other', 'other'], @cp.normalize_pipeline('my_processor, other, other'))
81
82
  assert_equal(['my_processor', 'other', 'other'], @cp.normalize_pipeline(['my_processor','other','other']))
@@ -62,10 +62,11 @@ class TestNodeFinder < Minitest::Test
62
62
  check.call(%w[/dir/subfile.html /other.en.html /other.html /dir2/index.en.html /dir2/index.de.html
63
63
  /german.de.html /dir/dir/file.html /file.de.html /file.en.html],
64
64
  @nf.find({:alcn => '/**/*.html', :flatten => true, :sort => true, :reverse => true}, tree['/']))
65
- check.call(%w[/german.de.html /other.en.html /other.html /file.en.html /file.de.html],
66
- @nf.find({:alcn => '/*.html', :flatten => true, :sort => 'sort_info'}, tree['/']))
67
- check.call(%w[/file.de.html /file.en.html /other.html /other.en.html /german.de.html],
68
- @nf.find({:alcn => '/*.html', :flatten => true, :sort => 'sort_info', :reverse => true}, tree['/']))
65
+ # deactivated tests because of change in "unstable" sort of Ruby between 2.1.2 and 2.2.0
66
+ #check.call(%w[/german.de.html /other.en.html /other.html /file.en.html /file.de.html],
67
+ # @nf.find({:alcn => '/*.html', :flatten => true, :sort => 'sort_info'}, tree['/']))
68
+ #check.call(%w[/file.de.html /file.en.html /other.html /other.en.html /german.de.html],
69
+ # @nf.find({:alcn => '/*.html', :flatten => true, :sort => 'sort_info', :reverse => true}, tree['/']))
69
70
  check.call(%w[/dir/dir/file.html /file.de.html /file.en.html /german.de.html /dir2/index.de.html /dir2/index.en.html
70
71
  /other.html /other.en.html /dir/subfile.html],
71
72
  @nf.find({:alcn => '/**/*.html', :name => 'test', :flatten => true, :sort => 'title'}, tree['/']))
@@ -110,7 +110,11 @@ class TestPath < Minitest::Test
110
110
  check_proc.call(Webgen::Path.new('/5.png'),
111
111
  '/', '5', nil, 'png', '5.png', '5.png', '/5.png', '/5.png', nil, '5')
112
112
  check_proc.call(Webgen::Path.new('/5.de.png'),
113
- '/', 'de', nil, 'png', 'de.png', 'de.png', '/de.png', '/de.png', 5, 'De')
113
+ '/', '5', 'de', 'png', '5.png', '5.de.png', '/5.png', '/5.de.png', nil, '5')
114
+ check_proc.call(Webgen::Path.new('/5.de.png.gz'),
115
+ '/', 'de', nil, 'png.gz', 'de.png.gz', 'de.png.gz', '/de.png.gz', '/de.png.gz', 5, 'De')
116
+ check_proc.call(Webgen::Path.new('/5.de.en.gz'),
117
+ '/', 'de', 'en', 'gz', 'de.gz', 'de.en.gz', '/de.gz', '/de.en.gz', 5, 'De')
114
118
  check_proc.call(Webgen::Path.new('/5.66.png'),
115
119
  '/', '66', nil, 'png', '66.png', '66.png', '/66.png', '/66.png', 5, '66')
116
120
 
@@ -129,6 +133,10 @@ class TestPath < Minitest::Test
129
133
  check_proc.call(Webgen::Path.new('/dir/file.en.png', 'cn' => '<basename>(-<version>)<ext>', 'version' => 'hallo'),
130
134
  '/dir/', 'file', 'en', 'png', 'file-hallo.png', 'file-hallo.en.png', '/dir/file-hallo.png', '/dir/file-hallo.en.png', nil, 'File')
131
135
 
136
+ # Check title generation
137
+ check_proc.call(Webgen::Path.new('/someFile.png'),
138
+ '/', 'someFile', nil, 'png', 'someFile.png', 'someFile.png', '/someFile.png', '/someFile.png', nil, 'SomeFile')
139
+
132
140
  # Check general exceptions
133
141
  assert_raises(RuntimeError) { Webgen::Path.new('/no_basename#').basename }
134
142
  assert_raises(RuntimeError) { Webgen::Path.new('relative.page').basename }
@@ -219,10 +227,12 @@ class TestPath < Minitest::Test
219
227
  assert_equal('hallo', path.io {|f| f.read })
220
228
 
221
229
  Dir.mktmpdir('webgen-path') do |dir|
222
- File.open(File.join(dir, 'src'), 'wb+') {|f| f.write("\303\274")}
230
+ File.open(File.join(dir, 'src'), 'wb+') {|f| f.write("\xEF\xBB\xBF\303\274")}
223
231
  path = Webgen::Path.new('/test') {|mode| File.open(File.join(dir, 'src'), mode) }
224
- assert_equal(1, path.data('r:UTF-8').length)
225
- assert_equal(2, path.data('rb').length)
232
+ assert_equal(2, path.data('r:UTF-8').length)
233
+ assert_equal(5, path.data('rb').length)
234
+ path['io_open_mode'] = 'r:BOM|UTF-8'
235
+ assert_equal(1, path.data.length)
226
236
  end
227
237
 
228
238
  path = Webgen::Path.new('/test.page')
metadata CHANGED
@@ -1,243 +1,243 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: webgen
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Leitner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-15 00:00:00.000000000 Z
11
+ date: 2015-03-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cmdparse
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.0'
20
- - - '>='
19
+ version: '3.0'
20
+ - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 2.0.5
22
+ version: 3.0.1
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
- - - ~>
27
+ - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '2.0'
30
- - - '>='
29
+ version: '3.0'
30
+ - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 2.0.5
32
+ version: 3.0.1
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: systemu
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
- - - ~>
37
+ - - "~>"
38
38
  - !ruby/object:Gem::Version
39
39
  version: '2.5'
40
40
  type: :runtime
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
- - - ~>
44
+ - - "~>"
45
45
  - !ruby/object:Gem::Version
46
46
  version: '2.5'
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: kramdown
49
49
  requirement: !ruby/object:Gem::Requirement
50
50
  requirements:
51
- - - ~>
51
+ - - "~>"
52
52
  - !ruby/object:Gem::Version
53
53
  version: '1.3'
54
54
  type: :runtime
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
- - - ~>
58
+ - - "~>"
59
59
  - !ruby/object:Gem::Version
60
60
  version: '1.3'
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: rake
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
- - - '>='
65
+ - - ">="
66
66
  - !ruby/object:Gem::Version
67
67
  version: 0.8.3
68
68
  type: :development
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
- - - '>='
72
+ - - ">="
73
73
  - !ruby/object:Gem::Version
74
74
  version: 0.8.3
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: minitest
77
77
  requirement: !ruby/object:Gem::Requirement
78
78
  requirements:
79
- - - ~>
79
+ - - "~>"
80
80
  - !ruby/object:Gem::Version
81
81
  version: '5.0'
82
82
  type: :development
83
83
  prerelease: false
84
84
  version_requirements: !ruby/object:Gem::Requirement
85
85
  requirements:
86
- - - ~>
86
+ - - "~>"
87
87
  - !ruby/object:Gem::Version
88
88
  version: '5.0'
89
89
  - !ruby/object:Gem::Dependency
90
90
  name: diff-lcs
91
91
  requirement: !ruby/object:Gem::Requirement
92
92
  requirements:
93
- - - ~>
93
+ - - "~>"
94
94
  - !ruby/object:Gem::Version
95
95
  version: '1.0'
96
96
  type: :development
97
97
  prerelease: false
98
98
  version_requirements: !ruby/object:Gem::Requirement
99
99
  requirements:
100
- - - ~>
100
+ - - "~>"
101
101
  - !ruby/object:Gem::Version
102
102
  version: '1.0'
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: maruku
105
105
  requirement: !ruby/object:Gem::Requirement
106
106
  requirements:
107
- - - ~>
107
+ - - "~>"
108
108
  - !ruby/object:Gem::Version
109
109
  version: '0.7'
110
110
  type: :development
111
111
  prerelease: false
112
112
  version_requirements: !ruby/object:Gem::Requirement
113
113
  requirements:
114
- - - ~>
114
+ - - "~>"
115
115
  - !ruby/object:Gem::Version
116
116
  version: '0.7'
117
117
  - !ruby/object:Gem::Dependency
118
118
  name: RedCloth
119
119
  requirement: !ruby/object:Gem::Requirement
120
120
  requirements:
121
- - - ~>
121
+ - - "~>"
122
122
  - !ruby/object:Gem::Version
123
123
  version: '4.1'
124
124
  type: :development
125
125
  prerelease: false
126
126
  version_requirements: !ruby/object:Gem::Requirement
127
127
  requirements:
128
- - - ~>
128
+ - - "~>"
129
129
  - !ruby/object:Gem::Version
130
130
  version: '4.1'
131
131
  - !ruby/object:Gem::Dependency
132
132
  name: haml
133
133
  requirement: !ruby/object:Gem::Requirement
134
134
  requirements:
135
- - - ~>
135
+ - - "~>"
136
136
  - !ruby/object:Gem::Version
137
137
  version: '4.0'
138
138
  type: :development
139
139
  prerelease: false
140
140
  version_requirements: !ruby/object:Gem::Requirement
141
141
  requirements:
142
- - - ~>
142
+ - - "~>"
143
143
  - !ruby/object:Gem::Version
144
144
  version: '4.0'
145
145
  - !ruby/object:Gem::Dependency
146
146
  name: sass
147
147
  requirement: !ruby/object:Gem::Requirement
148
148
  requirements:
149
- - - ~>
149
+ - - "~>"
150
150
  - !ruby/object:Gem::Version
151
151
  version: '3.2'
152
152
  type: :development
153
153
  prerelease: false
154
154
  version_requirements: !ruby/object:Gem::Requirement
155
155
  requirements:
156
- - - ~>
156
+ - - "~>"
157
157
  - !ruby/object:Gem::Version
158
158
  version: '3.2'
159
159
  - !ruby/object:Gem::Dependency
160
160
  name: builder
161
161
  requirement: !ruby/object:Gem::Requirement
162
162
  requirements:
163
- - - ~>
163
+ - - "~>"
164
164
  - !ruby/object:Gem::Version
165
165
  version: '2.1'
166
166
  type: :development
167
167
  prerelease: false
168
168
  version_requirements: !ruby/object:Gem::Requirement
169
169
  requirements:
170
- - - ~>
170
+ - - "~>"
171
171
  - !ruby/object:Gem::Version
172
172
  version: '2.1'
173
173
  - !ruby/object:Gem::Dependency
174
174
  name: rdoc
175
175
  requirement: !ruby/object:Gem::Requirement
176
176
  requirements:
177
- - - ~>
177
+ - - "~>"
178
178
  - !ruby/object:Gem::Version
179
179
  version: '4.0'
180
180
  type: :development
181
181
  prerelease: false
182
182
  version_requirements: !ruby/object:Gem::Requirement
183
183
  requirements:
184
- - - ~>
184
+ - - "~>"
185
185
  - !ruby/object:Gem::Version
186
186
  version: '4.0'
187
187
  - !ruby/object:Gem::Dependency
188
188
  name: coderay
189
189
  requirement: !ruby/object:Gem::Requirement
190
190
  requirements:
191
- - - ~>
191
+ - - "~>"
192
192
  - !ruby/object:Gem::Version
193
193
  version: '1.0'
194
194
  type: :development
195
195
  prerelease: false
196
196
  version_requirements: !ruby/object:Gem::Requirement
197
197
  requirements:
198
- - - ~>
198
+ - - "~>"
199
199
  - !ruby/object:Gem::Version
200
200
  version: '1.0'
201
201
  - !ruby/object:Gem::Dependency
202
202
  name: erubis
203
203
  requirement: !ruby/object:Gem::Requirement
204
204
  requirements:
205
- - - ~>
205
+ - - "~>"
206
206
  - !ruby/object:Gem::Version
207
207
  version: '2.6'
208
208
  type: :development
209
209
  prerelease: false
210
210
  version_requirements: !ruby/object:Gem::Requirement
211
211
  requirements:
212
- - - ~>
212
+ - - "~>"
213
213
  - !ruby/object:Gem::Version
214
214
  version: '2.6'
215
215
  - !ruby/object:Gem::Dependency
216
216
  name: rdiscount
217
217
  requirement: !ruby/object:Gem::Requirement
218
218
  requirements:
219
- - - ~>
219
+ - - "~>"
220
220
  - !ruby/object:Gem::Version
221
221
  version: '1.3'
222
222
  type: :development
223
223
  prerelease: false
224
224
  version_requirements: !ruby/object:Gem::Requirement
225
225
  requirements:
226
- - - ~>
226
+ - - "~>"
227
227
  - !ruby/object:Gem::Version
228
228
  version: '1.3'
229
229
  - !ruby/object:Gem::Dependency
230
230
  name: archive-tar-minitar
231
231
  requirement: !ruby/object:Gem::Requirement
232
232
  requirements:
233
- - - ~>
233
+ - - "~>"
234
234
  - !ruby/object:Gem::Version
235
235
  version: '0.5'
236
236
  type: :development
237
237
  prerelease: false
238
238
  version_requirements: !ruby/object:Gem::Requirement
239
239
  requirements:
240
- - - ~>
240
+ - - "~>"
241
241
  - !ruby/object:Gem::Version
242
242
  version: '0.5'
243
243
  description: |
@@ -252,17 +252,17 @@ extensions: []
252
252
  extra_rdoc_files:
253
253
  - API.rdoc
254
254
  files:
255
- - Rakefile
256
- - setup.rb
257
- - VERSION
255
+ - API.rdoc
258
256
  - AUTHORS
259
- - THANKS
260
257
  - COPYING
261
258
  - GPL
262
- - API.rdoc
263
259
  - README.md
260
+ - Rakefile
261
+ - THANKS
262
+ - VERSION
264
263
  - bin/webgen
265
264
  - data/webgen/basic_website_template/ext/init.rb
265
+ - data/webgen/basic_website_template/src/.gitignore
266
266
  - data/webgen/basic_website_template/webgen.config
267
267
  - data/webgen/bundle_template_files/README.md.erb
268
268
  - data/webgen/bundle_template_files/Rakefile.erb
@@ -278,7 +278,6 @@ files:
278
278
  - data/webgen/passive_sources/templates/sitemap.template
279
279
  - data/webgen/passive_sources/templates/tag.template
280
280
  - data/webgen/passive_sources/templates/tikz.template
281
- - data/webgen/basic_website_template/src/.gitignore
282
281
  - lib/webgen/blackboard.rb
283
282
  - lib/webgen/bundle/built-in-show-changes/info.yaml
284
283
  - lib/webgen/bundle/built-in-show-changes/init.rb
@@ -388,6 +387,7 @@ files:
388
387
  - lib/webgen/version.rb
389
388
  - lib/webgen/website.rb
390
389
  - man/man1/webgen.1
390
+ - setup.rb
391
391
  - test/test_documentation.rb
392
392
  - test/webgen/cli/test_logger.rb
393
393
  - test/webgen/content_processor/test_blocks.rb
@@ -484,24 +484,24 @@ post_install_message: |2+
484
484
  Have fun!
485
485
 
486
486
  rdoc_options:
487
- - --line-numbers
488
- - --main
487
+ - "--line-numbers"
488
+ - "--main"
489
489
  - API.rdoc
490
490
  require_paths:
491
491
  - lib
492
492
  required_ruby_version: !ruby/object:Gem::Requirement
493
493
  requirements:
494
- - - '>='
494
+ - - ">="
495
495
  - !ruby/object:Gem::Version
496
- version: 1.9.3
496
+ version: 2.0.0
497
497
  required_rubygems_version: !ruby/object:Gem::Requirement
498
498
  requirements:
499
- - - '>='
499
+ - - ">="
500
500
  - !ruby/object:Gem::Version
501
501
  version: '0'
502
502
  requirements: []
503
503
  rubyforge_project:
504
- rubygems_version: 2.0.3
504
+ rubygems_version: 2.4.5
505
505
  signing_key:
506
506
  specification_version: 4
507
507
  summary: webgen is a fast, powerful, and extensible static website generator.