nanoc 3.7.3 → 3.7.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.
Files changed (182) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +71 -46
  3. data/NEWS.md +14 -0
  4. data/lib/nanoc.rb +1 -1
  5. data/lib/nanoc/base/checksummer.rb +1 -1
  6. data/lib/nanoc/base/compilation/checksum_store.rb +1 -1
  7. data/lib/nanoc/base/compilation/compiled_content_cache.rb +1 -1
  8. data/lib/nanoc/base/compilation/compiler.rb +11 -10
  9. data/lib/nanoc/base/compilation/compiler_dsl.rb +4 -4
  10. data/lib/nanoc/base/compilation/dependency_tracker.rb +7 -7
  11. data/lib/nanoc/base/compilation/filter.rb +1 -1
  12. data/lib/nanoc/base/compilation/item_rep_proxy.rb +6 -5
  13. data/lib/nanoc/base/compilation/item_rep_recorder_proxy.rb +8 -7
  14. data/lib/nanoc/base/compilation/outdatedness_checker.rb +6 -6
  15. data/lib/nanoc/base/compilation/rule.rb +1 -1
  16. data/lib/nanoc/base/compilation/rule_memory_store.rb +1 -1
  17. data/lib/nanoc/base/compilation/rules_collection.rb +5 -5
  18. data/lib/nanoc/base/context.rb +1 -1
  19. data/lib/nanoc/base/core_ext/array.rb +1 -1
  20. data/lib/nanoc/base/core_ext/date.rb +1 -1
  21. data/lib/nanoc/base/core_ext/hash.rb +1 -1
  22. data/lib/nanoc/base/directed_graph.rb +3 -3
  23. data/lib/nanoc/base/memoization.rb +1 -1
  24. data/lib/nanoc/base/notification_center.rb +1 -1
  25. data/lib/nanoc/base/ordered_hash.rb +1 -1
  26. data/lib/nanoc/base/plugin_registry.rb +3 -3
  27. data/lib/nanoc/base/result_data/item_rep.rb +13 -11
  28. data/lib/nanoc/base/source_data/code_snippet.rb +2 -2
  29. data/lib/nanoc/base/source_data/data_source.rb +3 -3
  30. data/lib/nanoc/base/source_data/item.rb +8 -8
  31. data/lib/nanoc/base/source_data/item_array.rb +1 -1
  32. data/lib/nanoc/base/source_data/layout.rb +1 -1
  33. data/lib/nanoc/base/source_data/site.rb +27 -18
  34. data/lib/nanoc/base/store.rb +3 -3
  35. data/lib/nanoc/base/temp_filename_factory.rb +2 -2
  36. data/lib/nanoc/cli.rb +6 -6
  37. data/lib/nanoc/cli/cleaning_stream.rb +1 -1
  38. data/lib/nanoc/cli/command_runner.rb +4 -3
  39. data/lib/nanoc/cli/commands/autocompile.rb +3 -3
  40. data/lib/nanoc/cli/commands/check.rb +3 -3
  41. data/lib/nanoc/cli/commands/compile.rb +23 -23
  42. data/lib/nanoc/cli/commands/create-item.rb +5 -5
  43. data/lib/nanoc/cli/commands/create-layout.rb +14 -14
  44. data/lib/nanoc/cli/commands/create-site.rb +6 -6
  45. data/lib/nanoc/cli/commands/deploy.rb +8 -8
  46. data/lib/nanoc/cli/commands/nanoc.rb +3 -3
  47. data/lib/nanoc/cli/commands/prune.rb +3 -3
  48. data/lib/nanoc/cli/commands/shell.rb +4 -4
  49. data/lib/nanoc/cli/commands/show-data.rb +5 -5
  50. data/lib/nanoc/cli/commands/show-plugins.rb +5 -5
  51. data/lib/nanoc/cli/commands/show-rules.rb +4 -4
  52. data/lib/nanoc/cli/commands/sync.rb +1 -1
  53. data/lib/nanoc/cli/commands/update.rb +13 -13
  54. data/lib/nanoc/cli/commands/validate-css.rb +3 -3
  55. data/lib/nanoc/cli/commands/validate-html.rb +3 -3
  56. data/lib/nanoc/cli/commands/validate-links.rb +6 -6
  57. data/lib/nanoc/cli/commands/view.rb +4 -4
  58. data/lib/nanoc/cli/commands/watch.rb +11 -11
  59. data/lib/nanoc/cli/error_handler.rb +10 -10
  60. data/lib/nanoc/cli/logger.rb +1 -1
  61. data/lib/nanoc/cli/stream_cleaners/abstract.rb +1 -1
  62. data/lib/nanoc/data_sources/deprecated/last_fm.rb +5 -5
  63. data/lib/nanoc/data_sources/deprecated/twitter.rb +1 -1
  64. data/lib/nanoc/data_sources/filesystem.rb +16 -16
  65. data/lib/nanoc/data_sources/filesystem_unified.rb +1 -1
  66. data/lib/nanoc/data_sources/filesystem_verbose.rb +1 -1
  67. data/lib/nanoc/data_sources/static.rb +1 -1
  68. data/lib/nanoc/extra/auto_compiler.rb +2 -2
  69. data/lib/nanoc/extra/checking/check.rb +11 -1
  70. data/lib/nanoc/extra/checking/checks/external_links.rb +15 -7
  71. data/lib/nanoc/extra/checking/checks/internal_links.rb +3 -3
  72. data/lib/nanoc/extra/checking/checks/stale.rb +6 -6
  73. data/lib/nanoc/extra/checking/runner.rb +10 -9
  74. data/lib/nanoc/extra/chick.rb +2 -2
  75. data/lib/nanoc/extra/core_ext/enumerable.rb +1 -1
  76. data/lib/nanoc/extra/deployers/fog.rb +2 -2
  77. data/lib/nanoc/extra/deployers/rsync.rb +3 -3
  78. data/lib/nanoc/extra/file_proxy.rb +3 -3
  79. data/lib/nanoc/extra/jruby_nokogiri_warner.rb +1 -1
  80. data/lib/nanoc/extra/link_collector.rb +3 -3
  81. data/lib/nanoc/extra/piper.rb +2 -2
  82. data/lib/nanoc/extra/pruner.rb +4 -3
  83. data/lib/nanoc/extra/validators/links.rb +2 -2
  84. data/lib/nanoc/extra/validators/w3c.rb +1 -1
  85. data/lib/nanoc/extra/vcs.rb +5 -5
  86. data/lib/nanoc/extra/vcses/dummy.rb +1 -1
  87. data/lib/nanoc/filters/asciidoc.rb +1 -1
  88. data/lib/nanoc/filters/bluecloth.rb +1 -1
  89. data/lib/nanoc/filters/coffeescript.rb +1 -1
  90. data/lib/nanoc/filters/colorize_syntax.rb +19 -21
  91. data/lib/nanoc/filters/erubis.rb +1 -1
  92. data/lib/nanoc/filters/handlebars.rb +1 -1
  93. data/lib/nanoc/filters/less.rb +2 -2
  94. data/lib/nanoc/filters/markaby.rb +1 -1
  95. data/lib/nanoc/filters/mustache.rb +1 -1
  96. data/lib/nanoc/filters/rdoc.rb +1 -1
  97. data/lib/nanoc/filters/relativize_paths.rb +5 -5
  98. data/lib/nanoc/filters/rubypants.rb +1 -1
  99. data/lib/nanoc/filters/sass/sass_filesystem_importer.rb +1 -1
  100. data/lib/nanoc/filters/typogruby.rb +1 -1
  101. data/lib/nanoc/filters/xsl.rb +1 -1
  102. data/lib/nanoc/helpers/blogging.rb +12 -12
  103. data/lib/nanoc/helpers/capturing.rb +3 -3
  104. data/lib/nanoc/helpers/html_escape.rb +6 -6
  105. data/lib/nanoc/helpers/tagging.rb +1 -1
  106. data/lib/nanoc/helpers/xml_sitemap.rb +4 -4
  107. data/lib/nanoc/tasks/clean.rake +1 -1
  108. data/lib/nanoc/tasks/clean.rb +1 -1
  109. data/lib/nanoc/tasks/deploy/rsync.rake +2 -2
  110. data/lib/nanoc/version.rb +1 -1
  111. data/tasks/rubocop.rake +1 -0
  112. data/test/base/core_ext/array_spec.rb +7 -7
  113. data/test/base/core_ext/hash_spec.rb +1 -1
  114. data/test/base/test_checksum_store.rb +1 -1
  115. data/test/base/test_compiler.rb +14 -14
  116. data/test/base/test_compiler_dsl.rb +13 -13
  117. data/test/base/test_context.rb +2 -2
  118. data/test/base/test_dependency_tracker.rb +42 -42
  119. data/test/base/test_directed_graph.rb +102 -102
  120. data/test/base/test_item.rb +21 -21
  121. data/test/base/test_item_array.rb +19 -19
  122. data/test/base/test_item_rep.rb +50 -50
  123. data/test/base/test_layout.rb +6 -6
  124. data/test/base/test_outdatedness_checker.rb +2 -2
  125. data/test/base/test_rule_context.rb +2 -2
  126. data/test/base/test_site.rb +5 -5
  127. data/test/cli/commands/test_compile.rb +7 -7
  128. data/test/cli/commands/test_create_site.rb +2 -2
  129. data/test/cli/commands/test_deploy.rb +10 -10
  130. data/test/cli/commands/test_prune.rb +2 -2
  131. data/test/cli/commands/test_sync.rb +1 -1
  132. data/test/cli/commands/test_watch.rb +7 -7
  133. data/test/cli/test_cleaning_stream.rb +4 -4
  134. data/test/cli/test_cli.rb +3 -3
  135. data/test/cli/test_error_handler.rb +3 -3
  136. data/test/data_sources/test_filesystem.rb +19 -19
  137. data/test/data_sources/test_filesystem_unified.rb +30 -30
  138. data/test/data_sources/test_filesystem_verbose.rb +3 -3
  139. data/test/data_sources/test_static.rb +9 -9
  140. data/test/extra/checking/checks/test_stale.rb +8 -8
  141. data/test/extra/checking/test_check.rb +11 -1
  142. data/test/extra/checking/test_dsl.rb +1 -1
  143. data/test/extra/core_ext/test_enumerable.rb +2 -2
  144. data/test/extra/deployers/test_fog.rb +10 -10
  145. data/test/extra/deployers/test_rsync.rb +2 -2
  146. data/test/extra/test_auto_compiler.rb +28 -28
  147. data/test/extra/test_filesystem_tools.rb +3 -3
  148. data/test/extra/test_link_collector.rb +39 -20
  149. data/test/extra/validators/test_w3c.rb +5 -5
  150. data/test/filters/test_asciidoc.rb +2 -2
  151. data/test/filters/test_bluecloth.rb +1 -1
  152. data/test/filters/test_coffeescript.rb +1 -1
  153. data/test/filters/test_colorize_syntax.rb +20 -13
  154. data/test/filters/test_erb.rb +1 -1
  155. data/test/filters/test_kramdown.rb +1 -1
  156. data/test/filters/test_less.rb +10 -10
  157. data/test/filters/test_markaby.rb +2 -2
  158. data/test/filters/test_maruku.rb +2 -2
  159. data/test/filters/test_pandoc.rb +3 -3
  160. data/test/filters/test_rainpress.rb +4 -4
  161. data/test/filters/test_rdiscount.rb +2 -2
  162. data/test/filters/test_rdoc.rb +1 -1
  163. data/test/filters/test_redcarpet.rb +5 -5
  164. data/test/filters/test_redcloth.rb +5 -5
  165. data/test/filters/test_relativize_paths.rb +33 -31
  166. data/test/filters/test_rubypants.rb +2 -2
  167. data/test/filters/test_sass.rb +8 -8
  168. data/test/filters/test_slim.rb +3 -3
  169. data/test/filters/test_uglify_js.rb +1 -1
  170. data/test/filters/test_yui_compressor.rb +3 -3
  171. data/test/gem_loader.rb +1 -1
  172. data/test/helper.rb +14 -16
  173. data/test/helpers/test_blogging.rb +28 -28
  174. data/test/helpers/test_breadcrumbs.rb +12 -12
  175. data/test/helpers/test_capturing.rb +7 -7
  176. data/test/helpers/test_filtering.rb +16 -16
  177. data/test/helpers/test_link_to.rb +3 -3
  178. data/test/helpers/test_rendering.rb +1 -1
  179. data/test/helpers/test_tagging.rb +11 -11
  180. data/test/helpers/test_xml_sitemap.rb +18 -18
  181. data/test/tasks/test_clean.rb +8 -8
  182. metadata +2 -2
