overcommit 0.34.2 → 0.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/config/default.yml +26 -9
- data/lib/overcommit/hook/commit_msg/commitplease.rb +14 -0
- data/lib/overcommit/hook/pre_commit/bundle_audit.rb +21 -0
- data/lib/overcommit/hook/pre_commit/credo.rb +25 -0
- data/lib/overcommit/hook/pre_commit/java_checkstyle.rb +7 -3
- data/lib/overcommit/hook/pre_push/test_unit.rb +14 -0
- data/lib/overcommit/installer.rb +8 -13
- data/lib/overcommit/version.rb +1 -1
- data/template-dir/hooks/commit-msg +1 -1
- data/template-dir/hooks/overcommit-hook +1 -1
- data/template-dir/hooks/post-checkout +1 -1
- data/template-dir/hooks/post-commit +1 -1
- data/template-dir/hooks/post-merge +1 -1
- data/template-dir/hooks/post-rewrite +1 -1
- data/template-dir/hooks/pre-commit +1 -1
- data/template-dir/hooks/pre-push +1 -1
- data/template-dir/hooks/pre-rebase +1 -1
- metadata +7 -4
- data/lib/overcommit/hook/pre_commit/brakeman.rb +0 -13
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: e016461ee6c3433ae240bf3146a4b2ebbcd3917f
         | 
| 4 | 
            +
              data.tar.gz: 5dabc49a054dbb3bd35a133ae1d69bef8fe3f0cb
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 0e883bebdc91a518fca9afad6c731b92f25af2634cc5057d9e5aa3e9a9e4e60732c511374766b311ceda7c3c253efeadff50518f913fb117c3d280a7702e2a2c
         | 
| 7 | 
            +
              data.tar.gz: 403d7632314359323d12f44a672e3a5c782eb6c65d8f8eab0b4d6ef0088a3c7a2fc7ef8b7265cce129277ce006c8b0c804fdb4175d5b4eb091a0409f51339748
         | 
    
        data/config/default.yml
    CHANGED
    
    | @@ -114,6 +114,12 @@ CommitMsg: | |
| 114 114 | 
             
                enabled: true
         | 
| 115 115 | 
             
                description: 'Check for trailing periods in subject'
         | 
| 116 116 |  | 
| 117 | 
            +
              Commitplease:
         | 
| 118 | 
            +
                enabled: false
         | 
| 119 | 
            +
                description: 'Analyze with Commitplease'
         | 
| 120 | 
            +
                required_executable: './node_modules/.bin/commitplease'
         | 
| 121 | 
            +
                install_command: 'npm install --save-dev commitplease'
         | 
| 122 | 
            +
             | 
| 117 123 | 
             
            # Hooks that are run after `git commit` is executed, before the commit message
         | 
| 118 124 | 
             
            # editor is displayed. These hooks are ideal for syntax checkers, linters, and
         | 
| 119 125 | 
             
            # other checks that you want to run before you allow a commit object to be
         | 
| @@ -150,20 +156,17 @@ PreCommit: | |
| 150 156 | 
             
                  - 'Berksfile'
         | 
| 151 157 | 
             
                  - 'Berksfile.lock'
         | 
| 152 158 |  | 
| 153 | 
            -
              Brakeman:
         | 
| 154 | 
            -
                enabled: false
         | 
| 155 | 
            -
                description: 'Check for security vulnerabilities'
         | 
| 156 | 
            -
                required_executable: 'brakeman'
         | 
| 157 | 
            -
                flags: ['--exit-on-warn', '--quiet', '--summary', '--only-files']
         | 
| 158 | 
            -
                install_command: 'gem install brakeman'
         | 
| 159 | 
            -
                include:
         | 
| 160 | 
            -
                  - '**/*.rb'
         | 
| 161 | 
            -
             | 
| 162 159 | 
             
              BrokenSymlinks:
         | 
| 163 160 | 
             
                enabled: true
         | 
| 164 161 | 
             
                description: 'Check for broken symlinks'
         | 
| 165 162 | 
             
                quiet: true
         | 
