class Overcommit::Hook::PreCommit::RubySyntax
Runs ‘ruby -c` against all Ruby files.
Constants
- MESSAGE_TYPE_CATEGORIZER
Public Instance Methods
run()
click to toggle source
# File lib/overcommit/hook/pre_commit/ruby_syntax.rb, line 11 def run result = execute(command, args: applicable_files) result_lines = result.stderr.split("\n") return :pass if result_lines.length.zero? # Example message: # path/to/file.rb:1: syntax error, unexpected '^' extract_messages( result_lines, /^(?<file>[^:]+):(?<line>\d+):\s*(?<type>[^,]+),\s*(?<message>.+)/, MESSAGE_TYPE_CATEGORIZER ) end