railroader 4.3.5 → 4.3.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (107) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +16 -0
  3. data/README.md +15 -0
  4. data/bin/railroader +1 -1
  5. data/lib/railroader/call_index.rb +11 -11
  6. data/lib/railroader/checks/base_check.rb +43 -43
  7. data/lib/railroader/checks/check_basic_auth.rb +3 -3
  8. data/lib/railroader/checks/check_content_tag.rb +9 -9
  9. data/lib/railroader/checks/check_create_with.rb +2 -2
  10. data/lib/railroader/checks/check_cross_site_scripting.rb +24 -24
  11. data/lib/railroader/checks/check_default_routes.rb +5 -5
  12. data/lib/railroader/checks/check_deserialize.rb +1 -1
  13. data/lib/railroader/checks/check_dynamic_finders.rb +1 -1
  14. data/lib/railroader/checks/check_escape_function.rb +3 -3
  15. data/lib/railroader/checks/check_evaluation.rb +4 -4
  16. data/lib/railroader/checks/check_execute.rb +8 -8
  17. data/lib/railroader/checks/check_file_access.rb +2 -2
  18. data/lib/railroader/checks/check_filter_skipping.rb +2 -2
  19. data/lib/railroader/checks/check_forgery_setting.rb +3 -3
  20. data/lib/railroader/checks/check_jruby_xml.rb +1 -1
  21. data/lib/railroader/checks/check_json_parsing.rb +2 -2
  22. data/lib/railroader/checks/check_link_to.rb +12 -12
  23. data/lib/railroader/checks/check_link_to_href.rb +9 -9
  24. data/lib/railroader/checks/check_mail_to.rb +4 -4
  25. data/lib/railroader/checks/check_mass_assignment.rb +5 -5
  26. data/lib/railroader/checks/check_model_attributes.rb +6 -6
  27. data/lib/railroader/checks/check_model_serialize.rb +2 -2
  28. data/lib/railroader/checks/check_nested_attributes.rb +2 -2
  29. data/lib/railroader/checks/check_nested_attributes_bypass.rb +1 -1
  30. data/lib/railroader/checks/check_quote_table_name.rb +3 -3
  31. data/lib/railroader/checks/check_redirect.rb +19 -19
  32. data/lib/railroader/checks/check_regex_dos.rb +3 -3
  33. data/lib/railroader/checks/check_render.rb +4 -4
  34. data/lib/railroader/checks/check_response_splitting.rb +2 -2
  35. data/lib/railroader/checks/check_safe_buffer_manipulation.rb +4 -4
  36. data/lib/railroader/checks/check_sanitize_methods.rb +2 -2
  37. data/lib/railroader/checks/check_select_tag.rb +4 -4
  38. data/lib/railroader/checks/check_select_vulnerability.rb +3 -3
  39. data/lib/railroader/checks/check_send.rb +1 -1
  40. data/lib/railroader/checks/check_send_file.rb +1 -1
  41. data/lib/railroader/checks/check_session_settings.rb +10 -10
  42. data/lib/railroader/checks/check_single_quotes.rb +8 -8
  43. data/lib/railroader/checks/check_skip_before_filter.rb +5 -5
  44. data/lib/railroader/checks/check_sql.rb +41 -41
  45. data/lib/railroader/checks/check_strip_tags.rb +6 -6
  46. data/lib/railroader/checks/check_symbol_dos_cve.rb +0 -1
  47. data/lib/railroader/checks/check_translate_bug.rb +4 -4
  48. data/lib/railroader/checks/check_unsafe_reflection.rb +1 -1
  49. data/lib/railroader/checks/check_validation_regex.rb +7 -7
  50. data/lib/railroader/checks/check_weak_hash.rb +1 -1
  51. data/lib/railroader/checks/check_without_protection.rb +9 -9
  52. data/lib/railroader/checks/check_yaml_parsing.rb +5 -5
  53. data/lib/railroader/checks.rb +18 -18
  54. data/lib/railroader/commandline.rb +1 -1
  55. data/lib/railroader/differ.rb +2 -2
  56. data/lib/railroader/options.rb +7 -7
  57. data/lib/railroader/parsers/rails2_erubis.rb +1 -1
  58. data/lib/railroader/parsers/rails2_xss_plugin_erubis.rb +4 -4
  59. data/lib/railroader/parsers/template_parser.rb +1 -1
  60. data/lib/railroader/processor.rb +17 -17
  61. data/lib/railroader/processors/alias_processor.rb +72 -72
  62. data/lib/railroader/processors/base_processor.rb +31 -31
  63. data/lib/railroader/processors/controller_alias_processor.rb +31 -31
  64. data/lib/railroader/processors/controller_processor.rb +29 -29
  65. data/lib/railroader/processors/erb_template_processor.rb +8 -8
  66. data/lib/railroader/processors/erubis_template_processor.rb +6 -6
  67. data/lib/railroader/processors/gem_processor.rb +1 -1
  68. data/lib/railroader/processors/haml_template_processor.rb +14 -14
  69. data/lib/railroader/processors/lib/call_conversion_helper.rb +1 -1
  70. data/lib/railroader/processors/lib/find_all_calls.rb +15 -15
  71. data/lib/railroader/processors/lib/find_call.rb +26 -26
  72. data/lib/railroader/processors/lib/find_return_value.rb +11 -11
  73. data/lib/railroader/processors/lib/module_helper.rb +1 -1
  74. data/lib/railroader/processors/lib/processor_helper.rb +4 -4
  75. data/lib/railroader/processors/lib/rails2_config_processor.rb +20 -20
  76. data/lib/railroader/processors/lib/rails2_route_processor.rb +38 -38
  77. data/lib/railroader/processors/lib/rails3_config_processor.rb +14 -14
  78. data/lib/railroader/processors/lib/rails3_route_processor.rb +16 -16
  79. data/lib/railroader/processors/lib/render_helper.rb +32 -32
  80. data/lib/railroader/processors/lib/route_helper.rb +12 -12
  81. data/lib/railroader/processors/library_processor.rb +1 -1
  82. data/lib/railroader/processors/model_processor.rb +9 -9
  83. data/lib/railroader/processors/output_processor.rb +3 -3
  84. data/lib/railroader/processors/slim_template_processor.rb +4 -4
  85. data/lib/railroader/processors/template_alias_processor.rb +10 -10
  86. data/lib/railroader/processors/template_processor.rb +7 -7
  87. data/lib/railroader/report/renderer.rb +1 -1
  88. data/lib/railroader/report/report_base.rb +12 -12
  89. data/lib/railroader/report/report_csv.rb +2 -2
  90. data/lib/railroader/report/report_html.rb +5 -5
  91. data/lib/railroader/report/report_markdown.rb +2 -2
  92. data/lib/railroader/report/report_table.rb +3 -3
  93. data/lib/railroader/report/report_tabs.rb +2 -2
  94. data/lib/railroader/report/report_text.rb +3 -4
  95. data/lib/railroader/report.rb +3 -3
  96. data/lib/railroader/rescanner.rb +36 -36
  97. data/lib/railroader/scanner.rb +23 -23
  98. data/lib/railroader/tracker/config.rb +3 -3
  99. data/lib/railroader/tracker/controller.rb +2 -2
  100. data/lib/railroader/tracker.rb +42 -42
  101. data/lib/railroader/util.rb +47 -47
  102. data/lib/railroader/version.rb +1 -1
  103. data/lib/railroader/warning.rb +9 -10
  104. data/lib/railroader.rb +32 -32
  105. data/lib/ruby_parser/bm_sexp.rb +63 -63
  106. data/lib/ruby_parser/bm_sexp_processor.rb +3 -3
  107. metadata +4 -4