| 166 163 |  | 
| 164 | 
            +
              BundleAudit:
         | 
| 165 | 
            +
                enabled: false
         | 
| 166 | 
            +
                description: 'Check for vulnerable versions of gems'
         | 
| 167 | 
            +
                required_executable: 'bundle-audit'
         | 
| 168 | 
            +
                install_command: 'gem install bundler-audit'
         | 
| 169 | 
            +
             | 
| 167 170 | 
             
              BundleCheck:
         | 
| 168 171 | 
             
                enabled: false
         | 
| 169 172 | 
             
                description: 'Check Gemfile dependencies'
         | 
| @@ -205,6 +208,15 @@ PreCommit: | |
| 205 208 | 
             
                install_command: 'npm install -g coffeelint'
         | 
| 206 209 | 
             
                include: '**/*.coffee'
         | 
| 207 210 |  | 
| 211 | 
            +
              Credo:
         | 
| 212 | 
            +
                enabled: false
         | 
| 213 | 
            +
                description: 'Analyze with credo'
         | 
| 214 | 
            +
                required_executable: 'mix'
         | 
| 215 | 
            +
                flags: ['credo', '--all', '--strict', '--format', 'flycheck']
         | 
| 216 | 
            +
                include:
         | 
| 217 | 
            +
                  - '**/*.ex'
         | 
| 218 | 
            +
                  - '**/*.exs'
         | 
| 219 | 
            +
             | 
| 208 220 | 
             
              CssLint:
         | 
| 209 221 | 
             
                enabled: false
         | 
| 210 222 | 
             
                description: 'Analyze with csslint'
         | 
| @@ -838,6 +850,11 @@ PrePush: | |
| 838 850 | 
             
                command: ['ruby', '-Ilib:test', '-rminitest', "-e 'exit! Minitest.run'"]
         | 
| 839 851 | 
             
                include: 'test/**/*_test.rb'
         | 
| 840 852 |  | 
| 853 | 
            +
              TestUnit:
         | 
| 854 | 
            +
                enabled: false
         | 
| 855 | 
            +
                description: 'Run Test::Unit test suite'
         | 
| 856 | 
            +
                command: ['ruby', '-Ilib:test', '-rtest/unit', "-e 'exit! Test::Unit::AutoRunner.run'"]
         | 
| 857 | 
            +
             | 
| 841 858 | 
             
            # Hooks that run during `git rebase`, before any commits are rebased.
         | 
| 842 859 | 
             
            # If a hook fails, the rebase is aborted.
         | 
| 843 860 | 
             
            PreRebase:
         | 
| @@ -0,0 +1,14 @@ | |
| 1 | 
            +
            module Overcommit::Hook::CommitMsg
         | 
| 2 | 
            +
              # Check that a commit message conforms to a certain style
         | 
| 3 | 
            +
              #
         | 
| 4 | 
            +
              # @see https://www.npmjs.com/package/commitplease
         | 
| 5 | 
            +
              class Commitplease < Base
         | 
| 6 | 
            +
                def run
         | 
| 7 | 
            +
                  result = execute(command)
         | 
| 8 | 
            +
                  output = result.stderr
         | 
| 9 | 
            +
                  return :pass if result.success? && output.empty?
         | 
| 10 | 
            +
             | 
| 11 | 
            +
                  [:fail, output]
         | 
| 12 | 
            +
                end
         | 
| 13 | 
            +
              end
         | 
| 14 | 
            +
            end
         | 
| @@ -0,0 +1,21 @@ | |
| 1 | 
            +
            module Overcommit::Hook::PreCommit
         | 
| 2 | 
            +
              # Checks for vulnerable versions of gems in Gemfile.lock.
         | 
| 3 | 
            +
              #
         | 
| 4 | 
            +
              # @see https://github.com/rubysec/bundler-audit
         | 
| 5 | 
            +
              class BundleAudit < Base
         | 
| 6 | 
            +
                LOCK_FILE = 'Gemfile.lock'.freeze
         | 
| 7 | 
            +
             | 
