Pre Commit Hooks Versions Save

Some out-of-the-box hooks for pre-commit

v4.6.0

3 weeks ago

Features

  • requirements-txt-fixer: remove duplicate packages.
    • #1014 PR by @vhoulbreque-withings.
    • #960 issue @csibe17.

Migrating

  • fix-encoding-pragma: deprecated -- will be removed in 5.0.0. use pyupgrade or some other tool.
    • #1033 PR by @mxr.
    • #1032 issue by @mxr.

v4.5.0

6 months ago

Features

  • requirements-txt-fixer: also sort constraints.txt by default.
    • #857 PR by @lev-blit.
    • #830 issue by @PLPeeters.
  • debug-statements: add bpdb debugger.
    • #942 PR by @mwip.
    • #941 issue by @mwip.

Fixes

  • file-contents-sorter: fix sorting an empty file.
    • #944 PR by @RoelAdriaans.
    • #935 issue by @paduszyk.
  • double-quote-string-fixer: don't rewrite inside f-strings in 3.12+.
    • #973 PR by @asottile.
    • #971 issue by @XuehaiPan.

Migrating

  • now requires python >= 3.8.
    • #926 PR by @asottile.
    • #927 PR by @asottile.

v4.4.0

1 year ago

Features

  • forbid-submodules: new hook which outright bans submodules.
    • #815 PR by @asottile.
    • #707 issue by @ChiefGokhlayeh.

v4.3.0

1 year ago

Features

  • check-executables-have-shebangs: use git config core.fileMode to determine if it should query git.
    • #730 PR by @Kurt-von-Laven.
  • name-tests-test: add --pytest-test-first test convention.
    • #779 PR by @asottile.

Fixes

  • check-shebang-scripts-are-executable: update windows instructions.
    • #774 PR by @mdeweerd.
    • #770 issue by @mdeweerd.
  • check-toml: use stdlib tomllib when available.
    • #771 PR by @DanielNoord.
    • #755 issue by @sognetic.
  • check-added-large-files: don't run on non-file stages.
    • #778 PR by @asottile.
    • #777 issue by @skyj.

v4.2.0

2 years ago

Features

  • name-tests-test: updated display text.
    • #713 PR by @asottile.
  • check-docstring-first: make output more parsable.
    • #748 PR by @asottile.
  • check-merge-conflict: make output more parsable.
    • #748 PR by @asottile.
  • debug-statements: make output more parsable.
    • #748 PR by @asottile.

Fixes

  • check-merge-conflict: fix detection of ====== conflict marker on windows.
    • #748 PR by @asottile.

Updating

  • Drop python<3.7.
    • #719 PR by @asottile.
  • Changed default branch from master to main.
    • #744 PR by @asottile.

v4.1.0

2 years ago

Features

  • debug-statements: add pdbr debugger.
    • #614 PR by @cansarigol.
  • detect-private-key: add detection for additional key types.
    • #658 PR by @ljmf00.
  • check-executables-have-shebangs: improve messaging on windows.
    • #689 PR by @pujitm.
    • #686 issue by @jmerdich.
  • check-added-large-files: support --enforce-all with git-lfs.
    • #674 PR by @amartani.
    • #560 issue by @jeremy-coulon.

Fixes

  • check-case-conflict: improve performance.
    • #626 PR by @guykisel.
    • #625 issue by @guykisel.
  • forbid-new-submodules: fix false-negatives for pre-push.
    • #619 PR by @m-khvoinitsky.
    • #609 issue by @m-khvoinitsky.
  • check-merge-conflict: fix execution in git worktrees.
    • #662 PR by @errsyn.
    • #638 issue by @daschuer.

Misc.

  • Normalize case of hook names and descriptions.
    • #671 PR by @dennisroche.
    • #673 PR by @revolter.

v4.0.1

2 years ago

Fixes

  • check-shebang-scripts-are-executable fix entry point.
    • #602 issue by @Person-93.
    • #603 PR by @scop.

v4.0.0

2 years ago

Features

  • check-json: report duplicate keys.
    • #558 PR by @AdityaKhursale.
    • #554 issue by @adamchainz.
  • no-commit-to-branch: add main to default blocked branches.
    • #565 PR by @ndevenish.
  • check-case-conflict: check conflicts in directory names as well.
    • #575 PR by @slsyy.
    • #70 issue by @andyjack.
  • check-vcs-permalinks: forbid other branch names.
    • #582 PR by @jack1142.
    • #581 issue by @jack1142.
  • check-shebang-scripts-are-executable: new hook which ensures shebang'd scripts are executable.
    • #545 PR by @scop.

Fixes

  • check-executables-have-shebangs: Short circuit shebang lookup on windows.
    • #544 PR by @scop.
  • requirements-txt-fixer: Fix comments which have indentation
    • #549 PR by @greshilov.
    • #548 issue by @greshilov.
  • pretty-format-json: write to stdout using UTF-8 encoding.
    • #571 PR by @jack1142.
    • #570 issue by @jack1142.
  • Use more inclusive language.
    • #599 PR by @asottile.

Breaking changes

  • Remove deprecated hooks: flake8, pyflakes, autopep8-wrapper.
    • #597 PR by @asottile.

v3.4.0

3 years ago

Features

  • file-contents-sorter: Add --unique argument
    • #524 PR by @danielhoherd.
  • check-vcs-permalinks: Add --additional-github-domain option
    • #530 PR by @youngminz.
  • New hook: destroyed-symlinks to detect unintentional symlink-breakages on windows.
    • #511 PR by @m-khvoinitsky.

v3.3.0

3 years ago

Features

  • file-contents-sorter: add --ignore-case option for case-insensitive sorting
    • #514 PR by @Julian.
  • check-added-large-files: add --enforce-all option to check non-added files as well
    • #519 PR by @mshawcroft.
    • #518 issue by @mshawcroft.
  • fix-byte-order-marker: new hook which fixes UTF-8 byte-order marker.
    • #522 PR by @jgowdy.

Deprecations

  • check-byte-order-marker is now deprecated for fix-byte-order-marker