@@ -1,8 +1,8 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'create-site [options] path'
4
- aliases :create_site, :cs
5
- summary 'create a site'
3
+ usage 'create-site [options] path'
4
+ aliases :create_site, :cs
5
+ summary 'create a site'
6
6
  description "
7
7
  Create a new site at the given path. The site will use the `filesystem_unified` data source by default, but this can be changed using the `--datasource` commandline option.
8
8
  "
@@ -15,7 +15,7 @@ module Nanoc::CLI::Commands
15
15
 
16
16
  class << self
17
17
 
18
- protected
18
+ protected
19
19
 
20
20
  # Converts the given array to YAML format
21
21
  def array_to_yaml(array)
@@ -329,11 +329,11 @@ EOS
329
329
  puts "Created a blank nanoc site at '#{path}'. Enjoy!"
330
330
  end
331
331
 
332
- protected
332
+ protected
333
333
 
334
334
  # Creates a configuration file and a output directory for this site, as
335
335
  # well as a rakefile that loads the standard nanoc tasks.
336
- def site_create_minimal(data_source)
336
+ def site_create_minimal(_data_source)
337
337
  # Create output
338
338
  FileUtils.mkdir_p('output')
339
339
 
@@ -1,15 +1,15 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'deploy [options]'
4
- summary 'deploy the compiled site'
3
+ usage 'deploy [options]'
4
+ summary 'deploy the compiled site'
5
5
  description "
