All Versions
94
Latest Version
Avg Release Cycle
57 days
Latest Release
-
Changelog History
Page 5
Changelog History
Page 5
-
v0.29.0 Changes
🔒 Important Security Fix
- 🛠 Fix vulnerability where disabling signature verification would not be caught
by signature verification, allowing an attacker to bypass the check. If you
disable signature verification in your configuration, you must rename the
option to
verify_signatures
and should audit your hooks.
🆕 New Features
- 👍 Allow nested arrays in
include
andexclude
options so lists of file glob patterns can be shared across hook configurations via YAML references - ➕ Add
NginxTest
pre-commit hook that checks nginx configuration files withnginx -t
- 🔧 Respect
core.commentchar
configuration when reading commit messages
🔄 Changes
- 🔌 Rename
verify_plugin_signatures
toverify_signatures
🐛 Bug Fixes
- 🛠 Fix
Jscs
pre-commit hook to handle the newjscs
exit codes introduced as of 2.2.0 - 🛠 Fix
Scalastyle
pre-commit hook to fail with non-zero exit statuses
- 🛠 Fix vulnerability where disabling signature verification would not be caught
by signature verification, allowing an attacker to bypass the check. If you
disable signature verification in your configuration, you must rename the
option to
-
v0.28.0 Changes
- Ensure
applicable_files
hook helper returns files in lexicographic order - ➕ Add
NpmInstall
post-checkout, post-commit, post-merge, and post-rewrite hooks - ➕ Add
PuppetLint
pre-commit hook that checks Puppet code with puppet-lint - ➕ Add
BowerInstall
post-checkout, post-commit, post-merge, and post-rewrite hooks - ➕ Add
BundleInstall
post-checkout, post-commit, post-merge, and post-rewrite hooks - ➕ Add
Sqlint
pre-commit hook that checks SQL code with sqlint - ➕ Add Windows support
- ➕ Add
Hlint
pre-commit hook that checks Haskell files with hlint - ➕ Add
ExecutePermissions
pre-commit hook that checks file mode for unnecessary execute permissions
- Ensure
-
v0.27.0 Changes
🆕 New Features
- ➕ Add
HtmlHint
pre-commit hook that checks HTML files with HTMLHint - ➕ Add support to the hook
execute
helper for accepting an optional list of splittable command arguments for transparently dealing with really long file lists and the operating system command length limit - ➕ Add
modified_files
helper toPostCheckout
andPostRewrite
hooks - ➕ Add
rewritten_commits
helper toPostRewrite
hooks - ➕ Add
gemfile
option to configuration file which allows aGemfile
to be loaded by Bundler to enforce particular gem versions during hook runs - ➕ Add support for
OVERCOMMIT_DEBUG
environment variable which toggles the display of additional verbose output from executed commands - ➕ Add support for defining
[hooks based on your existing git hooks](README.md#adding-existing-git-hooks)
within your
.overcommit.yml
(no Ruby code required) - ➕ Add support for filtering all hooks except a small list via the
ONLY
environment variable (similar toSKIP
except a whitelist instead of blacklist)
🔄 Changes
- Don't display "No applicable hook-type hooks to run" message unless debug mode is enabled
🐛 Bug Fixes
- 🛠 Fix pre-commit hook bug where amending a commit which breaks a symlink would result in that symlink not being included in the list of modified files
- 🛠 Fix
CaseConflicts
pre-commit hook handling of large sets of files - 🛠 Fix
SemiStandard
/Standard
hooks to read fromSTDOUT
instead ofSTDERR
and handle new output format - 🛠 Fix
commit-msg
hooks to handle large commit messages auto-generated by the--verbose
flag forgit commit
- ➕ Add
-
v0.26.0 Changes
🆕 New Features
- ➕ Add
EmptyMessage
commit-msg hook that reports commits messages that are empty or contain only whitespace - ➕ Add
env
hook configuration option that allows you to set values for environment variables during the course of a particular hook's run
🐛 Bug Fixes
- 🛠 Fix handling of paths with spaces in the name
- 🛠 Fix
CaseConflicts
pre-commit hook to not fail on initial commit - 🛠 Fix handling of files removed or renamed in a commit amendment
- ➕ Add
-
v0.25.0 Changes
🆕 New Features
- ➕ Add
Vint
pre-commit hook that checks Vim script with Vint - ➕ Add
Scalariform
pre-commit hook that checks formatting of Scala code with Scalariform - ➕ Add
SlimLint
pre-commit hook that analyzes Slim templates with Slim-Lint
🔄 Changes
- 👕 Include SVG files in
ImageOptim
,XmlLint
, andXmlSyntax
pre-commit hooks by default - 0️⃣ Make
IndexTags
hooks quiet by default - 📇 Rename
Rubocop
pre-commit hook toRuboCop
to match the project's proper name
🐛 Bug Fixes
- 🛠 Fix
HardTabs
andTrailingWhitespace
pre-commit hooks to include line information in errors, making it work as expected whenproblem_on_unmodified_line
is set to something other thanreport
- 🛠 Fix handling of changing a symlink to a directory on commit amendment so it is not included in the list of modified files for pre-commit hooks
- 🖐 Handle empty commit messages in
CapitalizedSubject
,SingleLineSubject
,HardTabs
,TextWidth
, andTrailingPeriod
commit-msg hooks
- ➕ Add
-
v0.24.0 Changes
🆕 New Features
- Add
required_library
/required_libraries
hook option which specifies a list of paths a hook should load withKernel.require
before running - ➕ Add
JsLint
pre-commit hook that checks the style of JavaScript files with JSLint - ➕ Add
RubyLint
pre-commit hook that statically analyzes Ruby files with ruby-lint - ➕ Add
Jsl
pre-commit hook that checks the style of JavaScript files with JavaScript Lint - ➕ Add
CapitalizedSubject
commit message hook - ➕ Add
GoVet
pre-commit hook that examines Go source files with vet - ➕ Add
XmlSyntax
pre-commit hook to check that XML files are valid - ➕ Add
CaseConflicts
pre-commit hook which checks for file names in the same directory which differ by letter casing - Preserve existing git hooks in a repository when installing Overcommit hooks, and restore them on uninstall
- ➕ Add
RSpec
pre-push hook that runs RSpec tests before pushing to remote - ➕ Add
ProtectedBranches
pre-push hook that prevents destructive pushes (deletions or force pushes) to specified branches - ➕ Add
SpellCheck
commit-msg hook to check commit messages for misspelled words - ➕ Add support for
pre-rebase
hooks - ➕ Add
SubmoduleStatus
post-checkout
,post-commit
,post-merge
, andpost-rewrite
hooks that warn when submodules are uninitialized, out of date with the current index, or contain merge conflicts
🔄 Changes
- 0️⃣ Disable
ShellCheck
pre-commit hook by default - 💎 Switch
ImageOptim
hook to use executable instead of Ruby API - 👌 Improve
CoffeeLint
pre-commit hook to differentiate between errors and warnings - 👌 Improve
GoLint
pre-commit hook to extract file and line information - 🔄 Change configuration loading behavior to prefer user-defined
ALL
hook configuration over defaultALL
configuration, and user-defined hook configuration over defaultALL
configuration - 🔄 Change hook summary message to mention warnings if there were any
- 0️⃣ Disable almost all hooks by default. You will now need to explicitly enable
almost all hooks yourself in your
.overcommit.yml
. If you are migrating fromovercommit
0.23.0 and want to use the default configuration that shipped with that version, copy the default configuration from 0.23.0 - ⚡️ Update
ScssLint
pre-commit hook to properly handle special exit code that signals all files were filtered by exclusions (new as ofscss-lint
0.36.0) - ⚡️ Update
childprocess
dependency to minimum 0.5.6 - Change default value for
problem_on_unmodified_line
fromwarn
toreport
- ⚡️ Update
Rubocop
pre-commit hook to pass--display-cop-names
flag so cop names appear in output - ⬇️ Drop support for returning
:good
/:bad
results from hooks (was deprecated in 0.15.0) - ✂ Remove
PryBinding
pre-commit hook since its functionality is provided by theRubocop
pre-commit hook
🐛 Bug Fixes
- 🛠 Fix
LocalPathsInGemfile
to not report lints for commented paths - 🛠 Fix
CssLint
pre-commit hook to ignore blank lines incsslint
output - 🛠 Fix error instructions typo in
BundleCheck
pre-commit hook - 🛠 Fix bug where stashed changes were not restored when plugin signature validation failed
- Don't clear working tree after pre-commit hook when only submodule changes are present
- ⏪ Restore file modification times of unstaged files in addition to staged files in pre-commit hook runs
- Add
-
v0.23.0 Changes
🆕 New Features
- ➕ Add pre-commit ESLint hook
- ➕ Add pre-commit hooks for standard and semistandard JavaScript linters
- ➕ Add support for
post-commit
,post-merge
, andpost-rewrite
hooks - ➕ Add
GitGuilt
post-commit
hook to display changes in blame ownership for modified files - Add
execute_in_background
helper to provide a standardized way to start long-running processes without blocking the hook run - ➕ Add
IndexTags
hook forpost-commit
,post-merge
, andpost-rewrite
hook types so tags index can always be kept up to date viactags
- ➕ Add
W3cCss
andW3cHtml
pre-commit hooks which integrate with thew3c_validator
gem - ➕ Add
Scalastyle
pre-commit hook that runs scalastyle against Scala code - ➕ Add
XmlLint
pre-commit hook to check XML files with xmllint - ➕ Add
JavaCheckstyle
pre-commit hook to check style of Java files with checkstyle - ➕ Add
Pep8
pre-commit hook to check Python files with pep8 - ➕ Add
Pyflakes
pre-commit hook to check Python files with pyflakes - ➕ Add
Pep257
pre-commit hook to check Python files with pep257 - ➕ Add
HtmlTidy
pre-commit hook to check HTML files with tidy - ➕ Add
Pylint
pre-commit hook to check Python files with pylint
🔄 Changes
- 📜 Parse JSHint errors more precisely
- ✂ Remove
JsxHint
andJsxcs
pre-commit hooks in favor of using therequired_executable
option on the JsHint and Jscs pre-commit hooks - 🔄 Change behavior of configuration options containing array values to always replace the old value instead of appending to it
- 🔄 Change
ImageOptim
hook to fail instead of warn if theimage_optim
gem cannot be found - ✂ Remove
ctags_arguments
option fromIndexTags
hooks - 👌 Improve
PythonFlake8
pre-commit hook to differentiate between errors and warnings - 👌 Improve
CssLint
pre-commit hook to differentiate between errors and warnings
🐛 Bug Fixes
- 🛠 Fix
--run
flag to consider all lines in all files as modified rather than none - 🛠 Fix
--run
flag to exclude submodule directories from the list of modified files - 🛠 Fix handling of files with spaces in their name when calculating modified lines in a file
-
v0.22.0 Changes
- 0️⃣ Disable
Reek
pre-commit hook by default - 👍 Allow
required_executable
to include paths that are in the repo root - ➕ Add
command
hook option allowing the actual command that is executed to be configured (useful to invoke command viabundle exec
or similar) - ➕ Add
flags
hook option allowing the flags passed on the command line to be configured
- 0️⃣ Disable
-
v0.21.0 Changes
- 🔄 Change
HardTabs
,MergeConflicts
, andPryBinding
pre-commit hooks to bequiet
by default - 👕 Switch
TravisLint
pre-commit hook from deprecatedtravis-lint
gem totravis
gem - ➕ Add .projections.json configuration file
- ➕ Add pre-commit static analysis and linting for sh/bash scripts with ShellCheck
- 👉 Use
--verbose
flag when running JSCS to include name of offending rule
- 🔄 Change
-
v0.20.0 Changes
- ➕ Add
--run
flag which runs all configured pre-commit hooks against the entire repository - Fix installer to work with Overcommit hooks created via
GIT_TEMPLATE_DIR
- 🛠 Fix hook runner to not display skip message unless hook would have actually run
- Change
ImageOptim
hook to useskip_missing_workers
option and update dependency to 0.18.0 - ✂ Remove interactive prompt support from overcommit hooks
- 🔄 Change hook signing from interactive flow to be done via
overcommit --sign <hook-type>
command
- ➕ Add