@@ -8,7 +8,7 @@ class Railroader::Report::HTML < Railroader::Report::Base
8
8
  def initialize *args
9
9
  super
10
10
 
11
- @element_id = 0 #Used for HTML ids
11
+ @element_id = 0 # Used for HTML ids
12
12
  end
13
13
 
14
14
  def generate_report
@@ -42,7 +42,7 @@ class Railroader::Report::HTML < Railroader::Report::Base
42
42
  Railroader::Report::Renderer.new('overview', :locals => locals).render
43
43
  end
44
44
 
45
- #Generate listings of templates and their output
45
+ # Generate listings of templates and their output
46
46
  def generate_templates
47
47
  out_processor = Railroader::OutputProcessor.new
48
48
  template_rows = {}
@@ -92,7 +92,7 @@ class Railroader::Report::HTML < Railroader::Report::Base
92
92
  warning
93
93
  end
94
94
 
95
- #Return header for HTML output. Uses CSS from tracker.options[:html_style]
95
+ # Return header for HTML output. Uses CSS from tracker.options[:html_style]
96
96
  def html_header
97
97
  if File.exist? tracker.options[:html_style]
98
98
  css = File.read tracker.options[:html_style]
@@ -111,7 +111,7 @@ class Railroader::Report::HTML < Railroader::Report::Base
111
111
  Railroader::Report::Renderer.new('header', :locals => locals).render