| 8 | 
            +
                def run
         | 
| 9 | 
            +
                  # Ignore if Gemfile.lock is not tracked by git
         | 
| 10 | 
            +
                  ignored_files = execute(%w[git ls-files -o -i --exclude-standard]).stdout.split("\n")
         | 
| 11 | 
            +
                  return :pass if ignored_files.include?(LOCK_FILE)
         | 
| 12 | 
            +
             | 
| 13 | 
            +
                  result = execute(command)
         | 
| 14 | 
            +
                  if result.success?
         | 
| 15 | 
            +
                    :pass
         | 
| 16 | 
            +
                  else
         | 
| 17 | 
            +
                    return [:warn, result.stdout]
         | 
| 18 | 
            +
                  end
         | 
| 19 | 
            +
                end
         | 
| 20 | 
            +
              end
         | 
| 21 | 
            +
            end
         | 
| @@ -0,0 +1,25 @@ | |
| 1 | 
            +
            module Overcommit::Hook::PreCommit
         | 
| 2 | 
            +
              # Runs `credo` against any modified ex files.
         | 
| 3 | 
            +
              #
         | 
| 4 | 
            +
              # @see https://github.com/rrrene/credo
         | 
| 5 | 
            +
              class Credo < Base
         | 
| 6 | 
            +
                # example message:
         | 
| 7 | 
            +
                # lib/file1.ex:1:11: R: Modules should have a @moduledoc tag.
         | 
| 8 | 
            +
                # lib/file2.ex:12:81: R: Line is too long (max is 80, was 81).
         | 
| 9 | 
            +
             | 
| 10 | 
            +
                def run
         | 
| 11 | 
            +
                  result = execute command
         | 
| 12 | 
            +
                  return :pass if result.success?
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                  result.stdout.split("\n").map(&:strip).reject(&:empty?).
         | 
| 15 | 
            +
                    map { |error| message(error) }
         | 
| 16 | 
            +
                end
         | 
| 17 | 
            +
             | 
| 18 | 
            +
                private
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                def message(error)
         | 
| 21 | 
            +
                  file, line = error.split(':')
         | 
| 22 | 
            +
                  Overcommit::Hook::Message.new(:error, file, Integer(line), error)
         | 
| 23 | 
            +
                end
         | 
| 24 | 
            +
              end
         | 
| 25 | 
            +
            end
         | 
| @@ -3,18 +3,22 @@ module Overcommit::Hook::PreCommit | |
| 3 3 | 
             
              #
         | 
| 4 4 | 
             
              # @see http://checkstyle.sourceforge.net/
         | 
| 5 5 | 
             
              class JavaCheckstyle < Base
         | 
| 6 | 
            -
                MESSAGE_REGEX = /^(\[[^\]] | 
| 6 | 
            +
                MESSAGE_REGEX = /^(\[(?<type>[^\]]+)\]\s+)?(?<file>(?:\w:)?[^:]+):(?<line>\d+)/
         | 
| 7 | 
            +
             | 
| 8 | 
            +
                MESSAGE_TYPE_CATEGORIZER = lambda do |type|
         | 
| 9 | 
            +
                  %w[WARN INFO].include?(type.to_s) ? :warning : :error
         | 
| 10 | 
            +
                end
         | 
| 7 11 |  | 
| 8 12 | 
             
                def run
         | 
| 9 13 | 
             
                  result = execute(command, args: applicable_files)
         | 
| 10 14 | 
             
                  output = result.stdout.chomp
         | 
| 11 | 
            -
                  return :pass if result.success?
         | 
| 12 15 |  | 
| 13 16 | 
             
                  # example message:
         | 
| 14 17 | 
             
                  #   path/to/file.java:3:5: Error message
         | 
| 15 18 | 
             
                  extract_messages(
         | 
| 16 19 | 
             
                    output.split("\n").grep(MESSAGE_REGEX),
         | 
| 17 | 
            -
                    MESSAGE_REGEX
         | 
| 20 | 
            +
                    MESSAGE_REGEX,
         | 
| 21 | 
            +
                    MESSAGE_TYPE_CATEGORIZER
         | 
| 18 22 | 
             
                  )
         | 
