brakeman 4.5.1 → 5.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (597) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +347 -110
  3. data/README.md +24 -8
  4. data/bundle/load.rb +15 -13
  5. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/CHANGES.txt +0 -0
  6. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/MIT-LICENSE +0 -0
  7. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/README.txt +0 -0
  8. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/contrib/erubis +0 -0
  9. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/contrib/erubis-run.rb +0 -0
  10. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/contrib/inline-require +0 -0
  11. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/context.rb +0 -0
  12. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/converter.rb +0 -0
  13. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/engine/ec.rb +0 -0
  14. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/engine/ecpp.rb +0 -0
  15. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/engine/ejava.rb +0 -0
  16. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/engine/ejavascript.rb +0 -0
  17. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/engine/enhanced.rb +0 -0
  18. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/engine/eperl.rb +0 -0
  19. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb +0 -0
  20. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/engine/eruby.rb +0 -0
  21. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/engine/escheme.rb +0 -0
  22. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/engine/optimized.rb +0 -0
  23. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/engine.rb +0 -0
  24. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/enhancer.rb +0 -0
  25. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/error.rb +0 -0
  26. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/evaluator.rb +0 -0
  27. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/generator.rb +0 -0
  28. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/helper.rb +0 -0
  29. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/helpers/rails_form_helper.rb +0 -0
  30. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/helpers/rails_helper.rb +0 -0
  31. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/local-setting.rb +0 -0
  32. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/main.rb +0 -0
  33. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/preprocessing.rb +0 -0
  34. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/tiny.rb +0 -0
  35. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis/util.rb +0 -0
  36. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/lib/erubis.rb +0 -0
  37. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/erubis-2.7.0/setup.rb +0 -0
  38. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/CHANGELOG.md +146 -4
  39. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/FAQ.md +4 -14
  40. data/bundle/ruby/2.7.0/gems/haml-5.2.2/Gemfile +16 -0
  41. data/bundle/ruby/2.7.0/gems/haml-5.2.2/MIT-LICENSE +20 -0
  42. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/README.md +90 -47
  43. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/REFERENCE.md +160 -74
  44. data/bundle/ruby/2.7.0/gems/haml-5.2.2/TODO +24 -0
  45. data/bundle/ruby/2.7.0/gems/haml-5.2.2/haml.gemspec +45 -0
  46. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/attribute_builder.rb +219 -0
  47. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/attribute_compiler.rb +237 -0
  48. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/attribute_parser.rb +150 -0
  49. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/buffer.rb +182 -0
  50. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/compiler.rb +330 -0
  51. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/engine.rb +34 -41
  52. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/error.rb +65 -0
  53. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/escapable.rb +77 -0
  54. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/exec.rb +38 -20
  55. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/filters.rb +22 -27
  56. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/generator.rb +42 -0
  57. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/helpers/action_view_extensions.rb +4 -2
  58. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/helpers/action_view_mods.rb +45 -60
  59. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/helpers/action_view_xss_mods.rb +2 -0
  60. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/helpers/safe_erubi_template.rb +20 -0
  61. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/helpers/safe_erubis_template.rb +5 -1
  62. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/helpers/xss_mods.rb +23 -13
  63. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/helpers.rb +134 -89
  64. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/options.rb +63 -69
  65. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/parser.rb +319 -227
  66. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/plugin.rb +54 -0
  67. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/railtie.rb +53 -0
  68. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/sass_rails_filter.rb +18 -4
  69. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/template/options.rb +13 -2
  70. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml/template.rb +13 -6
  71. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/temple_engine.rb +124 -0
  72. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/temple_line_counter.rb +30 -0
  73. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/util.rb +258 -0
  74. data/bundle/ruby/2.7.0/gems/haml-5.2.2/lib/haml/version.rb +5 -0
  75. data/bundle/ruby/{2.5.0/gems/haml-4.0.7 → 2.7.0/gems/haml-5.2.2}/lib/haml.rb +2 -0
  76. data/bundle/ruby/2.7.0/gems/haml-5.2.2/yard/default/fulldoc/html/css/common.sass +15 -0
  77. data/bundle/ruby/2.7.0/gems/haml-5.2.2/yard/default/layout/html/footer.erb +12 -0
  78. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/AUTHORS +0 -0
  79. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/COPYING +0 -0
  80. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/Changelog.md +3 -0
  81. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/Gemfile +0 -0
  82. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/LICENSE +0 -0
  83. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/README.md +0 -0
  84. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/TODO +0 -0
  85. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/appveyor.yml +0 -0
  86. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/highline.gemspec +0 -0
  87. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/builtin_styles.rb +0 -0
  88. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/color_scheme.rb +0 -0
  89. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/compatibility.rb +0 -0
  90. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/custom_errors.rb +0 -0
  91. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/import.rb +0 -0
  92. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/io_console_compatible.rb +0 -0
  93. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/list.rb +0 -0
  94. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/list_renderer.rb +0 -0
  95. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/menu/item.rb +0 -0
  96. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/menu.rb +0 -0
  97. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/paginator.rb +0 -0
  98. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/question/answer_converter.rb +0 -0
  99. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/question.rb +0 -0
  100. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/question_asker.rb +0 -0
  101. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/simulate.rb +0 -0
  102. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/statement.rb +0 -0
  103. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/string.rb +0 -0
  104. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/string_extensions.rb +0 -0
  105. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/style.rb +0 -0
  106. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/template_renderer.rb +0 -0
  107. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/terminal/io_console.rb +0 -0
  108. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/terminal/ncurses.rb +0 -0
  109. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/terminal/unix_stty.rb +0 -0
  110. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/terminal.rb +0 -0
  111. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/version.rb +1 -1
  112. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline/wrapper.rb +0 -0
  113. data/bundle/ruby/{2.5.0/gems/highline-2.0.2 → 2.7.0/gems/highline-2.0.3}/lib/highline.rb +0 -0
  114. data/bundle/ruby/2.7.0/gems/parallel-1.22.1/MIT-LICENSE.txt +20 -0
  115. data/bundle/ruby/2.7.0/gems/parallel-1.22.1/lib/parallel/processor_count.rb +44 -0
  116. data/bundle/ruby/2.7.0/gems/parallel-1.22.1/lib/parallel/version.rb +4 -0
  117. data/bundle/ruby/2.7.0/gems/parallel-1.22.1/lib/parallel.rb +612 -0
  118. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/LICENSE.txt +22 -0
  119. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/NEWS.md +178 -0
  120. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/README.md +48 -0
  121. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/attlistdecl.rb +63 -0
  122. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/attribute.rb +205 -0
  123. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/cdata.rb +68 -0
  124. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/child.rb +97 -0
  125. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/comment.rb +80 -0
  126. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/doctype.rb +311 -0
  127. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/document.rb +451 -0
  128. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/dtd/attlistdecl.rb +11 -0
  129. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/dtd/dtd.rb +47 -0
  130. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/dtd/elementdecl.rb +18 -0
  131. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/dtd/entitydecl.rb +57 -0
  132. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/dtd/notationdecl.rb +40 -0
  133. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/element.rb +2599 -0
  134. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/encoding.rb +51 -0
  135. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/entity.rb +171 -0
  136. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/formatters/default.rb +116 -0
  137. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/formatters/pretty.rb +142 -0
  138. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/formatters/transitive.rb +58 -0
  139. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/functions.rb +447 -0
  140. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/instruction.rb +79 -0
  141. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/light/node.rb +188 -0
  142. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/namespace.rb +59 -0
  143. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/node.rb +76 -0
  144. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/output.rb +30 -0
  145. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/parent.rb +166 -0
  146. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/parseexception.rb +52 -0
  147. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/parsers/baseparser.rb +694 -0
  148. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/parsers/lightparser.rb +59 -0
  149. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/parsers/pullparser.rb +197 -0
  150. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/parsers/sax2parser.rb +273 -0
  151. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/parsers/streamparser.rb +61 -0
  152. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/parsers/treeparser.rb +101 -0
  153. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/parsers/ultralightparser.rb +57 -0
  154. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/parsers/xpathparser.rb +689 -0
  155. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/quickpath.rb +266 -0
  156. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/rexml.rb +37 -0
  157. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/sax2listener.rb +98 -0
  158. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/security.rb +28 -0
  159. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/source.rb +298 -0
  160. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/streamlistener.rb +93 -0
  161. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/text.rb +424 -0
  162. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/undefinednamespaceexception.rb +9 -0
  163. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/validation/relaxng.rb +539 -0
  164. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/validation/validation.rb +144 -0
  165. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/validation/validationexception.rb +10 -0
  166. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/xmldecl.rb +130 -0
  167. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/xmltokens.rb +85 -0
  168. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/xpath.rb +81 -0
  169. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml/xpath_parser.rb +974 -0
  170. data/bundle/ruby/2.7.0/gems/rexml-3.2.5/lib/rexml.rb +3 -0
  171. data/bundle/ruby/{2.5.0/gems/ruby2ruby-2.4.2 → 2.7.0/gems/ruby2ruby-2.4.4}/History.rdoc +19 -5
  172. data/bundle/ruby/{2.5.0/gems/ruby2ruby-2.4.2 → 2.7.0/gems/ruby2ruby-2.4.4}/Manifest.txt +0 -0
  173. data/bundle/ruby/{2.5.0/gems/ruby2ruby-2.4.2 → 2.7.0/gems/ruby2ruby-2.4.4}/README.rdoc +0 -0
  174. data/bundle/ruby/{2.5.0/gems/ruby2ruby-2.4.2 → 2.7.0/gems/ruby2ruby-2.4.4}/lib/ruby2ruby.rb +122 -112
  175. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/History.rdoc +232 -0
  176. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/Manifest.txt +9 -0
  177. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/README.rdoc +12 -9
  178. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/compare/normalize.rb +51 -6
  179. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/debugging.md +190 -0
  180. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/gauntlet.md +107 -0
  181. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/lib/rp_extensions.rb +15 -36
  182. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/rp_stringscanner.rb +33 -0
  183. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby20_parser.rb +10973 -0
  184. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1/lib/ruby_parser.yy → 2.7.0/gems/ruby_parser-3.19.1/lib/ruby20_parser.y} +710 -609
  185. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby21_parser.rb +10980 -0
  186. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/lib/ruby21_parser.y +718 -467
  187. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby22_parser.rb +11123 -0
  188. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1/lib/ruby24_parser.y → 2.7.0/gems/ruby_parser-3.19.1/lib/ruby22_parser.y} +723 -478
  189. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby23_parser.rb +11132 -0
  190. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1/lib/ruby26_parser.y → 2.7.0/gems/ruby_parser-3.19.1/lib/ruby23_parser.y} +722 -487
  191. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby24_parser.rb +11231 -0
  192. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby24_parser.y +2721 -0
  193. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby25_parser.rb +11231 -0
  194. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/lib/ruby25_parser.y +726 -471
  195. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby26_parser.rb +11253 -0
  196. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby26_parser.y +2736 -0
  197. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby27_parser.rb +12980 -0
  198. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby27_parser.y +3324 -0
  199. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby30_parser.rb +13242 -0
  200. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby30_parser.y +3447 -0
  201. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby31_parser.rb +13622 -0
  202. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby31_parser.y +3481 -0
  203. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby3_parser.yy +3536 -0
  204. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby_lexer.rb +1144 -0
  205. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/lib/ruby_lexer.rex +33 -27
  206. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/lib/ruby_lexer.rex.rb +65 -31
  207. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby_lexer_strings.rb +638 -0
  208. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/lib/ruby_parser.rb +33 -27
  209. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/lib/ruby_parser.yy +3465 -0
  210. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/lib/ruby_parser_extras.rb +949 -465
  211. data/bundle/ruby/{2.5.0/gems/ruby_parser-3.13.1 → 2.7.0/gems/ruby_parser-3.19.1}/tools/munge.rb +44 -11
  212. data/bundle/ruby/2.7.0/gems/ruby_parser-3.19.1/tools/ripper.rb +44 -0
  213. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/History.rdoc +0 -0
  214. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/Manifest.txt +0 -0
  215. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/README.rdoc +0 -0
  216. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby18_parser.rb +0 -0
  217. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby18_parser.y +0 -0
  218. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby19_parser.rb +0 -0
  219. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby19_parser.y +0 -0
  220. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_lexer.rb +0 -0
  221. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_lexer.rex +0 -0
  222. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_lexer.rex.rb +0 -0
  223. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_parser.rb +0 -0
  224. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy/ruby_parser_extras.rb +0 -0
  225. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/ruby_parser-legacy-1.0.0/lib/ruby_parser/legacy.rb +0 -0
  226. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/CHANGES.md +0 -0
  227. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/Gemfile +0 -0
  228. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/LICENSE.txt +0 -0
  229. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/README.md +0 -0
  230. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/bundle_install_all_ruby_versions.sh +0 -0
  231. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/deep.rb +0 -0
  232. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/libyaml_checker.rb +0 -0
  233. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/load.rb +0 -0
  234. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/parse/date.rb +0 -0
  235. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/parse/hexadecimal.rb +0 -0
  236. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/parse/sexagesimal.rb +0 -0
  237. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/psych_handler.rb +0 -0
  238. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/psych_resolver.rb +0 -0
  239. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/resolver.rb +0 -0
  240. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/safe_to_ruby_visitor.rb +0 -0
  241. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/store.rb +0 -0
  242. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/syck_hack.rb +0 -0
  243. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/syck_node_monkeypatch.rb +0 -0
  244. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/syck_resolver.rb +0 -0
  245. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_boolean.rb +0 -0
  246. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_date.rb +0 -0
  247. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_float.rb +0 -0
  248. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_integer.rb +0 -0
  249. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_nil.rb +0 -0
  250. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/to_symbol.rb +0 -0
  251. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/transform/transformation_map.rb +0 -0
  252. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/transform.rb +0 -0
  253. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml/version.rb +0 -0
  254. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/lib/safe_yaml.rb +0 -0
  255. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/run_specs_all_ruby_versions.sh +0 -0
  256. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/safe_yaml-1.0.5/safe_yaml.gemspec +0 -0
  257. data/bundle/ruby/{2.5.0/gems/sexp_processor-4.12.0 → 2.7.0/gems/sexp_processor-4.16.1}/History.rdoc +86 -0
  258. data/bundle/ruby/{2.5.0/gems/sexp_processor-4.12.0 → 2.7.0/gems/sexp_processor-4.16.1}/Manifest.txt +1 -0
  259. data/bundle/ruby/{2.5.0/gems/sexp_processor-4.12.0 → 2.7.0/gems/sexp_processor-4.16.1}/README.rdoc +0 -0
  260. data/bundle/ruby/{2.5.0/gems/sexp_processor-4.12.0 → 2.7.0/gems/sexp_processor-4.16.1}/lib/composite_sexp_processor.rb +0 -0
  261. data/bundle/ruby/{2.5.0/gems/sexp_processor-4.12.0 → 2.7.0/gems/sexp_processor-4.16.1}/lib/pt_testcase.rb +27 -20
  262. data/bundle/ruby/2.7.0/gems/sexp_processor-4.16.1/lib/sexp.rb +391 -0
  263. data/bundle/ruby/{2.5.0/gems/sexp_processor-4.12.0/lib/sexp.rb → 2.7.0/gems/sexp_processor-4.16.1/lib/sexp_matcher.rb} +67 -387
  264. data/bundle/ruby/{2.5.0/gems/sexp_processor-4.12.0 → 2.7.0/gems/sexp_processor-4.16.1}/lib/sexp_processor.rb +2 -2
  265. data/bundle/ruby/{2.5.0/gems/sexp_processor-4.12.0 → 2.7.0/gems/sexp_processor-4.16.1}/lib/strict_sexp.rb +25 -3
  266. data/bundle/ruby/{2.5.0/gems/sexp_processor-4.12.0 → 2.7.0/gems/sexp_processor-4.16.1}/lib/unique.rb +0 -0
  267. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/CHANGES +4 -0
  268. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/Gemfile +12 -13
  269. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/LICENSE +0 -0
  270. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/README.jp.md +0 -0
  271. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/README.md +0 -0
  272. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/code_attributes.rb +0 -0
  273. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/command.rb +13 -13
  274. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/controls.rb +0 -0
  275. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/do_inserter.rb +0 -0
  276. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/embedded.rb +0 -0
  277. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/end_inserter.rb +0 -0
  278. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/engine.rb +0 -0
  279. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/erb_converter.rb +0 -0
  280. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/filter.rb +0 -0
  281. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/grammar.rb +0 -0
  282. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/include.rb +0 -0
  283. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/interpolation.rb +0 -0
  284. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/logic_less/context.rb +0 -0
  285. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/logic_less/filter.rb +0 -0
  286. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/logic_less.rb +0 -0
  287. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/parser.rb +1 -1
  288. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/smart/escaper.rb +0 -0
  289. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/smart/filter.rb +0 -0
  290. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/smart/parser.rb +0 -0
  291. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/smart.rb +0 -0
  292. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/splat/builder.rb +0 -0
  293. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/splat/filter.rb +0 -0
  294. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/template.rb +0 -0
  295. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/translator.rb +0 -0
  296. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim/version.rb +1 -1
  297. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/lib/slim.rb +0 -0
  298. data/bundle/ruby/{2.5.0/gems/slim-4.0.1 → 2.7.0/gems/slim-4.1.0}/slim.gemspec +0 -0
  299. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/CHANGES +5 -0
  300. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/EXPRESSIONS.md +0 -0
  301. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/Gemfile +0 -0
  302. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/LICENSE +0 -0
  303. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/README.md +1 -1
  304. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/engine.rb +0 -0
  305. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/erb/engine.rb +0 -0
  306. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/erb/parser.rb +0 -0
  307. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/erb/template.rb +0 -0
  308. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/erb/trimming.rb +0 -0
  309. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/exceptions.rb +0 -0
  310. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filter.rb +0 -0
  311. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/code_merger.rb +0 -0
  312. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/control_flow.rb +0 -0
  313. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/dynamic_inliner.rb +0 -0
  314. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/encoding.rb +0 -0
  315. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/eraser.rb +0 -0
  316. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/escapable.rb +0 -0
  317. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/multi_flattener.rb +0 -0
  318. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/remove_bom.rb +0 -0
  319. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/static_analyzer.rb +0 -0
  320. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/static_merger.rb +0 -0
  321. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/string_splitter.rb +1 -1
  322. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/filters/validator.rb +0 -0
  323. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/generator.rb +0 -0
  324. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/generators/array.rb +0 -0
  325. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/generators/array_buffer.rb +0 -0
  326. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/generators/erb.rb +0 -0
  327. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/generators/rails_output_buffer.rb +0 -0
  328. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/generators/string_buffer.rb +0 -0
  329. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/grammar.rb +0 -0
  330. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/html/attribute_merger.rb +0 -0
  331. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/html/attribute_remover.rb +0 -0
  332. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/html/attribute_sorter.rb +0 -0
  333. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/html/dispatcher.rb +0 -0
  334. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/html/fast.rb +0 -0
  335. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/html/filter.rb +0 -0
  336. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/html/pretty.rb +0 -0
  337. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/html/safe.rb +0 -0
  338. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/map.rb +0 -0
  339. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/mixins/dispatcher.rb +0 -0
  340. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/mixins/engine_dsl.rb +0 -0
  341. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/mixins/grammar_dsl.rb +0 -0
  342. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/mixins/options.rb +0 -0
  343. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/mixins/template.rb +0 -0
  344. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/parser.rb +0 -0
  345. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/static_analyzer.rb +1 -1
  346. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/templates/rails.rb +0 -0
  347. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/templates/tilt.rb +0 -0
  348. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/templates.rb +0 -0
  349. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple/utils.rb +0 -0
  350. data/bundle/ruby/2.7.0/gems/temple-0.8.2/lib/temple/version.rb +3 -0
  351. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/lib/temple.rb +0 -0
  352. data/bundle/ruby/{2.5.0/gems/temple-0.8.1 → 2.7.0/gems/temple-0.8.2}/temple.gemspec +0 -0
  353. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/Gemfile +0 -0
  354. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/History.rdoc +0 -0
  355. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/LICENSE.txt +0 -0
  356. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/Manifest +0 -0
  357. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/README.rdoc +0 -0
  358. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/Todo.rdoc +0 -0
  359. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/lib/terminal-table/cell.rb +0 -0
  360. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/lib/terminal-table/import.rb +0 -0
  361. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/lib/terminal-table/row.rb +0 -0
  362. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/lib/terminal-table/separator.rb +0 -0
  363. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/lib/terminal-table/style.rb +0 -0
  364. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/lib/terminal-table/table.rb +0 -0
  365. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/lib/terminal-table/table_helper.rb +0 -0
  366. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/lib/terminal-table/version.rb +0 -0
  367. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/lib/terminal-table.rb +0 -0
  368. data/bundle/ruby/{2.5.0 → 2.7.0}/gems/terminal-table-1.8.0/terminal-table.gemspec +0 -0
  369. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/COPYING +0 -0
  370. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/asciidoc.rb +0 -0
  371. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/babel.rb +0 -0
  372. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/bluecloth.rb +0 -0
  373. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/builder.rb +0 -0
  374. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/coffee.rb +0 -0
  375. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/commonmarker.rb +11 -1
  376. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/creole.rb +0 -0
  377. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/csv.rb +1 -1
  378. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/dummy.rb +0 -0
  379. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/erb.rb +0 -0
  380. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/erubi.rb +0 -0
  381. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/erubis.rb +0 -0
  382. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/etanni.rb +0 -0
  383. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/haml.rb +0 -0
  384. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/kramdown.rb +0 -0
  385. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/less.rb +0 -0
  386. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/liquid.rb +0 -0
  387. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/livescript.rb +0 -0
  388. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/mapping.rb +0 -0
  389. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/markaby.rb +0 -0
  390. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/maruku.rb +0 -0
  391. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/nokogiri.rb +0 -0
  392. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/pandoc.rb +23 -15
  393. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/plain.rb +0 -0
  394. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/prawn.rb +0 -0
  395. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/radius.rb +0 -0
  396. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/rdiscount.rb +0 -0
  397. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/rdoc.rb +0 -0
  398. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/redcarpet.rb +5 -2
  399. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/redcloth.rb +0 -0
  400. data/bundle/ruby/2.7.0/gems/tilt-2.0.11/lib/tilt/rst-pandoc.rb +23 -0
  401. data/bundle/ruby/2.7.0/gems/tilt-2.0.11/lib/tilt/sass.rb +78 -0
  402. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/sigil.rb +0 -0
  403. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/string.rb +0 -0
  404. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/template.rb +18 -12
  405. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/typescript.rb +0 -0
  406. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/wikicloth.rb +0 -0
  407. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt/yajl.rb +0 -0
  408. data/bundle/ruby/{2.5.0/gems/tilt-2.0.9 → 2.7.0/gems/tilt-2.0.11}/lib/tilt.rb +2 -1
  409. data/bundle/ruby/{2.5.0/gems/unicode-display_width-1.6.0 → 2.7.0/gems/unicode-display_width-1.8.0}/CHANGELOG.md +12 -0
  410. data/bundle/ruby/{2.5.0/gems/unicode-display_width-1.6.0 → 2.7.0/gems/unicode-display_width-1.8.0}/MIT-LICENSE.txt +1 -1
  411. data/bundle/ruby/{2.5.0/gems/unicode-display_width-1.6.0 → 2.7.0/gems/unicode-display_width-1.8.0}/README.md +3 -3
  412. data/bundle/ruby/2.7.0/gems/unicode-display_width-1.8.0/data/display_width.marshal.gz +0 -0
  413. data/bundle/ruby/{2.5.0/gems/unicode-display_width-1.6.0 → 2.7.0/gems/unicode-display_width-1.8.0}/lib/unicode/display_width/constants.rb +2 -2
  414. data/bundle/ruby/{2.5.0/gems/unicode-display_width-1.6.0 → 2.7.0/gems/unicode-display_width-1.8.0}/lib/unicode/display_width/index.rb +0 -0
  415. data/bundle/ruby/{2.5.0/gems/unicode-display_width-1.6.0 → 2.7.0/gems/unicode-display_width-1.8.0}/lib/unicode/display_width/no_string_ext.rb +0 -0
  416. data/bundle/ruby/{2.5.0/gems/unicode-display_width-1.6.0 → 2.7.0/gems/unicode-display_width-1.8.0}/lib/unicode/display_width/string_ext.rb +0 -0
  417. data/bundle/ruby/{2.5.0/gems/unicode-display_width-1.6.0 → 2.7.0/gems/unicode-display_width-1.8.0}/lib/unicode/display_width.rb +1 -1
  418. data/lib/brakeman/app_tree.rb +45 -4
  419. data/lib/brakeman/call_index.rb +54 -15
  420. data/lib/brakeman/checks/base_check.rb +79 -57
  421. data/lib/brakeman/checks/check_basic_auth.rb +6 -2
  422. data/lib/brakeman/checks/check_basic_auth_timing_attack.rb +2 -1
  423. data/lib/brakeman/checks/check_content_tag.rb +9 -6
  424. data/lib/brakeman/checks/check_cookie_serialization.rb +23 -0
  425. data/lib/brakeman/checks/check_create_with.rb +4 -2
  426. data/lib/brakeman/checks/check_cross_site_scripting.rb +10 -7
  427. data/lib/brakeman/checks/check_csrf_token_forgery_cve.rb +29 -0
  428. data/lib/brakeman/checks/check_default_routes.rb +6 -3
  429. data/lib/brakeman/checks/check_deserialize.rb +26 -8
  430. data/lib/brakeman/checks/check_detailed_exceptions.rb +5 -3
  431. data/lib/brakeman/checks/check_digest_dos.rb +2 -1
  432. data/lib/brakeman/checks/check_divide_by_zero.rb +2 -1
  433. data/lib/brakeman/checks/check_dynamic_finders.rb +2 -1
  434. data/lib/brakeman/checks/check_eol_rails.rb +23 -0
  435. data/lib/brakeman/checks/check_eol_ruby.rb +26 -0
  436. data/lib/brakeman/checks/check_escape_function.rb +2 -1
  437. data/lib/brakeman/checks/check_evaluation.rb +3 -2
  438. data/lib/brakeman/checks/check_execute.rb +82 -8
  439. data/lib/brakeman/checks/check_file_access.rb +9 -2
  440. data/lib/brakeman/checks/check_file_disclosure.rb +2 -1
  441. data/lib/brakeman/checks/check_filter_skipping.rb +2 -1
  442. data/lib/brakeman/checks/check_force_ssl.rb +2 -1
  443. data/lib/brakeman/checks/check_forgery_setting.rb +4 -2
  444. data/lib/brakeman/checks/check_header_dos.rb +4 -3
  445. data/lib/brakeman/checks/check_i18n_xss.rb +4 -3
  446. data/lib/brakeman/checks/check_jruby_xml.rb +4 -3
  447. data/lib/brakeman/checks/check_json_encoding.rb +2 -1
  448. data/lib/brakeman/checks/check_json_entity_escape.rb +40 -0
  449. data/lib/brakeman/checks/check_json_parsing.rb +7 -5
  450. data/lib/brakeman/checks/check_link_to.rb +3 -2
  451. data/lib/brakeman/checks/check_link_to_href.rb +5 -5
  452. data/lib/brakeman/checks/check_mail_to.rb +2 -1
  453. data/lib/brakeman/checks/check_mass_assignment.rb +43 -12
  454. data/lib/brakeman/checks/check_mime_type_dos.rb +4 -3
  455. data/lib/brakeman/checks/check_model_attr_accessible.rb +3 -2
  456. data/lib/brakeman/checks/check_model_attributes.rb +5 -3
  457. data/lib/brakeman/checks/check_model_serialize.rb +2 -1
  458. data/lib/brakeman/checks/check_nested_attributes.rb +2 -1
  459. data/lib/brakeman/checks/check_nested_attributes_bypass.rb +3 -2
  460. data/lib/brakeman/checks/check_number_to_currency.rb +4 -2
  461. data/lib/brakeman/checks/check_page_caching_cve.rb +38 -0
  462. data/lib/brakeman/checks/check_pathname.rb +48 -0
  463. data/lib/brakeman/checks/check_permit_attributes.rb +3 -2
  464. data/lib/brakeman/checks/check_quote_table_name.rb +2 -1
  465. data/lib/brakeman/checks/check_redirect.rb +7 -2
  466. data/lib/brakeman/checks/check_regex_dos.rb +3 -2
  467. data/lib/brakeman/checks/check_render.rb +19 -3
  468. data/lib/brakeman/checks/check_render_dos.rb +2 -1
  469. data/lib/brakeman/checks/check_render_inline.rb +4 -2
  470. data/lib/brakeman/checks/check_response_splitting.rb +2 -1
  471. data/lib/brakeman/checks/check_reverse_tabnabbing.rb +59 -0
  472. data/lib/brakeman/checks/check_route_dos.rb +2 -1
  473. data/lib/brakeman/checks/check_safe_buffer_manipulation.rb +2 -1
  474. data/lib/brakeman/checks/check_sanitize_config_cve.rb +120 -0
  475. data/lib/brakeman/checks/check_sanitize_methods.rb +9 -5
  476. data/lib/brakeman/checks/check_secrets.rb +2 -1
  477. data/lib/brakeman/checks/check_select_tag.rb +2 -1
  478. data/lib/brakeman/checks/check_select_vulnerability.rb +2 -1
  479. data/lib/brakeman/checks/check_send.rb +2 -1
  480. data/lib/brakeman/checks/check_session_manipulation.rb +2 -1
  481. data/lib/brakeman/checks/check_session_settings.rb +11 -5
  482. data/lib/brakeman/checks/check_simple_format.rb +4 -2
  483. data/lib/brakeman/checks/check_single_quotes.rb +2 -1
  484. data/lib/brakeman/checks/check_skip_before_filter.rb +8 -6
  485. data/lib/brakeman/checks/check_sprockets_path_traversal.rb +2 -1
  486. data/lib/brakeman/checks/check_sql.rb +88 -43
  487. data/lib/brakeman/checks/check_sql_cves.rb +4 -2
  488. data/lib/brakeman/checks/check_ssl_verify.rb +2 -1
  489. data/lib/brakeman/checks/check_strip_tags.rb +6 -3
  490. data/lib/brakeman/checks/check_symbol_dos.rb +3 -2
  491. data/lib/brakeman/checks/check_symbol_dos_cve.rb +2 -1
  492. data/lib/brakeman/checks/check_template_injection.rb +33 -0
  493. data/lib/brakeman/checks/check_translate_bug.rb +2 -1
  494. data/lib/brakeman/checks/check_unsafe_reflection.rb +9 -3
  495. data/lib/brakeman/checks/check_unsafe_reflection_methods.rb +69 -0
  496. data/lib/brakeman/checks/check_unscoped_find.rb +2 -1
  497. data/lib/brakeman/checks/check_validation_regex.rb +2 -1
  498. data/lib/brakeman/checks/check_verb_confusion.rb +76 -0
  499. data/lib/brakeman/checks/check_weak_hash.rb +6 -3
  500. data/lib/brakeman/checks/check_weak_rsa_key.rb +112 -0
  501. data/lib/brakeman/checks/check_without_protection.rb +2 -1
  502. data/lib/brakeman/checks/check_xml_dos.rb +4 -3
  503. data/lib/brakeman/checks/check_yaml_parsing.rb +14 -20
  504. data/lib/brakeman/checks/eol_check.rb +49 -0
  505. data/lib/brakeman/commandline.rb +25 -1
  506. data/lib/brakeman/differ.rb +16 -33
  507. data/lib/brakeman/file_parser.rb +60 -28
  508. data/lib/brakeman/file_path.rb +14 -0
  509. data/lib/brakeman/options.rb +39 -2
  510. data/lib/brakeman/parsers/haml_embedded.rb +1 -1
  511. data/lib/brakeman/parsers/template_parser.rb +29 -4
  512. data/lib/brakeman/processor.rb +2 -2
  513. data/lib/brakeman/processors/alias_processor.rb +216 -32
  514. data/lib/brakeman/processors/base_processor.rb +6 -4
  515. data/lib/brakeman/processors/controller_alias_processor.rb +6 -43
  516. data/lib/brakeman/processors/controller_processor.rb +5 -5
  517. data/lib/brakeman/processors/gem_processor.rb +13 -2
  518. data/lib/brakeman/processors/haml_template_processor.rb +103 -123
  519. data/lib/brakeman/processors/lib/call_conversion_helper.rb +18 -11
  520. data/lib/brakeman/processors/lib/file_type_detector.rb +64 -0
  521. data/lib/brakeman/processors/lib/find_all_calls.rb +58 -18
  522. data/lib/brakeman/processors/lib/find_call.rb +3 -64
  523. data/lib/brakeman/processors/lib/rails2_config_processor.rb +1 -1
  524. data/lib/brakeman/processors/lib/rails3_config_processor.rb +16 -16
  525. data/lib/brakeman/processors/lib/rails3_route_processor.rb +2 -0
  526. data/lib/brakeman/processors/lib/rails4_config_processor.rb +2 -1
  527. data/lib/brakeman/processors/lib/render_helper.rb +3 -1
  528. data/lib/brakeman/processors/library_processor.rb +9 -0
  529. data/lib/brakeman/processors/model_processor.rb +32 -0
  530. data/lib/brakeman/processors/output_processor.rb +1 -1
  531. data/lib/brakeman/processors/template_alias_processor.rb +33 -0
  532. data/lib/brakeman/processors/template_processor.rb +10 -6
  533. data/lib/brakeman/report/ignore/config.rb +10 -2
  534. data/lib/brakeman/report/ignore/interactive.rb +3 -3
  535. data/lib/brakeman/report/report_base.rb +0 -2
  536. data/lib/brakeman/report/report_codeclimate.rb +1 -1
  537. data/lib/brakeman/report/report_csv.rb +39 -60
  538. data/lib/brakeman/report/report_github.rb +31 -0
  539. data/lib/brakeman/report/report_junit.rb +104 -0
  540. data/lib/brakeman/report/report_markdown.rb +0 -1
  541. data/lib/brakeman/report/report_sarif.rb +133 -0
  542. data/lib/brakeman/report/report_sonar.rb +38 -0
  543. data/lib/brakeman/report/report_table.rb +5 -5
  544. data/lib/brakeman/report/report_tabs.rb +1 -1
  545. data/lib/brakeman/report/report_text.rb +43 -21
  546. data/lib/brakeman/report/templates/controller_warnings.html.erb +2 -0
  547. data/lib/brakeman/report/templates/ignored_warnings.html.erb +2 -0
  548. data/lib/brakeman/report/templates/model_warnings.html.erb +2 -0
  549. data/lib/brakeman/report/templates/security_warnings.html.erb +2 -0
  550. data/lib/brakeman/report/templates/view_warnings.html.erb +2 -0
  551. data/lib/brakeman/report.rb +22 -1
  552. data/lib/brakeman/rescanner.rb +11 -5
  553. data/lib/brakeman/scanner.rb +65 -31
  554. data/lib/brakeman/tracker/collection.rb +57 -7
  555. data/lib/brakeman/tracker/config.rb +116 -66
  556. data/lib/brakeman/tracker/constants.rb +10 -8
  557. data/lib/brakeman/tracker/controller.rb +1 -1
  558. data/lib/brakeman/tracker/method_info.rb +70 -0
  559. data/lib/brakeman/tracker.rb +68 -7
  560. data/lib/brakeman/util.rb +63 -24
  561. data/lib/brakeman/version.rb +1 -1
  562. data/lib/brakeman/warning.rb +18 -3
  563. data/lib/brakeman/warning_codes.rb +21 -0
  564. data/lib/brakeman.rb +49 -6
  565. data/lib/ruby_parser/bm_sexp.rb +40 -11
  566. metadata +445 -344
  567. data/bundle/ruby/2.5.0/gems/haml-4.0.7/MIT-LICENSE +0 -20
  568. data/bundle/ruby/2.5.0/gems/haml-4.0.7/lib/haml/buffer.rb +0 -345
  569. data/bundle/ruby/2.5.0/gems/haml-4.0.7/lib/haml/compiler.rb +0 -540
  570. data/bundle/ruby/2.5.0/gems/haml-4.0.7/lib/haml/error.rb +0 -61
  571. data/bundle/ruby/2.5.0/gems/haml-4.0.7/lib/haml/railtie.rb +0 -22
  572. data/bundle/ruby/2.5.0/gems/haml-4.0.7/lib/haml/template/plugin.rb +0 -41
  573. data/bundle/ruby/2.5.0/gems/haml-4.0.7/lib/haml/util.rb +0 -377
  574. data/bundle/ruby/2.5.0/gems/haml-4.0.7/lib/haml/version.rb +0 -3
  575. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/debugging.md +0 -18
  576. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/rp_stringscanner.rb +0 -64
  577. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/ruby20_parser.rb +0 -6869
  578. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/ruby20_parser.y +0 -2431
  579. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/ruby21_parser.rb +0 -6944
  580. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/ruby22_parser.rb +0 -6968
  581. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/ruby22_parser.y +0 -2458
  582. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/ruby23_parser.rb +0 -6987
  583. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/ruby23_parser.y +0 -2460
  584. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/ruby24_parser.rb +0 -6994
  585. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/ruby25_parser.rb +0 -6994
  586. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/ruby26_parser.rb +0 -7012
  587. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/lib/ruby_lexer.rb +0 -1449
  588. data/bundle/ruby/2.5.0/gems/ruby_parser-3.13.1/tools/ripper.rb +0 -28
  589. data/bundle/ruby/2.5.0/gems/temple-0.8.1/lib/temple/version.rb +0 -3
  590. data/bundle/ruby/2.5.0/gems/tilt-2.0.9/CHANGELOG.md +0 -132
  591. data/bundle/ruby/2.5.0/gems/tilt-2.0.9/Gemfile +0 -70
  592. data/bundle/ruby/2.5.0/gems/tilt-2.0.9/HACKING +0 -16
  593. data/bundle/ruby/2.5.0/gems/tilt-2.0.9/README.md +0 -233
  594. data/bundle/ruby/2.5.0/gems/tilt-2.0.9/lib/tilt/rst-pandoc.rb +0 -18
  595. data/bundle/ruby/2.5.0/gems/tilt-2.0.9/lib/tilt/sass.rb +0 -52
  596. data/bundle/ruby/2.5.0/gems/tilt-2.0.9/tilt.gemspec +0 -130
  597. data/bundle/ruby/2.5.0/gems/unicode-display_width-1.6.0/data/display_width.marshal.gz +0 -0