112
112
  end
113
113
 
114
- #Generate HTML for warnings, including context show/hidden via Javascript
114
+ # Generate HTML for warnings, including context show/hidden via Javascript
115
115
  def with_context warning, message
116
116
  context = context_for(@app_tree, warning)
117
117
  full_message = nil
@@ -197,7 +197,7 @@ class Railroader::Report::HTML < Railroader::Report::Base
197
197
  output << "</tbody></table></div>"
198
198
  end
199
199
 
200
- #Escape warning message and highlight user input in HTML output
200
+ # Escape warning message and highlight user input in HTML output
201
201
  def html_message warning, message
202
202
  message = CGI.escapeHTML(message)
203
203
 
@@ -34,7 +34,7 @@ class Railroader::Report::Markdown < Railroader::Report::Table
34
34
  generate_overview.to_s << "\n\n" <<
35
35
  generate_warning_overview.to_s << "\n\n"
36
36
 
37
- #Return output early if only summarizing
37
+ # Return output early if only summarizing
38
38
  return out if tracker.options[:summary_only]
39
39
 
40
40
  if tracker.options[:report_routes] or tracker.options[:debug]
@@ -98,7 +98,7 @@ class Railroader::Report::Markdown < Railroader::Report::Table
98
98
  end
99
99
  if warning.code
100
100
  code = warning.format_code
101
- message.gsub(code, "`#{code.gsub('`','``').gsub(/\A``|``\z/, '` `')}`")
101
+ message.gsub(code, "`#{code.gsub('`', '``').gsub(/\A``|``\z/, '` `')}`")
102
102
  else
103
103
  message
104
104
  end
@@ -17,7 +17,7 @@ class Railroader::Report::Table < Railroader::Report::Base
17
17
  truncate_table(generate_warning_overview.to_s) << "\n"
18
18
  end
19
19
 
20
- #Return output early if only summarizing
20
+ # Return output early if only summarizing
21
21
  if summary_option == :summary_only or summary_option == true
22
22
  return out
23
23
  end
@@ -62,7 +62,7 @@ class Railroader::Report::Table < Railroader::Report::Base
62
62
  end
63
63
  end
64
64
 
65
- #Generate listings of templates and their output
65
+ # Generate listings of templates and their output
66
66
  def generate_templates
67
67
  out_processor = Railroader::OutputProcessor.new
68
68
  template_rows = {}
@@ -100,7 +100,7 @@ class Railroader::Report::Table < Railroader::Report::Base
100
100
  end
101
101
  end
102
102
 