6
6
  Deploys the compiled site. The compiled site contents in the output directory will be uploaded to the destination, which is specified using the `--target` option.
7
7
  "
8
8
 
9
9
  option :t, :target, 'specify the location to deploy to (default: `default`)', :argument => :required
10
- flag :C, :'no-check', 'do not run the issue checks marked for deployment'
11
- flag :L, :list, 'list available locations to deploy to'
12
- flag :D, :'list-deployers', 'list available deployers'
10
+ flag :C, :'no-check', 'do not run the issue checks marked for deployment'
11
+ flag :L, :list, 'list available locations to deploy to'
12
+ flag :D, :'list-deployers', 'list available deployers'
13
13
  option :n, :'dry-run', 'show what would be deployed'
14
14
 
15
15
  module Nanoc::CLI::Commands
@@ -35,7 +35,7 @@ module Nanoc::CLI::Commands
35
35
 
36
36
  if options[:list]
37
37
  if deploy_configs.empty?
38
- puts 'No deployment configurations.'
38
+ puts 'No deployment configurations.'
39
39
  else
40
40
  puts 'Available deployment configurations:'
41
41
  deploy_configs.keys.each do |name|
@@ -70,10 +70,10 @@ module Nanoc::CLI::Commands
70
70
  # Check
71
71
  unless options[:'no-check']