| 19 23 | 
             
                end
         | 
| 20 24 | 
             
              end
         | 
| @@ -0,0 +1,14 @@ | |
| 1 | 
            +
            module Overcommit::Hook::PrePush
         | 
| 2 | 
            +
              # Runs `test-unit` test suite before push
         | 
| 3 | 
            +
              #
         | 
| 4 | 
            +
              # @see https://github.com/test-unit/test-unit
         | 
| 5 | 
            +
              class TestUnit < Base
         | 
| 6 | 
            +
                def run
         | 
| 7 | 
            +
                  result = execute(command)
         | 
| 8 | 
            +
                  return :pass if result.success?
         | 
| 9 | 
            +
             | 
| 10 | 
            +
                  output = result.stdout + result.stderr
         | 
| 11 | 
            +
                  [:fail, output]
         | 
| 12 | 
            +
                end
         | 
| 13 | 
            +
              end
         | 
| 14 | 
            +
            end
         | 
    
        data/lib/overcommit/installer.rb
    CHANGED
    
    | @@ -33,7 +33,7 @@ module Overcommit | |
| 33 33 | 
             
                  ensure_directory(hooks_path)
         | 
| 34 34 | 
             
                  preserve_old_hooks
         | 
| 35 35 | 
             
                  install_master_hook
         | 
| 36 | 
            -
                   | 
| 36 | 
            +
                  install_hook_files
         | 
| 37 37 | 
             
                  install_starter_config
         | 
| 38 38 |  | 
| 39 39 | 
             
                  log.success "Successfully installed hooks into #{@target}"
         | 
| @@ -42,7 +42,7 @@ module Overcommit | |
| 42 42 | 
             
                def uninstall
         | 
| 43 43 | 
             
                  log.log "Removing hooks from #{@target}"
         | 
| 44 44 |  | 
| 45 | 
            -
                   | 
| 45 | 
            +
                  uninstall_hook_files
         | 
| 46 46 | 
             
                  uninstall_master_hook
         | 
| 47 47 | 
             
                  restore_old_hooks
         | 
| 48 48 |  | 
| @@ -54,7 +54,7 @@ module Overcommit | |
| 54 54 | 
             
                  unless FileUtils.compare_file(MASTER_HOOK, master_hook_install_path)
         | 
| 55 55 | 
             
                    preserve_old_hooks
         | 
| 56 56 | 
             
                    install_master_hook
         | 
| 57 | 
            -
                     | 
| 57 | 
            +
                    install_hook_files
         | 
| 58 58 |  | 
| 59 59 | 
             
                    log.success "Hooks updated to Overcommit version #{Overcommit::VERSION}"
         | 
| 60 60 | 
             
                    true
         | 
| @@ -103,10 +103,8 @@ module Overcommit | |
| 103 103 | 
             
                  FileUtils.rm_rf(master_hook_install_path, secure: true)
         | 
| 104 104 | 
             
                end
         | 
| 105 105 |  | 
| 106 | 
            -
                def  | 
| 107 | 
            -
                  #  | 
| 108 | 
            -
                  # We change directories so that the relative symlink paths work regardless
         | 
| 109 | 
            -
                  # of where the repository is located.
         | 
| 106 | 
            +
                def install_hook_files
         | 
| 107 | 
            +
                  # Copy each hook type (pre-commit, commit-msg, etc.) from the master hook.
         | 
| 110 108 | 
             
                  Dir.chdir(hooks_path) do
         | 
| 111 109 | 
             
                    Overcommit::Utils.supported_hook_types.each do |hook_type|
         | 
| 112 110 | 
             
                      unless can_replace_file?(hook_type)
         | 
| @@ -115,7 +113,7 @@ module Overcommit | |
| 115 113 | 
             
                              'was not installed by Overcommit'
         | 
| 116 114 | 
             
                      end
         | 
| 117 115 | 
             
                      FileUtils.rm_f(hook_type)
         | 
| 118 | 
            -
                       | 