103
- #Generate header for text output
103
+ # Generate header for text output
104
104
  def text_header
105
105
  <<-HEADER
106
106
 
@@ -1,5 +1,5 @@
1
- #Generated tab-separated output suitable for the Jenkins Railroader Plugin:
2
- #https://github.com/presidentbeef/railroader-jenkins-plugin
1
+ # Generated tab-separated output suitable for the Jenkins Railroader Plugin:
2
+ # https://github.com/presidentbeef/railroader-jenkins-plugin
3
3
  class Railroader::Report::Tabs < Railroader::Report::Base
4
4
  def generate_report
5
5
  [[:generic_warnings, "General"], [:controller_warnings, "Controller"],
@@ -19,7 +19,7 @@ class Railroader::Report::Text < Railroader::Report::Base
19
19
  add_chunk generate_controllers if tracker.options[:debug] or tracker.options[:report_routes]
20
20
  add_chunk generate_templates if tracker.options[:debug]
21
21
  add_chunk generate_obsolete
22
- add_chunk generate_errors
22
+ add_chunk generate_errors
23
23
  add_chunk generate_warnings
24
24
  end
25
25
 
@@ -35,7 +35,7 @@ class Railroader::Report::Text < Railroader::Report::Base
35
35
 
36
36
  def generate_header
37
37
  [
38
- header("Railroader Report"),
38
+ header("Railroader Report"),
39
39
  label("Application Path", tracker.app_path),
40
40
  label("Rails Version", rails_version),
41
41
  label("Railroader Version", Railroader::Version),
@@ -92,7 +92,7 @@ class Railroader::Report::Text < Railroader::Report::Base
92
92
  errors = tracker.errors.map do |e|
93
93
  trace = if full_trace
94
94
  e[:backtrace].join("\n")
95
- else
95
+ else
96
96
  e[:backtrace][0]
97
97
  end
98
98
 
@@ -195,4 +195,3 @@ class Railroader::Report::Text < Railroader::Report::Base
195
195
  double_space "Controller Overview", controllers
196
196
  end
197
197
  end
198
-
@@ -1,8 +1,8 @@
1
1
  require 'railroader/report/report_base'
2
2
 
3
- #Generates a report based on the Tracker and the results of
4
- #Tracker#run_checks. Be sure to +run_checks+ before generating
5
- #a report.
3
+ # Generates a report based on the Tracker and the results of
4
+ # Tracker#run_checks. Be sure to +run_checks+ before generating
5
+ # a report.
6
6
  class Railroader::Report
7
7
  attr_reader :tracker
8
8
 
@@ -2,25 +2,25 @@ require 'railroader/scanner'
2
2
  require 'railroader/util'
3
3
  require 'railroader/differ'
4
4
 
5
- #Class for rescanning changed files after an initial scan
5
+ # Class for rescanning changed files after an initial scan
6
6
  class Railroader::Rescanner < Railroader::Scanner
7
7
  include Railroader::Util
8
8
  KNOWN_TEMPLATE_EXTENSIONS = Railroader::TemplateParser::KNOWN_TEMPLATE_EXTENSIONS
9
9
  SCAN_ORDER = [:config, :gemfile, :initializer, :lib, :routes, :template,
10
10
  :model, :controller]
11
11
 
12
- #Create new Rescanner to scan changed files
12
+ # Create new Rescanner to scan changed files
13
13
  def initialize options, processor, changed_files
14
14
  super(options, processor)
15
15
 
16
16
  @paths = changed_files.map {|f| @app_tree.expand_path(f) }
17
- @old_results = tracker.filtered_warnings #Old warnings from previous scan
18
- @changes = nil #True if files had to be rescanned
17
+ @old_results = tracker.filtered_warnings # Old warnings from previous scan
18
+ @changes = nil # True if files had to be rescanned
19
19
  @reindex = Set.new
20
20
  end
21
21
 
22
- #Runs checks.
23
- #Will rescan files if they have not already been scanned
22
+ # Runs checks.
23
+ # Will rescan files if they have not already been scanned
24
24
  def recheck
25
25
  rescan if @changes.nil?
26
26
 
@@ -29,7 +29,7 @@ class Railroader::Rescanner < Railroader::Scanner
29
29
  Railroader::RescanReport.new @old_results, tracker
30
30
  end
31
31
 
32
- #Rescans changed files
32
+ # Rescans changed files
33
33
  def rescan
34
34
  tracker.template_cache.clear
35
35
 
@@ -63,7 +63,7 @@ class Railroader::Rescanner < Railroader::Scanner
63
63
  self
64
64
  end
65
65
 
66
- #Rescans a single file
66
+ # Rescans a single file
67
67
  def rescan_file path, type = nil
68
68
  type ||= file_type path
69
69
 
@@ -93,7 +93,7 @@ class Railroader::Rescanner < Railroader::Scanner
93
93
 
94
94
  process_gems
95
95
  else
96
- return false #Nothing to do, file hopefully does not need to be rescanned
96
+ return false # Nothing to do, file hopefully does not need to be rescanned
97
97
  end
98
98
 
99
99
  true
@@ -106,8 +106,8 @@ class Railroader::Rescanner < Railroader::Scanner
106
106
  process_controller astfile
107
107
  end
108
108
 
109
- #Process data flow and template rendering
110
- #from the controller
109
+ # Process data flow and template rendering
110
+ # from the controller
111
111
  tracker.controllers.each do |name, controller|
112
112
  if controller.files.include?(path)
113
113
  tracker.templates.each do |template_name, template|
@@ -141,8 +141,8 @@ class Railroader::Rescanner < Railroader::Scanner
141
141
 
142
142
  rescan = Set.new
143
143
 
144
- #Search for processed template and process it.
145
- #Search for rendered versions of template and re-render (if necessary)
144
+ # Search for processed template and process it.
145
+ # Search for rendered versions of template and re-render (if necessary)
146
146
  tracker.templates.each do |_name, template|
147
147
  if template.file == path or template.file.nil?
148
148
  next unless template.render_path and template.name.to_sym == template_name.to_sym
@@ -185,7 +185,7 @@ class Railroader::Rescanner < Railroader::Scanner
185
185
  process_model astfile.path, astfile.ast
186
186
  end
187
187
 
188
- #Only need to rescan other things if a model is added or removed
188
+ # Only need to rescan other things if a model is added or removed
189
189
  if num_models != tracker.models.length
190
190
  process_template_data_flows
191
191
  process_controller_data_flows
@@ -231,7 +231,7 @@ class Railroader::Rescanner < Railroader::Scanner
231
231
  end
232
232
  end
233
233
 
234
- #Handle rescanning when a file is deleted
234
+ # Handle rescanning when a file is deleted
235
235
  def rescan_deleted_file path, type
236
236
  case type
237
237
  when :controller
@@ -260,13 +260,13 @@ class Railroader::Rescanner < Railroader::Scanner
260
260
 
261
261
  template_name = template_path_to_name(path)
262
262
 
263
- #Remove template
263
+ # Remove template
264
264
  tracker.reset_template template_name
265
265
 
266
266
  rendered_from_controller = /^#{template_name}\.(.+Controller)#(.+)/
267
267
  rendered_from_view = /^#{template_name}\.Template:(.+)/
268
268
 
269
- #Remove any rendered versions, or partials rendered from it
269
+ # Remove any rendered versions, or partials rendered from it
270
270
  tracker.templates.delete_if do |_name, template|
271
271
  template.file == path or template.name.to_sym == template_name.to_sym
272
272
  end
@@ -289,8 +289,8 @@ class Railroader::Rescanner < Railroader::Scanner
289
289
  tracker.initializers.delete Pathname.new(path).basename.to_s
290
290
  end
291
291
 
292
- #Check controllers, templates, models and libs for data from file
293
- #and delete it.
292
+ # Check controllers, templates, models and libs for data from file
293
+ # and delete it.
294
294
  def remove_deleted_file path
295
295
  deleted = false
296
296
 
@@ -313,7 +313,7 @@ class Railroader::Rescanner < Railroader::Scanner
313
313
  deleted
314
314
  end
315
315
 
316
- #Guess at what kind of file the path contains
316
+ # Guess at what kind of file the path contains
317
317
  def file_type path
318
318
  case path
319
319
  when /\/app\/controllers/
@@ -346,7 +346,7 @@ class Railroader::Rescanner < Railroader::Scanner
346
346
 
347
347
  to_rescan = []
348
348
 
349
- #Rescan controllers that mixed in library
349
+ # Rescan controllers that mixed in library
350
350
  tracker.controllers.each do |_name, controller|
351
351
  if controller.includes.include? lib.name
352
352
  controller.files.each do |path|
@@ -364,9 +364,9 @@ class Railroader::Rescanner < Railroader::Scanner
364
364
 
365
365
  to_rescan = []
366
366
 
367
- #Check if a method from this mixin was used to render a template.
368
- #This is not precise, because a different controller might have the
369
- #same method...
367
+ # Check if a method from this mixin was used to render a template.
368
+ # This is not precise, because a different controller might have the
369
+ # same method...
370
370
  tracker.templates.each do |name, template|
371
371
  next unless template.render_path
372
372
 
@@ -395,7 +395,7 @@ class Railroader::Rescanner < Railroader::Scanner
395
395
  end
396
396
  end
397
397
 
398
- #Class to make reporting of rescan results simpler to deal with
398
+ # Class to make reporting of rescan results simpler to deal with
399
399
  class Railroader::RescanReport
400
400
  include Railroader::Util
401
401
  attr_reader :old_results, :new_results
@@ -407,46 +407,46 @@ class Railroader::RescanReport
407
407
  @diff = nil
408
408
  end
409
409
 
410
- #Returns true if any warnings were found (new or old)
410
+ # Returns true if any warnings were found (new or old)
411
411
  def any_warnings?
412
412
  not all_warnings.empty?
413
413
  end
414
414
 
415
- #Returns an array of all warnings found
415
+ # Returns an array of all warnings found
416
416
  def all_warnings
417
417
  @all_warnings ||= @tracker.filtered_warnings
418
418
  end
419
419
 
420
- #Returns an array of warnings which were in the old report but are not in the
421
- #new report after rescanning
420
+ # Returns an array of warnings which were in the old report but are not in the
421
+ # new report after rescanning
422
422
  def fixed_warnings
423
423
  diff[:fixed]
424
424
  end
425
425
 
426
- #Returns an array of warnings which were in the new report but were not in
427
- #the old report
426
+ # Returns an array of warnings which were in the new report but were not in
427
+ # the old report
428
428
  def new_warnings
429
429
  diff[:new]
430
430
  end
431
431
 
432
- #Returns true if there are any new or fixed warnings
432
+ # Returns true if there are any new or fixed warnings
433
433
  def warnings_changed?
434
434
  not (diff[:new].empty? and diff[:fixed].empty?)
435
435
  end
436
436
 
437
- #Returns a hash of arrays for :new and :fixed warnings
437
+ # Returns a hash of arrays for :new and :fixed warnings
438
438
  def diff
439
439
  @diff ||= Railroader::Differ.new(all_warnings, @old_results).diff
440
440
  end
441
441
 
442
- #Returns an array of warnings which were in the old report and the new report
442
+ # Returns an array of warnings which were in the old report and the new report
443
443
  def existing_warnings
444
444
  @old ||= all_warnings.select do |w|
445
445
  not new_warnings.include? w
446
446
  end
447
447
  end
448
448
 
449
- #Output total, fixed, and new warnings
449
+ # Output total, fixed, and new warnings
450
450
  def to_s(verbose = false)
451
451
  Railroader.load_railroader_dependency 'terminal-table'
452
452
 
@@ -457,7 +457,7 @@ Fixed warnings: #{fixed_warnings.length}
457
457
  New warnings: #{new_warnings.length}
458
458
  OUTPUT
459
459
  else
460
- #Eventually move this to different method, or make default to_s
460
+ # Eventually move this to different method, or make default to_s
461
461
  out = ""
462
462
 
463
463
  {:fixed => fixed_warnings, :new => new_warnings, :existing => existing_warnings}.each do |warning_type, warnings|
@@ -12,12 +12,12 @@ rescue LoadError => e
12
12
  exit(-1)
13
13
  end
14
14
 
15
- #Scans the Rails application.
15
+ # Scans the Rails application.
16
16
  class Railroader::Scanner
17
17
  attr_reader :options
18
18
  RUBY_1_9 = RUBY_VERSION >= "1.9.0"
19
19
 
20
- #Pass in path to the root of the Rails application
20
+ # Pass in path to the root of the Rails application
21
21
  def initialize options, processor = nil
22
22
  @options = options
23
23
  @app_tree = Railroader::AppTree.from_options(options)
@@ -29,12 +29,12 @@ class Railroader::Scanner
29
29
  @processor = processor || Railroader::Processor.new(@app_tree, options)
30
30
  end
31
31
 
32
- #Returns the Tracker generated from the scan
32
+ # Returns the Tracker generated from the scan
33
33
  def tracker
34
34
  @processor.tracked_events
35
35
  end
36
36
 
37
- #Process everything in the Rails application
37
+ # Process everything in the Rails application
38
38
  def process
39
39
  Railroader.notify "Processing gems..."
40
40
  process_gems
@@ -90,9 +90,9 @@ class Railroader::Scanner
90
90
  @file_list = fp.file_list
91
91
  end
92
92
 
93
- #Process config/environment.rb and config/gems.rb
93
+ # Process config/environment.rb and config/gems.rb
94
94
  #
95
- #Stores parsed information in tracker.config
95
+ # Stores parsed information in tracker.config
96
96
  def process_config
97
97
  if options[:rails3] or options[:rails4] or options[:rails5]
98
98
  process_config_file "application.rb"
@@ -128,7 +128,7 @@ class Railroader::Scanner
128
128
 
129
129
  private :process_config_file
130
130
 
131
- #Process Gemfile
131
+ # Process Gemfile
132
132
  def process_gems
133
133
  gem_files = {}
134
134
  if @app_tree.exists? "Gemfile"
@@ -151,7 +151,7 @@ class Railroader::Scanner
151
151
  tracker.error e.exception(e.message + "\nWhile processing Gemfile"), e.backtrace
152
152
  end
153
153
 
154
- #Set :rails3/:rails4 option if version was not determined from Gemfile
154
+ # Set :rails3/:rails4 option if version was not determined from Gemfile
155
155
  def guess_rails_version
156
156
  unless tracker.options[:rails3] or tracker.options[:rails4]
157
157
  if @app_tree.exists?("script/rails")
@@ -170,9 +170,9 @@ class Railroader::Scanner
170
170
  end
171
171
  end
172
172
 
173
- #Process all the .rb files in config/initializers/
173
+ # Process all the .rb files in config/initializers/
174
174
  #
175
- #Adds parsed information to tracker.initializers
175
+ # Adds parsed information to tracker.initializers
176
176
  def process_initializers
177
177
  track_progress @file_list[:initializers] do |init|
178
178
  Railroader.debug "Processing #{init[:path]}"
@@ -180,14 +180,14 @@ class Railroader::Scanner
180
180
  end
181
181
  end
182
182
 
183
- #Process an initializer
183
+ # Process an initializer
184
184
  def process_initializer init
185
185
  @processor.process_initializer(init.path, init.ast)
186
186
  end
187
187
 
188
- #Process all .rb in lib/
188
+ # Process all .rb in lib/
189
189
  #
190
- #Adds parsed information to tracker.libs.
190
+ # Adds parsed information to tracker.libs.
191
191
  def process_libs
192
192
  if options[:skip_libs]
193
193
  Railroader.notify '[Skipping]'
@@ -200,14 +200,14 @@ class Railroader::Scanner
200
200
  end
201
201
  end
202
202
 
203
- #Process a library
203
+ # Process a library
204
204
  def process_lib lib
205
205
  @processor.process_lib lib.ast, lib.path
206
206
  end
207
207
 
208
- #Process config/routes.rb
208
+ # Process config/routes.rb
209
209
  #
210
- #Adds parsed information to tracker.routes
210
+ # Adds parsed information to tracker.routes
211
211
  def process_routes
212
212
  if @app_tree.exists?("config/routes.rb")
213
213
  begin
@@ -222,9 +222,9 @@ class Railroader::Scanner
222
222
  end
223
223
  end
224
224
 
225
- #Process all .rb files in controllers/
225
+ # Process all .rb files in controllers/
226
226
  #
227
- #Adds processed controllers to tracker.controllers
227
+ # Adds processed controllers to tracker.controllers
228
228
  def process_controllers
229
229
  track_progress @file_list[:controllers] do |controller|
230
230
  Railroader.debug "Processing #{controller.path}"
@@ -242,7 +242,7 @@ class Railroader::Scanner
242
242
  end
243
243
  end
244
244
 
245
- #No longer need these processed filter methods
245
+ # No longer need these processed filter methods
246
246
  tracker.filter_cache.clear
247
247
  end
248
248
 
@@ -254,9 +254,9 @@ class Railroader::Scanner
254
254
  end
255
255
  end
256
256
 
257
- #Process all views and partials in views/
257
+ # Process all views and partials in views/
258
258
  #
259
- #Adds processed views to tracker.views
259
+ # Adds processed views to tracker.views
260
260
  def process_templates
261
261
  templates = @file_list[:templates].sort_by { |t| t[:path] }
262
262
 
@@ -279,9 +279,9 @@ class Railroader::Scanner
279
279
  end
280
280
  end
281
281
 
282
- #Process all the .rb files in models/
282
+ # Process all the .rb files in models/
283
283
  #
284
- #Adds the processed models to tracker.models
284
+ # Adds the processed models to tracker.models
285
285
  def process_models
286
286
  track_progress @file_list[:models] do |model|
287
287
  Railroader.debug "Processing #{model[:path]}"
@@ -47,7 +47,7 @@ module Railroader
47
47
  end
48
48
 
49
49
  def escape_html_entities_in_json?
50
- #TODO add version-specific information here
50
+ # TODO add version-specific information here
51
51
  @rails[:active_support] and
52
52
  true? @rails[:active_support][:escape_html_entities_in_json]
53
53
  end
@@ -115,9 +115,9 @@ module Railroader
115
115
  end
116
116
  end
117
117
 
118
- #Returns true if low_version <= RAILS_VERSION <= high_version
118
+ # Returns true if low_version <= RAILS_VERSION <= high_version
119
119
  #
120
- #If the Rails version is unknown, returns false.
120
+ # If the Rails version is unknown, returns false.
121
121
  def version_between? low_version, high_version, current_version = nil
122
122
  current_version ||= rails_version
123
123
  return false unless current_version
@@ -106,8 +106,8 @@ module Railroader
106
106
  def before_filter_to_hash processor, args
107
107
  filter = {}
108
108
 
109
- #Process args for the uncommon but possible situation
110
- #in which some variables are used in the filter.
109
+ # Process args for the uncommon but possible situation
110
+ # in which some variables are used in the filter.
111
111
  args.each do |a|
112
112
  if sexp? a
113
113
  a = processor.process_default a