72
72
  runner = Nanoc::Extra::Checking::Runner.new(site)
73
- if runner.has_dsl?
73
+ if runner.dsl_present?
74
74
  puts 'Running issue checks…'
75
75
  ok = runner.run_for_deploy
76
- if !ok
76
+ unless ok
77
77
  puts 'Issues found, deploy aborted.'
78
78
  return
79
79
  end
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'nanoc command [options] [arguments]'
3
+ usage 'nanoc command [options] [arguments]'
4
4
  summary 'nanoc, a static site compiler written in Ruby'
5
5
 
6
6
  opt :l, :color, 'enable color' do
@@ -12,7 +12,7 @@ opt :d, :debug, 'enable debugging' do
12
12
  Nanoc::CLI.debug = true
13
13
  end
14
14
 
15
- opt :h, :help, 'show the help message and quit' do |value, cmd|
15
+ opt :h, :help, 'show the help message and quit' do |_value, cmd|
16
16
  puts cmd.help
17
17
  exit 0
18
18
  end
@@ -35,6 +35,6 @@ opt :w, :warn, 'enable warnings' do
35
35
  $-w = true
36
36
  end
37
37
 
38
- run do |opts, args, cmd|
38
+ run do |_opts, _args, cmd|
39
39
  cmd.command_named('compile').run([])