| 116 | 
            +
                      FileUtils.cp('overcommit-hook', hook_type)
         | 
| 119 117 | 
             
                    end
         | 
| 120 118 | 
             
                  end
         | 
| 121 119 | 
             
                end
         | 
| @@ -158,7 +156,7 @@ module Overcommit | |
| 158 156 | 
             
                  log.success "Successfully restored old hooks from #{old_hooks_path}"
         | 
| 159 157 | 
             
                end
         | 
| 160 158 |  | 
| 161 | 
            -
                def  | 
| 159 | 
            +
                def uninstall_hook_files
         | 
| 162 160 | 
             
                  return unless File.directory?(hooks_path)
         | 
| 163 161 |  | 
| 164 162 | 
             
                  Dir.chdir(hooks_path) do
         | 
| @@ -176,10 +174,7 @@ module Overcommit | |
| 176 174 | 
             
                end
         | 
| 177 175 |  | 
| 178 176 | 
             
                def overcommit_hook?(file)
         | 
| 179 | 
            -
                   | 
| 180 | 
            -
                  # TODO: Remove these checks once we hit version 1.0
         | 
| 181 | 
            -
                  Overcommit::Utils::FileUtils.symlink?(file) &&
         | 
| 182 | 
            -
                    Overcommit::Utils::FileUtils.readlink(file) == 'overcommit-hook'
         | 
| 177 | 
            +
                  File.read(file) =~ /OVERCOMMIT_DISABLE/
         | 
| 183 178 | 
             
                rescue Errno::ENOENT
         | 
| 184 179 | 
             
                  # Some Ruby implementations (e.g. JRuby) raise an error when the file
         | 
| 185 180 | 
             
                  # doesn't exist. Standardize the behavior to return false.
         | 
    
        data/lib/overcommit/version.rb
    CHANGED
    
    
| @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            #!/usr/bin/env ruby
         | 
| 2 2 |  | 
| 3 3 | 
             
            # Entrypoint for Overcommit hook integration. Installing Overcommit will result
         | 
| 4 | 
            -
            # in all of your git hooks being  | 
| 4 | 
            +
            # in all of your git hooks being copied from this file, allowing the framework
         | 
| 5 5 | 
             
            # to manage your hooks for you.
         | 
| 6 6 |  | 
| 7 7 | 
             
            # Prevent a Ruby stack trace from appearing when we interrupt the hook.
         | 
| @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            #!/usr/bin/env ruby
         | 
| 2 2 |  | 
| 3 3 | 
             
            # Entrypoint for Overcommit hook integration. Installing Overcommit will result
         | 
| 4 | 
            -
            # in all of your git hooks being  | 
| 4 | 
            +
            # in all of your git hooks being copied from this file, allowing the framework
         | 
| 5 5 | 
             
            # to manage your hooks for you.
         | 
| 6 6 |  | 
| 7 7 | 
             
            # Prevent a Ruby stack trace from appearing when we interrupt the hook.
         | 
| @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            #!/usr/bin/env ruby
         | 
| 2 2 |  | 
| 3 3 | 
             
            # Entrypoint for Overcommit hook integration. Installing Overcommit will result
         | 
| 4 | 
            -
            # in all of your git hooks being  | 
| 4 | 
            +
            # in all of your git hooks being copied from this file, allowing the framework
         | 
| 5 5 | 
             
            # to manage your hooks for you.
         | 
| 6 6 |  | 
| 7 7 | 
             
            # Prevent a Ruby stack trace from appearing when we interrupt the hook.
         | 
| @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            #!/usr/bin/env ruby
         | 
| 2 2 |  | 
| 3 3 | 
             
            # Entrypoint for Overcommit hook integration. Installing Overcommit will result
         | 
| 4 | 
            -
            # in all of your git hooks being  | 
| 4 | 
            +
            # in all of your git hooks being copied from this file, allowing the framework
         | 
| 5 5 | 
             
            # to manage your hooks for you.
         | 
| 6 6 |  | 
| 7 7 | 
             
            # Prevent a Ruby stack trace from appearing when we interrupt the hook.
         | 