data/CHANGES.md CHANGED
@@ -1,4 +1,241 @@
1
- # 4.5.1
1
+ # 5.4.0 - 2022-11-17
2
+
3
+ * Use relative paths for CodeClimate report format (Mike Poage)
4
+ * Add check for weak RSA key sizes and padding modes
5
+ * Handle multiple values and splats in case/when
6
+ * Ignore more model methods in redirects
7
+ * Add check for absolute paths issue with Pathname
8
+ * Fix `load_rails_defaults` overwriting settings in the Rails application (James Gregory-Monk)
9
+
10
+ # 5.3.1 - 2022-08-09
11
+
12
+ * Fix version range for CVE-2022-32209
13
+
14
+ # 5.3.0 - 2022-08-09
15
+
16
+ * Include explicit engine or lib paths in vendor/ (Joe Rafaniello)
17
+ * Load rexml as a Brakeman dependency
18
+ * Fix "full call" information propagating unnecessarily
19
+ * Add check for CVE-2022-32209
20
+ * Add CWE information to warnings (Stephen Aghaulor)
21
+
22
+ # 5.2.3 - 2022-05-01
23
+
24
+ * Fix error with hash shorthand syntax
25
+ * Match order of interactive options with help message (Rory O'Kane)
26
+
27
+ # 5.2.2 - 2022-04-06
28
+
29
+ * Update `ruby_parser` for Ruby 3.1 support (Merek Skubela)
30
+ * Handle `nil` when joining values (Dan Buettner)
31
+ * Update message for unsafe reflection (Pedro Baracho)
32
+ * Add additional String methods for SQL injection check
33
+ * Respect equality in `if` conditions
34
+
35
+ # 5.2.1 - 2022-01-30
36
+
37
+ * Add warning codes for EOL software warnings
38
+
39
+ # 5.2.0 - 2021-12-15
40
+
41
+ * Initial Rails 7 support
42
+ * Require Ruby 2.5.0+
43
+ * Fix issue with calls to `foo.root` in routes
44
+ * Ignore `I18n.locale` in SQL queries
45
+ * Do not treat `sanitize_sql_like` as safe
46
+ * Add new checks for unsupported Ruby and Rails versions
47
+
48
+ # 5.1.2 - 2021-10-28
49
+
50
+ * Handle cases where enums are not symbols
51
+ * Support newer Haml with ::Haml::AttributeBuilder.build
52
+ * Fix issue where the previous output is still visible (Jason Frey)
53
+ * Fix warning sorting with nil line numbers
54
+ * Update for latest RubyParser (Ryan Davis)
55
+
56
+ # 5.1.1 - 2021-07-19
57
+
58
+ * Unrefactor IgnoreConfig's use of `Brakeman::FilePath`
59
+
60
+ # 5.1.0 - 2021-07-19
61
+
62
+ * Initial support for ActiveRecord enums
63
+ * Support `Hash#include?`
64
+ * Interprocedural dataflow from very simple class methods
65
+ * Fix SARIF report when checks have no description (Eli Block)
66
+ * Add ignored warnings to SARIF report (Eli Block)
67
+ * Add `--sql-safe-methods` option (Esty Scheiner)
68
+ * Update SQL injection check for Rails 6.0/6.1
69
+ * Fix false positive in command injection with `Open3.capture` (Richard Fitzgerald)
70
+ * Fix infinite loop on mixin self-includes (Andrew Szczepanski)
71
+ * Ignore dates in SQL
72
+ * Refactor `cookie?`/`param?` methods (Keenan Brock)
73
+ * Ignore renderables in dynamic render path check (Brad Parker)
74
+ * Support `Array#push`
75
+ * Better `Array#join` support
76
+ * Adjust copy of `--interactive` menu (Elia Schito)
77
+ * Support `Array#*`
78
+ * Better method definition tracking and lookup
79
+ * Support `Hash#values` and `Hash#values_at`
80
+ * Check for user-controlled evaluation even if it's a call target
81
+ * Support `Array#fetch` and `Hash#fetch`
82
+ * Ignore `sanitize_sql_like` in SQL
83
+ * Ignore method calls on numbers in SQL
84
+ * Add GitHub Actions format (Klaus Badelt)
85
+ * Read and parse files in parallel
86
+
87
+ # 5.0.4 - 2021-06-08
88
+
89
+ (brakeman gem release only)
90
+
91
+ * Update bundled `ruby_parser` to include argument forwarding support
92
+
93
+ # 5.0.2 - 2021-06-07
94
+
95
+ * Fix Loofah version check
96
+
97
+ # 5.0.1 - 2021-04-27
98
+
99
+ * Detect `::Rails.application.configure` too
100
+ * Set more line numbers on Sexps
101
+ * Support loading `slim/smart`
102
+ * Don't fail if $HOME/$USER are not defined
103
+ * Always ignore slice/only calls for mass assignment
104
+ * Convert splat array arguments to arguments
105
+
106
+ # 5.0.0 - 2021-01-26
107
+
108
+ * Ignore `uuid` as a safe attribute
109
+ * Collapse `__send__` calls
110
+ * Ignore `Tempfile#path` in shell commands
111
+ * Ignore development environment
112
+ * Revamp CSV report to a CSV list of warnings
113
+ * Set Rails configuration defaults based on `load_defaults` version
114
+ * Add check for (more) unsafe method reflection
115
+ * Suggest using `--force` if no Rails application is detected
116
+ * Add Sonarqube report format (Adam England)
117
+ * Add check for potential HTTP verb confusion
118
+ * Add `--[no-]skip-vendor` option
119
+ * Scan (almost) all Ruby files in project
120
+
121
+ # 4.10.1 - 2020-12-24
122
+
123
+ * Declare REXML as a dependency (Ruby 3.0 compatibility)
124
+ * Use `Sexp#sexp_body` instead of `Sexp#[..]` (Ruby 3.0 compatibility)
125
+ * Prevent render loops when template names are absolute paths
126
+ * Ensure RubyParser is passed file path as a String
127
+ * Support new Haml 5.2.0 escaping method
128
+
129
+ # 5.0.0.pre1 - 2020-11-17
130
+
131
+ * Add check for (more) unsafe method reflection
132
+ * Suggest using `--force` if no Rails application is detected
133
+ * Add Sonarqube report format (Adam England)
134
+ * Add check for potential HTTP verb confusion
135
+ * Add `--[no-]skip-vendor` option
136
+ * Scan (almost) all Ruby files in project
137
+ * Add support for Haml 5.2.0
138
+
139
+ # 4.10.0 - 2020-09-28
140
+
141
+ * Add SARIF report format (Steve Winton)
142
+
143
+ # 4.9.1 - 2020-09-04
144
+
145
+ * Check `chomp`ed strings for SQL injection
146
+ * Use version from `active_record` for non-Rails apps (Ulysse Buonomo)
147
+ * Always set line number for joined arrays
148
+ * Avoid warning about missing `attr_accessible` if `protected_attributes` gem is used
149
+
150
+ # 4.9.0 - 2020-08-04
151
+
152
+ * Add check for CVE-2020-8166 (Jamie Finnigan)
153
+ * Avoid warning when `safe_yaml` is used via `YAML.load(..., safe: true)`
154
+ * Add check for user input in `ERB.new` (Matt Hickman)
155
+ * Add `--ensure-ignore-notes` (Eli Block)
156
+ * Remove whitelist/blacklist language, add clarifications
157
+ * Do not warn about mass assignment with `params.permit!.slice`
158
+ * Add "full call" information to call index results
159
+ * Ignore `params.permit!` in path helpers
160
+ * Treat `Dir.glob` as safe source of values in guards
161
+ * Always scan `environment.rb`
162
+
163
+ # 4.8.2 - 2020-05-12
164
+
165
+ * Add check for CVE-2020-8159
166
+ * Fix `authenticate_or_request_with_http_basic` check for passed blocks (Hugo Corbucci)
167
+ * Add `--text-fields` option
168
+ * Add check for escaping HTML entities in JSON configuration
169
+
170
+ # 4.8.1 - 2020-04-06
171
+
172
+ * Check SQL query strings using `String#strip` or `String.squish`
173
+ * Handle non-symbol keys in locals hash for render()
174
+ * Warn about global(!) mass assignment
175
+ * Index calls in render arguments
176
+
177
+ # 4.8.0 - 2020-02-18
178
+
179
+ * Add JUnit-XML report format (Naoki Kimura)
180
+ * Sort ignore files by fingerprint and line (Ngan Pham)
181
+ * Freeze call index results
182
+ * Fix output test when using newer Minitest
183
+ * Properly render confidence in Markdown report
184
+ * Report old warnings as fixed if zero warnings reported
185
+ * Catch dangerous concatenation in `CheckExecute` (Jacob Evelyn)
186
+ * Show user-friendly message when ignore config file has invalid JSON (D. Hicks)
187
+ * Initialize Rails version with `nil` (Carsten Wirth)
188
+
189
+ # 4.7.2 - 2019-11-25
190
+
191
+ * Remove version guard for `named_scope` vs. `scope`
192
+ * Find SQL injection in `String#strip_heredoc` target
193
+ * Handle more `permit!` cases
194
+ * Ensure file name is set when processing model
195
+ * Add `request.params` as query parameters
196
+
197
+ # 4.7.1 - 2019-10-29
198
+
199
+ * Check string length against limit before joining
200
+ * Fix errors from frozen `Symbol#to_s` in Ruby 2.7
201
+ * Fix flaky rails4 test (Adam Kiczula)
202
+ * Added release dates to each version in CHANGES (TheSpartan1980)
203
+ * Catch reverse tabnabbing with `:_blank` symbol (Jacob Evelyn)
204
+ * Convert `s(:lambda)` to `s(:call)` in `Sexp#block_call`
205
+ * Sort text report by file and line (Jacob Evelyn)
206
+
207
+ # 4.7.0 - 2019-10-16
208
+
209
+ * Refactor `Brakeman::Differ#second_pass` (Benoit Côté-Jodoin)
210
+ * Ignore interpolation in `%W[]`
211
+ * Fix `version_between?` (Andrey Glushkov)
212
+ * Add support for `ruby_parser` 3.14.0
213
+ * Ignore `form_for` for XSS check
214
+ * Update Haml support to Haml 5.x
215
+ * Catch shell injection from `-c` shell commands (Jacob Evelyn)
216
+ * Correctly handle non-symbols in `CheckCookieSerialization` (Phil Turnbull)
217
+
218
+ # 4.6.1 - 2019-07-24
219
+
220
+ * Fix Reverse Tabnabbing warning message (Steffen Schildknecht / Jörg Schiller)
221
+
222
+ # 4.6.0 - 2019-07-23
223
+
224
+ * Skip calls to `dup`
225
+ * Add reverse tabnabbing check (Linos Giannopoulos)
226
+ * Better handling of gems with no version declared
227
+ * Warn people that Haml 5 is not fully supported (Jared Beck)
228
+ * Avoid warning about file access with `ActiveStorage::Filename#sanitized` (Tejas Bubane)
229
+ * Update loofah version for fixing CVE-2018-8048 (Markus Nölle)
230
+ * Restore `Warning#relative_path`
231
+ * Add check for cookie serialization with Marshal
232
+ * Index calls in initializers
233
+ * Improve template output handling in conditional branches
234
+ * Avoid assigning `nil` line numbers to `Sexp`s
235
+ * Add special warning code for custom checks
236
+ * Add call matching by regular expression
237
+
238
+ # 4.5.1 - 2019-05-11
2
239
 
3
240
  * Add `Brakeman::FilePath` to represent file paths
4
241
  * Handle trailing comma in block args
@@ -13,7 +250,7 @@
13
250
  * Add initial Rails 6 support
14
251
  * Add SQL injection checks for `destroy_by`/`delete_by`
15
252
 
16
- # 4.5.0
253
+ # 4.5.0 - 2019-03-16
17
254
 
18
255
  * Update `ruby_parser`, use `ruby_parser-legacy`
19
256
  * More thoroughly handle `Shellwords` escaping
@@ -30,7 +267,7 @@
30
267
  * Better handling of splat/kwsplat arguments
31
268
  * Improve "user input" reported for SQL injection
32
269
 
33
- # 4.4.0
270
+ # 4.4.0 - 2019-01-17
34
271
 
35
272
  * Set default encoding to UTF-8
36
273
  * Update to Slim 4.0.1 (Jake Peterson)
@@ -53,7 +290,7 @@
53
290
  * Complete overhaul of warning message construction
54
291
  * Deadcode and typo fixes found via Coverity
55
292
 
56
- # 4.3.1
293
+ # 4.3.1 - 2018-06-07
57
294
 
58
295
  * Ignore `Object#freeze`, use the target instead
59
296
  * Ignore `foreign_key` calls in SQL
@@ -66,7 +303,7 @@
66
303
  * Improve handling of conditionals in shell commands (Jacob Evelyn)
67
304
  * Fix error when setting line number in implicit renders
68
305
 
69
- # 4.3.0
306
+ # 4.3.0 - 2018-05-11
70
307
 
71
308
  * Check exec-type calls even if they are targets
72
309
  * Convert `Array#join` to string interpolation
@@ -82,14 +319,14 @@
82
319
  * `--color` can be used to force color output
83
320
  * Fix reported line numbers for CVE-2018-3741 and CVE-2018-8048
84
321
 
85
- # 4.2.1
322
+ # 4.2.1 - 2018-03-24
86
323
 
87
324
  * Add warning for CVE-2018-3741
88
325
  * Add warning for CVE-2018-8048
89
326
  * Scan `app/jobs/` directory
90
327
  * Handle `template_exists?` in controllers
91
328
 
92
- # 4.2.0
329
+ # 4.2.0 - 2018-02-22
93
330
 
94
331
  * Avoid warning about symbol DoS on `Model#attributes`
95
332
  * Avoid warning about open redirects with model methods ending with `_path`
@@ -102,12 +339,12 @@
102
339
  * Exclude template folders in `lib/` (kru0096)
103
340
  * Handle ERb use of `String#<<` method for Ruby 2.5 (Pocke)
104
341
 
105
- # 4.1.1
342
+ # 4.1.1 - 2017-12-19
106
343
 
107
344
  * Remove check for use of `permit` with `*_id` keys
108
345
  * Avoid duplicate warnings about permitted attributes
109
346
 
110
- # 4.1.0
347
+ # 4.1.0 - 2017-12-14
111
348
 
112
349
  * Process models as root sexp instead of each sexp
113
350
  * Avoid CSRF warning in Rails 5.2 default config
@@ -130,12 +367,12 @@
130
367
  * Refactor Code Climate engine options parsing (Noah Davis)
131
368
  * Fix upgrade version for CVE-2016-6316
132
369
 
133
- # 4.0.1
370
+ # 4.0.1 - 2017-09-25
134
371
 
135
372
  * Disable pager when `CI` environment variable is set
136
373
  * Fix output when pager fails
137
374
 
138
- # 4.0.0
375
+ # 4.0.0 - 2017-09-25
139
376
 
140
377
  * Add simple pager for reports output to terminal
141
378
  * Rename "Cross Site Scripting" to "Cross-Site Scripting" (Paul Tetreau)
@@ -149,11 +386,11 @@
149
386
  * --exit-on-error and --exit-on-warn are now the default
150
387
  * Fix --exit-on-error and --exit-on-warn in config files
151
388
 
152
- # 3.7.2
389
+ # 3.7.2 - 2017-08-16
153
390
 
154
391
  * Fix --ensure-latest (David Guyon)
155
392
 
156
- # 3.7.1
393
+ # 3.7.1 - 2017-08-16
157
394
 
158
395
  * Handle simple guard with return at end of branch
159
396
  * Modularize bin/brakeman
@@ -161,7 +398,7 @@
161
398
  * Add more collection methods for iteration detection
162
399
  * Update ruby2ruby and ruby_parser
163
400
 
164
- # 3.7.0
401
+ # 3.7.0 - 2017-06-30
165
402
 
166
403
  * Improve support for rails4/rails5 options in config file
167
404
  * Track more information about constant assignments
@@ -170,7 +407,7 @@
170
407
  * Fix false positive for redirect_to in Rails 4 (Mário Areias)
171
408
  * Avoid interpolating hashes/arrays on failed access
172
409
 
173
- # 3.6.2
410
+ # 3.6.2 - 2017-05-19
174
411
 
175
412
  * Handle safe call operator in checks
176
413
  * Better handling of `if` expressions in HAML rendering
@@ -185,11 +422,11 @@
185
422
  * Handle empty `if` expressions when finding return values
186
423
  * Fix finding return value from empty `if`
187
424
 
188
- # 3.6.1
425
+ # 3.6.1 - 2017-03-24
189
426
 
190
427
  * Fix error when using `--compare` (Sean Gransee)
191
428
 
192
- # 3.6.0
429
+ # 3.6.0 - 2017-03-23
193
430
 
194
431
  * Avoid recursive Concerns
195
432
  * Branch inside of `case` expressions
@@ -200,7 +437,7 @@
200
437
  * Only report CVE-2015-3227 when exact version is known
201
438
  * Check targetless SQL calls outside of known models
202
439
 
203
- # 3.5.0
440
+ # 3.5.0 - 2017-02-01
204
441
 
205
442
  * Allow `-t None`
206
443
  * Fail on invalid checks specified by `-x` or `-t`
@@ -215,7 +452,7 @@
215
452
  * Handle `included` block in concerns
216
453
  * Process concerns before controllers
217
454
 
218
- # 3.4.1
455
+ # 3.4.1 - 2016-11-02
219
456
 
220
457
  * Show action help at start of interactive ignore
221
458
  * Check CSRF setting in direct subclasses of `ActionController::Base` (Jason Yeo)
@@ -225,7 +462,7 @@
225
462
  * Avoid warning about `where_values_hash` in SQLi
226
463
  * Fix ignoring link interpolation not at beginning of string
227
464
 
228
- # 3.4.0
465
+ # 3.4.0 - 2016-09-08
229
466
 
230
467
  * Add new `plain` report format
231
468
  * Add option to prune ignore file with `-I`
@@ -234,18 +471,18 @@
234
471
  * Support creating reports in non-existent paths
235
472
  * Add `--no-exit-warn`
236
473
 
237
- # 3.3.5
474
+ # 3.3.5 - 2016-08-12
238
475
 
239
476
  * Fix bug in reports when using --debug option
240
477
 
241
- # 3.3.4
478
+ # 3.3.4 - 2016-08-12
242
479
 
243
480
  * Add generic warning for CVE-2016-6316
244
481
  * Warn about dangerous use of `content_tag` with CVE-2016-6316
245
482
  * Add warning for CVE-2016-6317
246
483
  * Use Minitest
247
484
 
248
- # 3.3.3
485
+ # 3.3.3 - 2016-07-21
249
486
 
250
487
  * Show path when no Rails app found (Neil Matatall)
251
488
  * Index calls in view helpers
@@ -258,22 +495,22 @@
258
495
  * Sexp#value returns nil when there is no value
259
496
  * Improve return value estimation
260
497
 
261
- # 3.3.2
498
+ # 3.3.2 - 2016-06-10
262
499
 
263
500
  * Fix serious performance regression with global constant tracking
264
501
 
265
- # 3.3.1
502
+ # 3.3.1 - 2016-06-03
266
503
 
267
504
  * Delay loading vendored gems and modifying load path
268
505
  * Avoid warning about SQL injection with `quoted_primary_key`
269
506
  * Support more safe `&.` operations
270
- * Allow multile line regex in `validates_format_of` (Dmitrij Fedorenko)
507
+ * Allow multiple line regex in `validates_format_of` (Dmitrij Fedorenko)
271
508
  * Only consider `if` branches in templates
272
509
  * Avoid overwriting instance/class methods with same name (Tim Wade)
273
510
  * Add `--force-scan` option (Neil Matatall)
274
511
  * Improved line number accuracy in ERB templates (Patrick Toomey)
275
512
 
276
- # 3.3.0
513
+ # 3.3.0 - 2016-05-05
277
514
 
278
515
  * Skip processing obviously false if branches (more broadly)
279
516
  * Skip if branches with `Rails.env.test?`
@@ -291,11 +528,11 @@
291
528
  * [Code Climate engine] Remove nil entries from include_paths (Gordon Diggs)
292
529
  * [Code Climate engine] Report end lines for issues (Gordon Diggs)
293
530
 
294
- # 3.2.1
531
+ # 3.2.1 - 2016-02-25
295
532
 
296
533
  * Remove `multi_json` dependency from `bin/brakeman`
297
534
 
298
- # 3.2.0
535
+ # 3.2.0 - 2016-02-25
299
536
 
300
537
  * Skip Symbol DoS check on Rails 5
301
538
  * Only update ignore config file on changes
@@ -309,7 +546,7 @@
309
546
  * Avoid render warnings about params[:action]/params[:controller]
310
547
  * Index calls in class bodies but outside methods
311
548
 
312
- # 3.1.5
549
+ # 3.1.5 - 2016-01-28
313
550
 
314
551
  * Fix CodeClimate construction of --only-files (Will Fleming)
315
552
  * Add check for denial of service via routes (CVE-2015-7581)
@@ -328,7 +565,7 @@
328
565
  * Handle module names with self methods
329
566
  * Add session manipulation documentation
330
567
 
331
- # 3.1.4
568
+ # 3.1.4 - 2015-12-22
332
569
 
333
570
  * Emit brakeman's native fingerprints for Code Climate engine (Noah Davis)
334
571
  * Ignore secrets.yml if in .gitignore
@@ -336,7 +573,7 @@
336
573
  * Increase test coverage for option parsing (Zander Mackie)
337
574
  * Work around safe_yaml error
338
575
 
339
- # 3.1.3
576
+ # 3.1.3 - 2015-12-03
340
577
 
341
578
  * Check for session secret in secrets.yml
342
579
  * Respect `exit_on_warn` in config file
@@ -350,7 +587,7 @@
350
587
  * Depend on safe_yaml 1.0 or later
351
588
  * Test coverage improvements for Brakema module (Bethany Rentz)
352
589
 
353
- # 3.1.2
590
+ # 3.1.2 - 2015-10-28
354
591
 
355
592
  * Treat `current_user` like a model
356
593
  * Set user input value for inline renders
@@ -368,7 +605,7 @@
368
605
  * Sortable tables in HTML report (David Lanner)
369
606
  * Search for config file relative to application root
370
607
 
371
- # 3.1.1
608
+ # 3.1.1 - 2015-09-23
372
609
 
373
610
  * Add optional check for use of MD5 and SHA1
374
611
  * Avoid warning when linking to decorated models
@@ -382,7 +619,7 @@
382
619
  * Support newer terminal-table releases
383
620
  * Allow searching call index methods by regex (Alex Ianus)
384
621
 
385
- # 3.1.0
622
+ # 3.1.0 - 2015-08-31
386
623
 
387
624
  * Add support for gems.rb/gems.locked
388
625
  * Update render path information in JSON reports
@@ -401,18 +638,18 @@
401
638
  * Expand safe methods to match methods with targets
402
639
  * Avoid duplicate eval() warnings
403
640
 
404
- # 3.0.5
641
+ # 3.0.5 - 2015-06-20
405
642
 
406
643
  * Fix check for CVE-2015-3227
407
644
 
408
- # 3.0.4
645
+ # 3.0.4 - 2015-06-18
409
646
 
410
647
  * Add check for CVE-2015-3226 (XSS via JSON keys)
411
648
  * Add check for CVE-2015-3227 (XML DoS)
412
649
  * Treat `<%==` as unescaped output
413
650
  * Update `ruby_parser` dependency to 3.7.0
414
651
 
415
- # 3.0.3
652
+ # 3.0.3 - 2015-04-20
416
653
 
417
654
  * Ignore more Arel methods in SQL
418
655
  * Warn about protect_from_forgery without exceptions (Neil Matatall)
@@ -423,7 +660,7 @@
423
660
  * Do not ignore targets of `to_s` in SQL
424
661
  * Add Rake task to exit with error code on warnings (masarakki)
425
662
 
426
- # 3.0.2
663
+ # 3.0.2 - 2015-03-09
427
664
 
428
665
  * Alias process methods called in class scope on models
429
666
  * Treat primary_key, table_name_prefix, table_name_suffix as safe in SQL
@@ -439,7 +676,7 @@
439
676
  * Fix CSV output when there are no warnings
440
677
  * Handle processing of explicitly shadowed block arguments
441
678
 
442
- # 3.0.1
679
+ # 3.0.1 - 2015-01-23
443
680
 
444
681
  * Avoid protect_from_forgery warning unless ApplicationController inherits from ActionController::Base
445
682
  * Properly format command interpolation (again)
@@ -448,7 +685,7 @@
448
685
  * Add `--add-libs-path` for additional libraries (Patrick Toomey)
449
686
  * Properly process libraries (Patrick Toomey)
450
687
 
451
- # 3.0.0
688
+ # 3.0.0 - 2015-01-03
452
689
 
453
690
  * Add check for CVE-2014-7829
454
691
  * Add check for cross-site scripting via inline renders
@@ -467,7 +704,7 @@
467
704
  * CVEs report correct line and file name (Gemfile/Gemfile.lock) (Rob Fletcher)
468
705
  * Change `--separate-models` to be the default
469
706
 
470
- # 2.6.3
707
+ # 2.6.3 - 2014-10-14
471
708
 
472
709
  * Whitelist `exists` arel method from SQL injection check
473
710
  * Avoid warning about Symbol DoS on safe parameters as method targets
@@ -476,7 +713,7 @@
476
713
  * Add framework for optional checks
477
714
  * Fix stack overflow for cycles in class ancestors (Jeff Rafter)
478
715
 
479
- # 2.6.2
716
+ # 2.6.2 - 2014-08-18
480
717
 
481
718
  * Add check for CVE-2014-3415
482
719
  * Avoid warning about symbolizing safe parameters
@@ -490,13 +727,13 @@
490
727
  * Fix block statement endings in Erubis
491
728
  * Fix undefined variable in controller processing error (Jason Barnabe)
492
729
 
493
- # 2.6.1
730
+ # 2.6.1 - 2014-07-02
494
731
 
495
732
  * Add check for CVE-2014-3482 and CVE-2014-3483
496
733
  * Add support for keyword arguments in blocks
497
734
  * Remove unused warning codes (Bill Fischer)
498
735
 
499
- # 2.6.0
736
+ # 2.6.0 - 2014-06-06
500
737
 
501
738
  * Fix detection of `:host` setting in redirects with chained calls
502
739
  * Add check for CVE-2014-0130
@@ -510,7 +747,7 @@
510
747
  * Ignore more model methods in redirects
511
748
  * Fix CheckRender with nested render calls
512
749
 
513
- # 2.5.0
750
+ # 2.5.0 - 2014-04-30
514
751
 
515
752
  * Add support for RailsLTS 2.3.18.7 and 2.3.18.8
516
753
  * Add support for Rails 4 `before_actions` and friends
@@ -525,11 +762,11 @@
525
762
  * Handle more non-literals in routes
526
763
  * Add check for regex denial of service (Ben Toews)
527
764
 
528
- # 2.4.3
765
+ # 2.4.3 - 2014-03-23
529
766
 
530
767
  No changes. 2.4.2 gem release was unsigned, 2.4.3 is signed.
531
768
 
532
- # 2.4.2
769
+ # 2.4.2 - 2014-03-21
533
770
 
534
771
  * Remove `rescue Exception`
535
772
  * Fix duplicate warnings about sanitize CVE
@@ -538,13 +775,13 @@
538
775
  * Skip identically rendered templates
539
776
  * Fix HAML template processing
540
777
 
541
- # 2.4.1
778
+ # 2.4.1 - 2014-02-19
542
779
 
543
780
  * Add check for CVE-2014-0082
544
781
  * Add check for CVE-2014-0081, replaces CVE-2013-6415
545
782
  * Add check for CVE-2014-0080
546
783
 
547
- # 2.4.0
784
+ # 2.4.0 - 2014-02-05
548
785
 
549
786
  * Detect Rails LTS versions
550
787
  * Reduce false positives for SQL injection in string building
@@ -559,12 +796,12 @@
559
796
  * No longer raise exceptions if a class name cannot be determined
560
797
  * Fingerprint attribute warnings individually (Case Taintor)
561
798
 
562
- # 2.3.1
799
+ # 2.3.1 - 2013-12-13
563
800
 
564
801
  * Fix check for CVE-2013-4491 (i18n XSS) to detect workaround
565
802
  * Fix link for CVE-2013-6415 (number_to_currency)
566
803
 
567
- # 2.3.0
804
+ # 2.3.0 - 2013-12-12
568
805
 
569
806
  * Add check for Parameters#permit!
570
807
  * Add check for CVE-2013-4491 (i18n XSS)
@@ -578,7 +815,7 @@
578
815
  * Whitelist `Model#create` for redirects
579
816
  * Fix scoping issues with instance variables and blocks
580
817
 
581
- # 2.2.0
818
+ # 2.2.0 - 2013-10-28
582
819
 
583
820
  * Reduce command injection false positives
584
821
  * Use Rails version from Gemfile if it is available
@@ -587,14 +824,14 @@
587
824
  * Support scanning Rails engines (Geoffrey Hichborn)
588
825
  * Add check for detailed exceptions in production
589
826
 
590
- # 2.1.2
827
+ # 2.1.2 - 2013-09-18
591
828
 
592
829
  * Do not attempt to load custom Haml filters
593
830
  * Do not warn about `to_json` XSS in Rails 4
594
831
  * Add --table-width option to set width of text reports (ssendev)
595
832
  * Remove fuzzy matching on dangerous attr_accessible values
596
833
 
597
- # 2.1.1
834
+ # 2.1.1 - 2013-08-21
598
835
 
599
836
  * New warning code for dangerous attributes in attr_accessible
600
837
  * Do not warn on attr_accessible using roles
@@ -605,7 +842,7 @@
605
842
  * Fix infinite loop when run as rake task (Matthew Shanley)
606
843
  * Respect ignored warnings in tabs format reports
607
844
 
608
- # 2.1.0
845
+ # 2.1.0 - 2013-07-17
609
846
 
610
847
  * Support non-native line endings in Gemfile.lock (Paul Deardorff)
611
848
  * Support for ignoring warnings
@@ -625,7 +862,7 @@
625
862
  * Fix output format detection to be more strict again
626
863
  * Allow empty Brakeman configuration file
627
864
 
628
- # 2.0.0
865
+ # 2.0.0 - 2013-05-20
629
866
 
630
867
  * Add `--only-files` option to specify files/paths to scan (Ian Ehlert)
631
868
  * Add Marshal/CSV deserialization check
@@ -655,7 +892,7 @@
655
892
  * Use exceptions instead of abort in brakeman lib
656
893
  * Update to Ruby2Ruby 2.0.5
657
894
 
658
- # 1.9.5
895
+ # 1.9.5 - 2013-04-05
659
896
 
660
897
  * Add check for unsafe symbol creation
661
898
  * Do not warn on mass assignment with `slice`/`only`
@@ -670,7 +907,7 @@
670
907
  * More fixes for assignments inside branches
671
908
  * Pin to ruby2ruby version 2.0.3
672
909
 
673
- # 1.9.4
910
+ # 1.9.4 - 2013-03-19
674
911
 
675
912
  * Add check for CVE-2013-1854
676
913
  * Add check for CVE-2013-1855
@@ -682,7 +919,7 @@
682
919
  * Slightly faster cloning of Sexps
683
920
  * Detect another way to add `strong_parameters`
684
921
 
685
- # 1.9.3
922
+ # 1.9.3 - 2013-03-01
686
923
 
687
924
  * Add render path to JSON report
688
925
  * Add warning fingerprints
@@ -697,7 +934,7 @@
697
934
  * Expand HAML dependency to include 4.0
698
935
  * Scroll errors into view when expanding in HTML report
699
936
 
700
- # 1.9.2
937
+ # 1.9.2 - 2013-02-14
701
938
 
702
939
  * Add check for CVE-2013-0269
703
940
  * Add check for CVE-2013-0276
@@ -708,7 +945,7 @@
708
945
  * Check for more dangerous YAML methods
709
946
  * Support MultiJSON 1.2 for Rails 3.0 and 3.1
710
947
 
711
- # 1.9.1
948
+ # 1.9.1 - 2013-01-19
712
949
 
713
950
  * Update to RubyParser 3.1.1 (neersighted)
714
951
  * Remove ActiveSupport dependency (Neil Matatall)
@@ -720,7 +957,7 @@
720
957
  * Add check for CVE-2013-0156
721
958
  * Add check for unsafe `YAML.load`
722
959
 
723
- # 1.9.0
960
+ # 1.9.0 - 2012-12-25
724
961
 
725
962
  * Update to RubyParser 3
726
963
  * Ignore route information by default
@@ -740,7 +977,7 @@
740
977
  * Handle empty model files
741
978
  * Remove "find by regex" feature from `CallIndex`
742
979
 
743
- # 1.8.3
980
+ # 1.8.3 - 2012-11-13
744
981
 
745
982
  * Use `multi_json` gem for better harmony
746
983
  * Performance improvement for call indexing
@@ -756,7 +993,7 @@
756
993
  * Fix error in rescan of mixins with symbols in method name
757
994
  * Do not rescan non-Ruby files in config/
758
995
 
759
- # 1.8.2
996
+ # 1.8.2 - 2012-10-17
760
997
 
761
998
  * Fixed rescanning problems caused by 1.8.0 changes
762
999
  * Fix scope calls with single argument
@@ -765,7 +1002,7 @@
765
1002
  * Much improved test coverage
766
1003
  * Add CHANGES to gemspec
767
1004
 
768
- # 1.8.1
1005
+ # 1.8.1 - 2012-09-24
769
1006
 
770
1007
  * Recover from errors in output formatting
771
1008
  * Fix false positive in redirect_to (Neil Matatall)
@@ -777,7 +1014,7 @@
777
1014
  * Handle super calls with blocks
778
1015
  * Respect `-q` flag for "Rails 3 detected" message
779
1016
 
780
- # 1.8.0
1017
+ # 1.8.0 - 2012-09-05
781
1018
 
782
1019
  * Support relative paths in reports (fsword)
783
1020
  * Allow Brakeman to be run without tty (fsword)
@@ -793,7 +1030,7 @@
793
1030
  * Treat model attributes in `or` expressions as immediate values
794
1031
  * Switch to method access for Sexp nodes
795
1032
 
796
- # 1.7.1
1033
+ # 1.7.1 - 2012-08-13
797
1034
 
798
1035
  * Add check for CVE-2012-3463
799
1036
  * Add check for CVE-2012-3464
@@ -801,7 +1038,7 @@
801
1038
  * Add charset to HTML report (hooopo)
802
1039
  * Report XSS in select() for Rails 2
803
1040
 
804
- # 1.7.0
1041
+ # 1.7.0 - 2012-07-31
805
1042
 
806
1043
  * Add check for CVE-2012-3424
807
1044
  * Link report types to descriptions on website
@@ -816,7 +1053,7 @@
816
1053
  * Fix processing of negative array indexes
817
1054
  * Add line breaks to truncated table rows
818
1055
 
819
- # 1.6.2
1056
+ # 1.6.2 - 2012-06-13
820
1057
 
821
1058
  * Add checks for CVE-2012-2660, CVE-2012-2661, CVE-2012-2694, CVE-2012-2695 (Dave Worth)
822
1059
  * Avoid warning when redirecting to a model instance
@@ -828,7 +1065,7 @@
828
1065
  * Cache before_filter lookups
829
1066
  * Turn off quiet mode by default for `--compare`
830
1067
 
831
- # 1.6.1
1068
+ # 1.6.1 - 2012-05-23
832
1069
 
833
1070
  * Major rewrite of CheckSQL
834
1071
  * Fix rescanning of deleted templates
@@ -838,7 +1075,7 @@
838
1075
  * Fix highlighting of HTML escaped values in HTML report
839
1076
  * Report line number of highlighted value, if available
840
1077
 
841
- # 1.6.0
1078
+ # 1.6.0 - 2012-04-20
842
1079
 
843
1080
  * Remove the Ruport dependency (Neil Matatall)
844
1081
  * Add more informational JSON output (Neil Matatall)
@@ -850,7 +1087,7 @@
850
1087
  * Fix rescanning of deleted files
851
1088
  * Properly check for rails_xss in Gemfile
852
1089
 
853
- # 1.5.3
1090
+ # 1.5.3 - 2012-04-10
854
1091
 
855
1092
  * Add check for user input in Object#send (Neil Matatall)
856
1093
  * Handle render :layout in views
@@ -864,7 +1101,7 @@
864
1101
  * Improve handling of modules and nesting
865
1102
  * Test for zero errors in test reports
866
1103
 
867
- # 1.5.2
1104
+ # 1.5.2 - 2012-03-22
868
1105
 
869
1106
  * Fix link_to checks for Rails 2.0 and 2.3
870
1107
  * Fix rescanning of lib files (Neil Matatall)
@@ -875,7 +1112,7 @@
875
1112
  * Fix handling of views when using rails_xss
876
1113
  * Revert to ruby_parser 2.3.1 for Ruby 1.8 parsing
877
1114
 
878
- # 1.5.1
1115
+ # 1.5.1- 2012-03-06
879
1116
 
880
1117
  * Fix detection of global mass assignment setting
881
1118
  * Fix partial rendering in Rails 3
@@ -885,7 +1122,7 @@
885
1122
  * Add tracking of module and class to Brakeman::BaseProcessor
886
1123
  * Report module when using Brakeman::FindCall
887
1124
 
888
- # 1.5.0
1125
+ # 1.5.0 - 2012-03-02
889
1126
 
890
1127
  * Add version check for SafeBuffer vulnerability
891
1128
  * Add check for select vulnerability in Rails 3
@@ -896,7 +1133,7 @@
896
1133
  * Standardize methods to check for SQL injection
897
1134
  * Fix Rails 2 route parsing issue with nested routes
898
1135
 
899
- # 1.4.0
1136
+ # 1.4.0 - 2012-02-24
900
1137
 
901
1138
  * Add check for user input in link_to href parameter
902
1139
  * Match ERB processing to rails_xss plugin when plugin used
@@ -904,7 +1141,7 @@
904
1141
  * Warnings below minimum confidence are dropped completely
905
1142
  * Brakeman.run always returns a Tracker
906
1143
 
907
- # 1.3.0
1144
+ # 1.3.0 - 2012-02-09
908
1145
 
909
1146
  * Add file paths to HTML report
910
1147
  * Add caching of filters
@@ -917,7 +1154,7 @@
917
1154
  * Better variable substitution
918
1155
  * Table output option for rescan reports
919
1156
 
920
- # 1.2.2
1157
+ # 1.2.2 - 2012-01-26
921
1158
 
922
1159
  * --no-progress works again
923
1160
  * Make CheckLinkTo a separate check
@@ -925,7 +1162,7 @@
925
1162
  * Handle empty resource(s) blocks
926
1163
  * Add RescanReport#existing_warnings
927
1164
 
928
- ## 1.2.1
1165
+ ## 1.2.1 - 2012-01-20
929
1166
 
930
1167
  * Remove link_to warning for Rails 3.x or when using rails_xss
931
1168
  * Don't warn if first argument to link_to is escaped
@@ -937,7 +1174,7 @@
937
1174
  * Add Brakeman::RescanReport#to_s
938
1175
  * Add Brakeman::Warning#to_s
939
1176
 
940
- ## 1.2.0
1177
+ ## 1.2.0 - 2012-01-14
941
1178
 
942
1179
  * Speed improvements for CheckExecute and CheckRender
943
1180
  * Check named_scope() and scope() for SQL injection
@@ -946,7 +1183,7 @@
946
1183
  * Add --summary option to only output summary
947
1184
  * Fix a problem with Rails 3 routes
948
1185
 
949
- ## 1.1.0
1186
+ ## 1.1.0 - 2011-12-22
950
1187
 
951
1188
  * Relax required versions for dependencies
952
1189
  * Performance improvements for source processing
@@ -956,14 +1193,14 @@
956
1193
  * Compatibility with newer Haml versions
957
1194
  * Fix some warnings
958
1195
 
959
- ## 1.0.0
1196
+ ## 1.0.0 - 2011-12-08
960
1197
 
961
1198
  * Better handling of assignments inside ifs
962
1199
  * Check more expressions for SQL injection
963
1200
  * Use latest ruby_parser for better 1.9 syntax support
964
1201
  * Better behavior for Brakeman as a library
965
1202
 
966
- ## 1.0.0rc1
1203
+ ## 1.0.0rc1 - 2011-12-06
967
1204
 
968
1205
  * Brakeman can now be used as a library
969
1206
  * Faster call search
@@ -976,23 +1213,23 @@
976
1213
  * Ignore mass assignment using all literal arguments
977
1214
  * Keep expanded context in view with HTML output
978
1215
 
979
- ## 0.9.2
1216
+ ## 0.9.2 - 2011-11-22
980
1217
 
981
1218
  * Fix Rails 3 configuration parsing
982
1219
  * Add t() helper to check for translate XSS bug
983
1220
 
984
- ## 0.9.1
1221
+ ## 0.9.1 - 2011-11-18
985
1222
 
986
1223
  * Add warning for translator helper XSS vulnerability
987
1224
 
988
- ## 0.9.0
1225
+ ## 0.9.0 - 2011-11-17
989
1226
 
990
1227
  * Process Rails 3 configuration files
991
1228
  * Fix CSV output
992
1229
  * Check for config.active_record.whitelist_attributes = true
993
1230
  * Always produce a warning for without_protection => true
994
1231
 
995
- ## 0.8.4
1232
+ ## 0.8.4 - 2011-11-04
996
1233
 
997
1234
  * Option for separate attr_accessible warnings
998
1235
  * Option to set CSS file for HTML output
@@ -1001,23 +1238,23 @@
1001
1238
  * Fix hash_insert()
1002
1239
  * Remove use of Queue from threaded checks
1003
1240
 
1004
- ## 0.8.3
1241
+ ## 0.8.3 - 2011-10-25
1005
1242
 
1006
1243
  * Respect -w flag in .tabs format (tw-ngreen)
1007
1244
  * Escape HTML output of error messages
1008
1245
  * Add --skip-libs option
1009
1246
 
1010
- ## 0.8.2
1247
+ ## 0.8.2 - 2011-10-01
1011
1248
 
1012
1249
  * Run checks in parallel threads by default
1013
1250
  * Fix compatibility with ruby_parser 2.3.1
1014
1251
 
1015
- ## 0.8.1
1252
+ ## 0.8.1 - 2011-09-28
1016
1253
 
1017
1254
  * Add option to assume all controller methods are actions
1018
1255
  * Recover from errors when parsing routes
1019
1256
 
1020
- ## 0.8.0
1257
+ ## 0.8.0 - 2011-09-15
1021
1258
 
1022
1259
  * Add check for mass assignment using without_protection
1023
1260
  * Add check for password in http_basic_authenticate_with
@@ -1028,30 +1265,30 @@
1028
1265
  * Add ruby_parser hack for Ruby 1.9 hash syntax
1029
1266
  * Add a few Rails 3.1 tests
1030
1267
 
1031
- ## 0.7.2
1268
+ ## 0.7.2 - 2011-08-27
1032
1269
 
1033
1270
  * Fix handling of params and cookies with nested access
1034
1271
  * Add CVEs for checks added in 0.7.0
1035
1272
 
1036
- ## 0.7.1
1273
+ ## 0.7.1 - 2011-08-18
1037
1274
 
1038
1275
  * Require BaseProcessor for GemProcessor
1039
1276
 
1040
- ## 0.7.0
1277
+ ## 0.7.0 - 2011-08-17
1041
1278
 
1042
1279
  * Allow local variable as a class name
1043
1280
  * Add checks for vulnerabilities fixed in Rails 2.3.14 and 3.0.10
1044
1281
  * Check for default routes in Rails 3 apps
1045
1282
  * Look in Gemfile or Gemfile.lock for Rails version
1046
1283
 
1047
- ## 0.6.1
1284
+ ## 0.6.1 - 2011-07-29
1048
1285
 
1049
1286
  * Fix XSS check for cookies as parameters in output
1050
1287
  * Don't bother calling super in CheckSessionSettings
1051
1288
  * Add escape_once as a safe method
1052
1289
  * Accept '\Z' or '\z' in model validations
1053
1290
 
1054
- ## 0.6.0
1291
+ ## 0.6.0 - 2011-07-20
1055
1292
 
1056
1293
  * Tests are in place and fully functional
1057
1294
  * Hide errors by default in HTML output
@@ -1064,17 +1301,17 @@
1064
1301
  * Fixes to escaped output scanning
1065
1302
  * Update CSRF CVE-2011-0447 message to be less assertive
1066
1303
 
1067
- ## 0.5.2
1304
+ ## 0.5.2 - 2011-06-29
1068
1305
 
1069
1306
  * Output report file name when finished
1070
1307
  * Add initial tests for Rails 2.x
1071
1308
  * Fix ERB line numbers when using Ruby 1.9
1072
1309
 
1073
- ## 0.5.1
1310
+ ## 0.5.1 - 2011-06-17
1074
1311
 
1075
1312
  * Fix issue with 'has_one' => in routes
1076
1313
 
1077
- ## 0.5.0
1314
+ ## 0.5.0 - 2011-06-08
1078
1315
 
1079
1316
  * Add support for routes like get 'x/y', :to => 'ctrlr#whatever'
1080
1317
  * Allow empty blocks in Rails 3 routes
@@ -1082,52 +1319,52 @@
1082
1319
  * Add line numbers to session setting warnings
1083
1320
  * Add --checks option to list checks
1084
1321
 
1085
- ## 0.4.1
1322
+ ## 0.4.1 - 2011-05-23
1086
1323
 
1087
1324
  * Fix reported line numbers when using new Erubis parser
1088
1325
  (Mostly affects Rails 3 apps)
1089
1326
 
1090
- ## 0.4.0
1327
+ ## 0.4.0 - 2011-05-19
1091
1328
 
1092
1329
  * Handle Rails XSS protection properly
1093
1330
  * More detection options for rails_xss
1094
1331
  * Add --escape-html option
1095
1332
 
1096
- ## 0.3.2
1333
+ ## 0.3.2 - 2011-05-12
1097
1334
 
1098
1335
  * Autodetect Rails 3 applications
1099
1336
  * Turn on auto-escaping for Rails 3 apps
1100
1337
  * Check Model.create() for mass assignment
1101
1338
 
1102
- ## 0.3.1
1339
+ ## 0.3.1 - 2011-05-03
1103
1340
 
1104
1341
  * Always output a line number in tabbed output format
1105
1342
  * Restrict characters in category name in tabbed output format to
1106
1343
  word characters and spaces, for Hudson/Jenkins plugin
1107
1344
 
1108
- ## 0.3.0
1345
+ ## 0.3.0 - 2011-03-21
1109
1346
 
1110
1347
  * Check for SQL injection in calls using constantize()
1111
1348
  * Check for SQL injection in calls to count_by_sql()
1112
1349
 
1113
- ## 0.2.2
1350
+ ## 0.2.2 - 2011-02-22
1114
1351
 
1115
1352
  * Fix version_between? when no Rails version is specified
1116
1353
 
1117
- ## 0.2.1
1354
+ ## 0.2.1 - 2011-02-18
1118
1355
 
1119
1356
  * Add code snippet to tab output messages
1120
1357
 
1121
- ## 0.2.0
1358
+ ## 0.2.0 - 2011-02-16
1122
1359
 
1123
1360
  * Add check for mail_to vulnerability - CVE-2011-0446
1124
1361
  * Add check for CSRF weakness - CVE-2011-0447
1125
1362
 
1126
- ## 0.1.1
1363
+ ## 0.1.1 - 2011-01-25
1127
1364
 
1128
1365
  * Be more permissive with ActiveSupport version
1129
1366
 
1130
- ## 0.1.0
1367
+ ## 0.1.0 - 2011-01-18
1131
1368
 
1132
1369
  * Check link_to for XSS (because arguments are not escaped)
1133
1370
  * Process layouts better (although not perfectly yet)