40
40
  end
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'prune'
4
- summary 'remove files not managed by nanoc from the output directory'
3
+ usage 'prune'
4
+ summary 'remove files not managed by nanoc from the output directory'
5
5
  description <<-EOS
6
6
  Find all files in the output directory that do not correspond to an item
7
7
  managed by nanoc and remove them. Since this is a hazardous operation, an
@@ -33,7 +33,7 @@ module Nanoc::CLI::Commands
33
33
  end
34
34
  end
35
35
 
36
- protected
36
+ protected
37
37
 
38
38
  def prune_config
39
39
  site.config[:prune] || {}
@@ -1,8 +1,8 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'shell'
4
- summary 'open a shell on the nanoc environment'
5
- aliases 'console'
3
+ usage 'shell'
4
+ summary 'open a shell on the nanoc environment'
5
+ aliases 'console'
6
6
  description "
7
7
  Open an IRB shell on a context that contains @items, @layouts, @config and @site.
8
8
  "
@@ -19,7 +19,7 @@ module Nanoc::CLI::Commands
19
19
  Nanoc::Context.new(env).pry
20
20
  end
21
21
 
22
- protected
22
+ protected
23
23
 
24
24
  def env
25
25
  {
@@ -1,8 +1,8 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'show-data'
4
- aliases :debug
5
- summary 'show data in this site'
3
+ usage 'show-data'
4
+ aliases :debug
5
+ summary 'show data in this site'
6
6
  description <<-EOS
7
7
  Show information about all items, item representations and layouts in the
8
8
  current site, along with dependency information.
@@ -31,7 +31,7 @@ module Nanoc::CLI::Commands
31
31
  print_layouts(layouts, compiler)
32
32
  end
33
33
 
34
- protected
34
+ protected
35
35
 
36
36
  def sorted_with_prev(objects)
37
37
  prev = nil
@@ -89,7 +89,7 @@ module Nanoc::CLI::Commands
89
89
  end
90
90
  length = rep.raw_paths.keys.map { |s| s.to_s.length }.max
91
91
  rep.raw_paths.each do |snapshot_name, raw_path|
92
- puts " [ %-#{length}s ] %s" % [ snapshot_name, raw_path ]
92
+ puts " [ %-#{length}s ] %s" % [snapshot_name, raw_path]
93
93
  end
94
94
  end
95
95
  end
@@ -1,8 +1,8 @@
1
1
  # encoding: utf-8
2
2
 
3
- summary 'show all available plugins'
4
- aliases :info
5
- usage 'show-plugins [options]'
3
+ summary 'show all available plugins'
4
+ aliases :info
5
+ usage 'show-plugins [options]'
6
6
  description <<-EOS
7
7
  Show a list of available plugins, including filters, data sources and VCSes.
8
8
  If the current directory contains a nanoc web site, the plugins defined in this site will be shown as well.
@@ -45,7 +45,7 @@ module Nanoc::CLI::Commands
45
45
  puts
46
46
 
47
47
  # Print plugins organised by subtype
48
- [ :builtin, :custom ].each do |type|
48
+ [:builtin, :custom].each do |type|
49
49
  # Find relevant plugins
50
50
  relevant_plugins = plugins_with_this_superclass[type]
51
51
 
@@ -71,7 +71,7 @@ module Nanoc::CLI::Commands
71
71
  end
72
72
  end
73
73
 
74
- private
74
+ private
75
75
 
76
76
  PLUGIN_CLASS_ORDER = [
77
77
  Nanoc::Filter,
@@ -1,8 +1,8 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'show-rules [thing]'
4
- aliases :explain
5
- summary 'describe the rules for each item'
3
+ usage 'show-rules [thing]'
4
+ aliases :explain
5
+ summary 'describe the rules for each item'
6
6
  description "
7
7
  Prints the rules used for all items and layouts in the current site.
8
8
  "
@@ -25,7 +25,7 @@ module Nanoc::CLI::Commands
25
25
  site.layouts.each { |l| explain_layout(l) }
26
26
  end
27
27
 
28
- protected
28
+ protected
29
29
 
30
30
  def explain_item(item)
31
31
  puts "#{@c.c('Item ' + item.identifier, :bold, :yellow)}:"
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'sync'
3
+ usage 'sync'
4
4
  summary 'sync data sources'
5
5
  description <<-EOS
6
6
  Sync data source data. This command is useful for updating local item caches
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'update [options]'
3
+ usage 'update [options]'
4
4
  summary 'update the data stored by the data source to a newer version'
5
5
  description <<-EOS
6
6
  Update the data stored by the data source to a newer format. The format in
@@ -13,7 +13,7 @@ backup in case something goes wrong.
13
13
  EOS
14
14
 
15
15
  required :c, :vcs, 'select the VCS to use'
16
- flag :y, :yes, 'update the data without warning'
16
+ flag :y, :yes, 'update the data without warning'
17
17
 
18
18
  module Nanoc::CLI::Commands
19
19
 
@@ -37,21 +37,21 @@ module Nanoc::CLI::Commands
37
37
  $stderr.puts '** WARNING **'
38
38
  $stderr.puts '*************'
39
39
  $stderr.puts
40
- $stderr.puts 'Are you absolutely sure you want to update the ' +
41
- 'content for this site? Updating the site content ' +
42
- 'will change the structure of existing data. This ' +
43
- 'operation is destructive and cannot be reverted. ' +
44
- 'Please do not interrupt this operation; doing so can ' +
45
- 'result in data loss. As always, consider making a ' +
40
+ $stderr.puts 'Are you absolutely sure you want to update the ' \
41
+ 'content for this site? Updating the site content ' \
42
+ 'will change the structure of existing data. This ' \
43
+ 'operation is destructive and cannot be reverted. ' \
44
+ 'Please do not interrupt this operation; doing so can ' \
45
+ 'result in data loss. As always, consider making a ' \
46
46
  'backup copy.'
47
47
  $stderr.puts
48
- $stderr.puts 'If this nanoc site is versioned using a VCS ' +
49
- 'supported by nanoc, consider using the --vcs option ' +
50
- 'to have nanoc perform add/delete/move operations ' +
51
- 'using the specified VCS. To get a list of VCSes ' +
48
+ $stderr.puts 'If this nanoc site is versioned using a VCS ' \
49
+ 'supported by nanoc, consider using the --vcs option ' \
50
+ 'to have nanoc perform add/delete/move operations ' \
51
+ 'using the specified VCS. To get a list of VCSes ' \
52
52
  'supported by nanoc, issue the "info" command.'
53
53
  $stderr.puts
54
- $stderr.puts 'To continue, use the -y/--yes option, like "nanoc ' +
54
+ $stderr.puts 'To continue, use the -y/--yes option, like "nanoc ' \
55
55
  'update -y".'
56
56
  exit 1
57
57
  end
@@ -1,8 +1,8 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'validate-css [options]'
4
- aliases :validate_css, :vcss
5
- summary 'validate the site’s CSS'
3
+ usage 'validate-css [options]'
4
+ aliases :validate_css, :vcss
5
+ summary 'validate the site’s CSS'
6
6
  be_hidden
7
7
  description "
8
8
  Validates the site’s CSS files.
@@ -1,8 +1,8 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'validate-html [options]'
4
- aliases :validate_html, :vhtml
5
- summary 'validate the site’s HTML'
3
+ usage 'validate-html [options]'
4
+ aliases :validate_html, :vhtml
5
+ summary 'validate the site’s HTML'
6
6
  be_hidden
7
7
  description "
8
8
  Validates the site’s HTML files.
@@ -1,15 +1,15 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'validate-links [options]'
4
- aliases :validate_links, :vlink
5
- summary 'validate links in site'
3
+ usage 'validate-links [options]'
4
+ aliases :validate_links, :vlink
5
+ summary 'validate links in site'
6
6
  be_hidden
7
7
  description "
8
8
  Validates the site’s links. By default, both internal and external links will be checked.
9
9
  "
10
10
 
11
- flag :i, :internal, 'validate internal links only'
12
- flag :e, :external, 'validate external links only'
11
+ flag :i, :internal, 'validate internal links only'
12
+ flag :e, :external, 'validate external links only'
13
13
 
14
14
  module Nanoc::CLI::Commands
15
15
 
@@ -21,7 +21,7 @@ module Nanoc::CLI::Commands
21
21
  checks = []
22
22
  checks << 'ilinks' if options[:internal]
23
23
  checks << 'elinks' if options[:external]
24
- Nanoc::CLI.run [ 'check', checks ].flatten
24
+ Nanoc::CLI.run ['check', checks].flatten
25
25
  end
26
26
 
27
27
  end
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'view [options]'
4
- summary 'start the web server that serves static files'
3
+ usage 'view [options]'
4
+ summary 'start the web server that serves static files'
5
5
  description <<-EOS
6
6
  Start the static web server. Unless specified, the web server will run on port
7
7
  3000 and listen on all IP addresses. Running this static web server requires
@@ -57,7 +57,7 @@ module Nanoc::CLI::Commands
57
57
  handler.run(app, options_for_rack)
58
58
  end
59
59
 
60
- protected
60
+ protected
61
61
 
62
62
  def load_adsf
63
63
  # Load adsf
@@ -66,7 +66,7 @@ module Nanoc::CLI::Commands
66
66
  return
67
67
  rescue LoadError
68
68
  $stderr.puts "Could not find the required 'adsf' gem, " \
69
- "which is necessary for the view command."
69
+ 'which is necessary for the view command.'
70
70
  end
71
71
 
72
72
  # Check asdf
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
 
3
- usage 'watch [options]'
4
- summary 'start the watcher'
3
+ usage 'watch [options]'
4
+ summary 'start the watcher'
5
5
  be_hidden
6
6
  description <<-EOS
7
7
  Start the watcher. When a change is detected, the site will be recompiled.
@@ -114,25 +114,25 @@ module Nanoc::CLI::Commands
114
114
  end
115
115
  end
116
116
 
117
- protected
117
+ protected
118
118
 
119
- def have_tool_nix?(tool)
119
+ def nix_tool_present?(tool)
120
120
  !`which #{tool}`.empty?
121
121
  rescue Errno::ENOENT
122
122
  false
123
123
  end
124
124
 
125
- def have_tool_windows?(tool)
125
+ def windows_tool_present?(tool)
126
126
  !`where #{tool} 2> nul`.empty?
127
127
  rescue Errno::ENOENT
128
128
  false
129
129
  end
130
130
 
131
- def have_tool?(tool)
131
+ def tool_present?(tool)
132
132
  if self.on_windows?
133
- self.have_tool_windows?(tool)
133
+ self.windows_tool_present?(tool)
134
134
  else
135
- self.have_tool_nix?(tool)
135
+ self.nix_tool_present?(tool)
136
136
  end
137
137
  end
138
138
 
@@ -141,7 +141,7 @@ module Nanoc::CLI::Commands
141
141
  require 'terminal-notifier'
142
142
  'terminal-notify'
143
143
  rescue LoadError
144
- TOOLS.find { |t| have_tool?(t) }
144
+ TOOLS.find { |t| tool_present?(t) }
145
145
  end
146
146
  end
147
147
 
@@ -150,7 +150,7 @@ module Nanoc::CLI::Commands
150
150
  end
151
151
 
152
152
  def growlnotify_cmd_for(message)
153
- [ 'growlnotify', '-m', message ]
153
+ ['growlnotify', '-m', message]
154
154
  end
155
155
 
156
156
  def growlnotify(message)
@@ -158,7 +158,7 @@ module Nanoc::CLI::Commands
158
158
  end
159
159
 
160
160
  def growlnotify_windows_cmd_for(message)
161
- [ 'growlnotify', '/t:nanoc', message ]
161
+ ['growlnotify', '/t:nanoc', message]
162
162
  end
163
163
 
164
164
  def growlnotify_windows(message)
@@ -50,7 +50,7 @@ module Nanoc::CLI
50
50
  # @return [void]
51
51
  #
52
52
  # @api private
53
- def handle_while(&block)
53
+ def handle_while(&_block)
54
54
  # Set exit handler
55
55
  %w( INT TERM ).each do |signal|
56
56
  Signal.trap(signal) do
@@ -157,7 +157,7 @@ module Nanoc::CLI
157
157
  write_load_paths(stream, :verbose => true)
158
158
  end
159
159
 
160
- protected
160
+ protected
161
161
 
162
162
  # @return [Boolean] true if debug output is enabled, false if not
163
163
  #
@@ -184,7 +184,7 @@ module Nanoc::CLI
184
184
  # @return [Hash<String, Array>] A hash containing the gem names as keys and gem versions as value
185
185
  def gems_and_versions
186
186
  gems = {}
187
- Gem::Specification.find_all.sort_by { |s| [ s.name, s.version ] }.each do |spec|
187
+ Gem::Specification.find_all.sort_by { |s| [s.name, s.version] }.each do |spec|
188
188
  gems[spec.name] ||= []
189
189
  gems[spec.name] << spec.version.to_s
190
190
  end
@@ -248,11 +248,11 @@ module Nanoc::CLI
248
248
  end
249
249
  when RuntimeError
250
250
  if error.message =~ /^can't modify frozen/
251
- "You attempted to modify immutable data. Some data, such as " \
252
- "item/layout attributes and raw item/layout content, can not " \
253
- "be modified once compilation has started. (This was " \
254
- "unintentionally possible in 3.1.x and before, but has been " \
255
- "disabled in 3.2.x in order to allow compiler optimisations.)"
251
+ 'You attempted to modify immutable data. Some data, such as ' \
252
+ 'item/layout attributes and raw item/layout content, can not ' \
253
+ 'be modified once compilation has started. (This was ' \
254
+ 'unintentionally possible in 3.1.x and before, but has been ' \
255
+ 'disabled in 3.2.x in order to allow compiler optimisations.)'
256
256
  end
257
257
  end
258
258
  end
@@ -279,7 +279,7 @@ module Nanoc::CLI
279
279
  stream.puts "#{resolution}" if resolution
280
280
  end
281
281
 
282
- def write_compilation_stack(stream, error, params = {})
282
+ def write_compilation_stack(stream, _error, params = {})
283
283
  write_section_header(stream, 'Compilation stack', params)
284
284
 
285
285
  if stack.empty?
@@ -309,7 +309,7 @@ module Nanoc::CLI
309
309
  end
310
310
  end
311
311
 
312
- def write_issue_link(stream, params = {})
312
+ def write_issue_link(stream, _params = {})
313
313
  stream.puts
314
314
  stream.puts 'If you believe this is a bug in nanoc, please do report it at'
315
315
  stream.puts '-> https://github.com/nanoc/nanoc/issues/new <-'