| @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            #!/usr/bin/env ruby
         | 
| 2 2 |  | 
| 3 3 | 
             
            # Entrypoint for Overcommit hook integration. Installing Overcommit will result
         | 
| 4 | 
            -
            # in all of your git hooks being  | 
| 4 | 
            +
            # in all of your git hooks being copied from this file, allowing the framework
         | 
| 5 5 | 
             
            # to manage your hooks for you.
         | 
| 6 6 |  | 
| 7 7 | 
             
            # Prevent a Ruby stack trace from appearing when we interrupt the hook.
         | 
| @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            #!/usr/bin/env ruby
         | 
| 2 2 |  | 
| 3 3 | 
             
            # Entrypoint for Overcommit hook integration. Installing Overcommit will result
         | 
| 4 | 
            -
            # in all of your git hooks being  | 
| 4 | 
            +
            # in all of your git hooks being copied from this file, allowing the framework
         | 
| 5 5 | 
             
            # to manage your hooks for you.
         | 
| 6 6 |  | 
| 7 7 | 
             
            # Prevent a Ruby stack trace from appearing when we interrupt the hook.
         | 
| @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            #!/usr/bin/env ruby
         | 
| 2 2 |  | 
| 3 3 | 
             
            # Entrypoint for Overcommit hook integration. Installing Overcommit will result
         | 
| 4 | 
            -
            # in all of your git hooks being  | 
| 4 | 
            +
            # in all of your git hooks being copied from this file, allowing the framework
         | 
| 5 5 | 
             
            # to manage your hooks for you.
         | 
| 6 6 |  | 
| 7 7 | 
             
            # Prevent a Ruby stack trace from appearing when we interrupt the hook.
         | 
    
        data/template-dir/hooks/pre-push
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            #!/usr/bin/env ruby
         | 
| 2 2 |  | 
| 3 3 | 
             
            # Entrypoint for Overcommit hook integration. Installing Overcommit will result
         | 
| 4 | 
            -
            # in all of your git hooks being  | 
| 4 | 
            +
            # in all of your git hooks being copied from this file, allowing the framework
         | 
| 5 5 | 
             
            # to manage your hooks for you.
         | 
| 6 6 |  | 
| 7 7 | 
             
            # Prevent a Ruby stack trace from appearing when we interrupt the hook.
         | 
| @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            #!/usr/bin/env ruby
         | 
| 2 2 |  | 
| 3 3 | 
             
            # Entrypoint for Overcommit hook integration. Installing Overcommit will result
         | 
| 4 | 
            -
            # in all of your git hooks being  | 
| 4 | 
            +
            # in all of your git hooks being copied from this file, allowing the framework
         | 
| 5 5 | 
             
            # to manage your hooks for you.
         | 
| 6 6 |  | 
| 7 7 | 
             
            # Prevent a Ruby stack trace from appearing when we interrupt the hook.
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: overcommit
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.35.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Brigade Engineering
         | 
| @@ -9,7 +9,7 @@ authors: | |
| 9 9 | 
             
            autorequire: 
         | 
| 10 10 | 
             
            bindir: bin
         | 
| 11 11 | 
             
            cert_chain: []
         | 
| 12 | 
            -
            date: 2016- | 
| 12 | 
            +
            date: 2016-08-09 00:00:00.000000000 Z
         | 
| 13 13 | 
             
            dependencies:
         | 
| 14 14 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 15 15 | 
             
              name: childprocess
         | 
| @@ -65,6 +65,7 @@ files: | |
| 65 65 | 
             
            - lib/overcommit/hook/base.rb
         | 
| 66 66 | 
             
            - lib/overcommit/hook/commit_msg/base.rb
         | 
| 67 67 | 
             
            - lib/overcommit/hook/commit_msg/capitalized_subject.rb
         | 
| 68 | 
            +
            - lib/overcommit/hook/commit_msg/commitplease.rb
         | 
| 68 69 | 
             
            - lib/overcommit/hook/commit_msg/empty_message.rb
         | 
