Releases: sds/overcommit
Overcommit 0.35.0
- Drop support for Ruby 1.9.3
- Fix
JavaCheckstylepre-commit hook to properly categorizeINFOandWARNmessages - Add
TestUnitpre-push hook to run tests withTest::Unit - Add
BundleAuditpre-commit hook to scan gems for vulnerabilities withbundle-audit - Copy hook files instead of symlinking
- Add
Credopre-commit hook to check Elixir files - Remove
Brakemanpre-commit hook as it could erroneously report clean runs depending on which files were committed to your repository. You should run this tool in a separate job/task in your CI runs as it doesn't make for a good pre-commit hook. - Add
Commitpleasepre-commit hook which checks commit messages withcommitplease
Overcommit 0.34.2
A hotfix release to address quirks with using Overcommit with the new commit.gpgsign Git configuration option introduced in Git 2.0+.
- Add
--no-colorflag to allgit diff/git showcalls to override local configuration - Ignore
commit.gpgsignconfiguration option when creating stash commits in pre-commit hooks
Overcommit 0.34.1
A hotfix release to fix installation of Overcommit on systems with newer versions of RubyGems, which now preserve symlinks by default (previous behavior was to convert symlinks to regular files).
- Switch template directory hooks from symlinks to regular files so gem can be installed on Windows
Overcommit 0.34.0
Mostly bug fixes with a few minor enhancements.
- Fix
Scalastylepre-commit hook to capture messages with no line number - Fix
CoffeeLintpre-commit hook detection of modified lines - Fix
Jscspre-commit hook to work withjscs3.0.0+ - Fix
CapitalizedSubjectpre-commit hook to ignore commit message subjects
starting withfixup!orsquash!special prefixes - Add
BundleOutdatedpre-commit hook to report gems in theGemfile.lock
that have newer versions available - Add
destructive_onlyoption toProtectedBranchespre-push hook - Include
.rufiles inRuboCoppre-commit hook - Fix
TextWidthto ignore specialfixup!/squash!prefixes in commit
message subjects when determining width of line
Overcommit 0.33.0
The most notable update in this release is Overcommit's change in behavior to automatically invoke a Bundler context when running a CLI command if the gemfile option is specified in your .overcommit.yml. This saves you from having to prepend bundle exec ... to the overcommit command in order to use gems specified in the Gemfile specified by gemfile.
New Features
- Add global
quietoption which silences all hook output except in the case
of warning or error
Changes
- Official support for Rubinius has been dropped. It will probably still work
for most use cases, but parallelized hook runs may be problematic. If someone
from the community is willing to step up to support it, we'll gladly add it
back - Change
overcommitCLI to automatically run within a Bundler context if the
gemfileoption is specified. This mainly saves you from needing
bundle execwhen runningovercommit --run
Bug Fixes
- Fix
AuthorName/AuthorEmailpre-commit hooks to respect
GIT_AUTHOR_NAME/GIT_AUTHOR_EMAILenvironment variables, respectively - Fix
JavaCheckstylepre-commit hook to ignore[ERROR]prefix when parsing
output messages
Overcommit 0.32.0
This major release introduces support for running hooks in parallel, which is enabled by default. If you are using MRI Ruby, the benefits are most noticeable if your hooks run other executables (e.g. you run static analysis tools like rubocop or scss-lint), since threads in MRI Ruby cannot truly run in parallel due to the Global Interpreter Lock (GIL). However, if the threads are blocked waiting on a child process, then they'll parallelize just fine.
New Features
- Hooks are now run in parallel by default
- Add
concurrencyglobal option allowing you to specify the number of threads
to use when running hooks concurrently - Add
parallelizehook option which specifies whether or not this hook should
be run in parallel (default istrue) - Add
processorshook option allowing you to specify how many processing
units a hook should require - Add
ForbiddenBranchespre-commit hook which prevents creating a commit
on any blacklisted branch by name/pattern - Add
MessageFormatcommit-msg hook to validate commit messages against
a regex pattern
Changes
- Improve error message output when there is a problem processing messages
viaextract_messagespre-commit hook helper - Switch
ScssLintpre-commit hook to use the JSON output formatter instead
of the default formatter - Change tense of hook descriptions from progressive indicative form ("Running")
to indicative present form ("Run") so output reads better in parallel hook
runs
Bug Fixes
- Fix bug where amending a commit with command line arguments containing
Unicode characters could cause a crash due to invalid byte sequences - Fix
Minitestpre-push hook to include all test files
Overcommit 0.32.0.rc1
This is a prerelease to help us test the new parallelism features of Overcommit.
You can install it by running gem install overcommit --pre.
See the parallelize and processors hook options documentation and the Concurrency section for details.
Overcommit 0.31.0
A relatively small release mostly consisting of bug fixes.
New Features
- Add support for glob patterns to
ProtectedBranchespre-push hook - Add
Mdlpre-commit hook to runmdlon Markdown files
Changes
- Improve error message when gem file specified by
gemfileoption has not had a dependency installed
Bug Fixes
- Add
--without-colorflag toRailsBestPracticespre-commit hook to fix parsing issues due to color escape sequences - Fix
RuboCoppre-commit hook to not swallow cop messages whenparsergem warnings are output to STDERR
Overcommit 0.30.0
Fixes a showstopper bug that prevented the use of existing hook scripts when invoked via the --run flag, along with some new hooks and other bug fixes.
New Features
- Add
Dogmapre-commit hook to lint Elixir files with
dogma files - Add
Minitestpre-push hook to run Minitest tests - Add
RailsBestPracticespre-commit hook which lints code with
rails_best_practices
Bug Fixes
- Fix
--runflag to not block reading STDIN when using existing hook scripts - Fix
RuboCoppre-commit hook to fail when RuboCop version specified by
Bundler context is not available - Fix
TextWidthcommit-msg hook to not include newline characters in
calculated width
Overcommit 0.29.1
A bugfix release that addresses a breakage in hook signing.
- Raise error when hooks are defined with invalid names (i.e. non-alphanumeric
characters) - Fix hook signing when specifying hook name
- Fix
BundleCheckpre-commit hook to not report false negatives when running
viaovercommit --runwith local changes