| 69 70 | 
             
            - lib/overcommit/hook/commit_msg/gerrit_change_id.rb
         | 
| 70 71 | 
             
            - lib/overcommit/hook/commit_msg/hard_tabs.rb
         | 
| @@ -103,13 +104,14 @@ files: | |
| 103 104 | 
             
            - lib/overcommit/hook/pre_commit/author_name.rb
         | 
| 104 105 | 
             
            - lib/overcommit/hook/pre_commit/base.rb
         | 
| 105 106 | 
             
            - lib/overcommit/hook/pre_commit/berksfile_check.rb
         | 
| 106 | 
            -
            - lib/overcommit/hook/pre_commit/brakeman.rb
         | 
| 107 107 | 
             
            - lib/overcommit/hook/pre_commit/broken_symlinks.rb
         | 
| 108 | 
            +
            - lib/overcommit/hook/pre_commit/bundle_audit.rb
         | 
| 108 109 | 
             
            - lib/overcommit/hook/pre_commit/bundle_check.rb
         | 
| 109 110 | 
             
            - lib/overcommit/hook/pre_commit/bundle_outdated.rb
         | 
| 110 111 | 
             
            - lib/overcommit/hook/pre_commit/case_conflicts.rb
         | 
| 111 112 | 
             
            - lib/overcommit/hook/pre_commit/chamber_security.rb
         | 
| 112 113 | 
             
            - lib/overcommit/hook/pre_commit/coffee_lint.rb
         | 
| 114 | 
            +
            - lib/overcommit/hook/pre_commit/credo.rb
         | 
| 113 115 | 
             
            - lib/overcommit/hook/pre_commit/css_lint.rb
         | 
| 114 116 | 
             
            - lib/overcommit/hook/pre_commit/dogma.rb
         | 
| 115 117 | 
             
            - lib/overcommit/hook/pre_commit/es_lint.rb
         | 
| @@ -164,6 +166,7 @@ files: | |
| 164 166 | 
             
            - lib/overcommit/hook/pre_push/minitest.rb
         | 
| 165 167 | 
             
            - lib/overcommit/hook/pre_push/protected_branches.rb
         | 
| 166 168 | 
             
            - lib/overcommit/hook/pre_push/r_spec.rb
         | 
| 169 | 
            +
            - lib/overcommit/hook/pre_push/test_unit.rb
         | 
| 167 170 | 
             
            - lib/overcommit/hook/pre_rebase/base.rb
         | 
| 168 171 | 
             
            - lib/overcommit/hook/pre_rebase/merged_commits.rb
         | 
| 169 172 | 
             
            - lib/overcommit/hook/shared/bower_install.rb
         | 
| @@ -221,7 +224,7 @@ required_ruby_version: !ruby/object:Gem::Requirement | |
| 221 224 | 
             
              requirements:
         | 
| 222 225 | 
             
              - - ">="
         | 
| 223 226 | 
             
                - !ruby/object:Gem::Version
         | 
| 224 | 
            -
                  version:  | 
| 227 | 
            +
                  version: '2'
         | 
| 225 228 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 226 229 | 
             
              requirements:
         | 
| 227 230 | 
             
              - - ">="
         | 
| @@ -1,13 +0,0 @@ | |
| 1 | 
            -
            module Overcommit::Hook::PreCommit
         | 
| 2 | 
            -
              # Runs `brakeman` against any modified Ruby/Rails files.
         | 
| 3 | 
            -
              #
         | 
| 4 | 
            -
              # @see http://brakemanscanner.org/
         | 
| 5 | 
            -
              class Brakeman < Base
         | 
| 6 | 
            -
                def run
         | 
| 7 | 
            -
                  result = execute(command + [applicable_files.join(',')])
         | 
| 8 | 
            -
                  return :pass if result.success?
         | 
| 9 | 
            -
             | 
| 10 | 
            -
                  [:fail, result.stdout]
         | 
| 11 | 
            -
                end
         | 
| 12 | 
            -
              end
         | 
| 13 | 
            -
            end
         |