scieloorg / opac

SciELO - On-line Public Access Catalog - OPAC
BSD 2-Clause "Simplified" License
9 stars 22 forks source link

Pin pre-commit to latest version 3.7.1 #2995

Open pyup-bot opened 2 months ago

pyup-bot commented 2 months ago

This PR pins pre-commit to the latest release 3.7.1.

Changelog ### 3.7.1 ``` ================== Fixes - Fix `language: rust` default language version check when `rust-toolchain.toml` is present. - issue by gaborbernat. - 3201 PR by asottile. ``` ### 3.7.0 ``` ================== Features - Use a tty for `docker` and `docker_image` hooks when `--color` is specified. - 3122 PR by glehmann. Fixes - Fix `fail_fast` for individual hooks stopping when previous hooks had failed. - 3167 issue by tp832944. - 3168 PR by asottile. Updating - The per-hook behaviour of `fail_fast` was fixed. If you want the pre-3.7.0 behaviour, add `fail_fast: true` to all hooks before the last `fail_fast` hook. ``` ### 3.6.2 ``` ================== Fixes - Fix building golang hooks during `git commit --all`. - 3130 PR by asottile. - 2722 issue by pestanko and matthewhughes934. ``` ### 3.6.1 ``` ================== Fixes - Remove `PYTHONEXECUTABLE` from environment when running. - 3110 PR by untitaker. - Handle staged-files-only with only a crlf diff. - 3126 PR by asottile. - issue by tyyrok. ``` ### 3.6.0 ``` ================== Features - Check `minimum_pre_commit_version` first when parsing configs. - 3092 PR by asottile. Fixes - Fix deprecation warnings for `importlib.resources`. - 3043 PR by asottile. - Fix deprecation warnings for rmtree. - 3079 PR by edgarrmondragon. Updating - Drop support for python<3.9. - 3042 PR by asottile. - 3093 PR by asottile. ``` ### 3.5.0 ``` ================== Features - Improve performance of `check-hooks-apply` and `check-useless-excludes`. - 2998 PR by mxr. - 2935 issue by mxr. Fixes - Use `time.monotonic()` for more accurate hook timing. - 3024 PR by adamchainz. Migrating - Require npm 6.x+ for `language: node` hooks. - 2996 PR by RoelAdriaans. - 1983 issue by henryiii. ``` ### 3.4.0 ``` ================== Features - Add `language: haskell`. - 2932 by alunduil. - Improve cpu count detection when run under cgroups. - 2979 PR by jdb8. - 2978 issue by jdb8. Fixes - Handle negative exit codes from hooks receiving posix signals. - 2971 PR by chriskuehl. - 2970 issue by chriskuehl. ``` ### 3.3.3 ``` ================== Fixes - Work around OS packagers setting `--install-dir` / `--bin-dir` in gem settings. - 2905 PR by jaysoffian. - 2799 issue by lmilbaum. ``` ### 3.3.2 ``` ================== Fixes - Work around `r` on windows sometimes double-un-quoting arguments. - 2885 PR by lorenzwalthert. - 2870 issue by lorenzwalthert. ``` ### 3.3.1 ``` ================== Fixes - Work around `git` partial clone bug for `autoupdate` on windows. - 2866 PR by asottile. - 2865 issue by adehad. ``` ### 3.3.0 ``` ================== Features - Upgrade ruby-build. - 2846 PR by jalessio. - Use blobless clone for faster autoupdate. - 2859 PR by asottile. - Add `-j` / `--jobs` argument to `autoupdate` for parallel execution. - 2863 PR by asottile. - issue by gaborbernat. ``` ### 3.2.2 ``` ================== Fixes - Fix support for swift >= 5.8. - 2836 PR by edelabar. - 2835 issue by kgrobelny-intive. ``` ### 3.2.1 ``` ================== Fixes - Fix `language_version` for `language: rust` without global `rustup`. - 2823 issue by daschuer. - 2827 PR by asottile. ``` ### 3.2.0 ``` ================== Features - Allow `pre-commit`, `pre-push`, and `pre-merge-commit` as `stages`. - 2732 issue by asottile. - 2808 PR by asottile. - Add `pre-rebase` hook support. - 2582 issue by BrutalSimplicity. - 2725 PR by mgaligniana. Fixes - Remove bulky cargo cache from `language: rust` installs. - 2820 PR by asottile. ``` ### 3.1.1 ``` ================== Fixes - Fix `rust` with `language_version` and a non-writable host `RUSTUP_HOME`. - pre-commit-ci/issues173 by Swiftb0y. - 2788 by asottile. ``` ### 3.1.0 ``` ================== Fixes - Fix `dotnet` for `.sln`-based hooks for dotnet>=7.0.200. - 2763 PR by m-rsha. - Prevent stashing when `diff` fails to execute. - 2774 PR by asottile. - 2773 issue by strubbly. - Dependencies are no longer sorted in repository key. - 2776 PR by asottile. Updating - Deprecate `language: python_venv`. Use `language: python` instead. - 2746 PR by asottile. - 2734 issue by asottile. ``` ### 3.0.4 ``` ================== Fixes - Fix hook diff detection for files affected by `--textconv`. - 2743 PR by adamchainz. - 2743 issue by adamchainz. ``` ### 3.0.3 ``` ================== Fixes - Revert "Prevent local `Gemfile` from interfering with hook execution.". - 2739 issue by Roguelazer. - 2740 PR by asottile. ``` ### 3.0.2 ``` ================== Fixes - Prevent local `Gemfile` from interfering with hook execution. - 2727 PR by asottile. - Fix `language: r`, `repo: local` hooks - pre-commit-ci/issues107 by lorenzwalthert. - 2728 PR by asottile. ``` ### 3.0.1 ``` ================== Fixes - Ensure coursier hooks are available offline after install. - 2723 PR by asottile. ``` ### 3.0.0 ``` ================== Features - Make `language: golang` bootstrap `go` if not present. - 2651 PR by taoufik07. - 2649 issue by taoufik07. - `language: coursier` now supports `additional_dependencies` and `repo: local` - 2702 PR by asottile. - Upgrade `ruby-build` to `20221225`. - 2718 PR by jalessio. Fixes - Improve error message for invalid yaml for `pre-commit autoupdate`. - 2686 PR by asottile. - 2685 issue by CarstenGrohmann. - `repo: local` no longer provisions an empty `git` repo. - 2699 PR by asottile. Updating - Drop support for python<3.8 - 2655 PR by asottile. - Drop support for top-level list, use `pre-commit migrate-config` to update. - 2656 PR by asottile. - Drop support for `sha` to specify revision, use `pre-commit migrate-config` to update. - 2657 PR by asottile. - Remove `pre-commit-validate-config` and `pre-commit-validate-manifest`, use `pre-commit validate-config` and `pre-commit validate-manifest` instead. - 2658 PR by asottile. - `language: golang` hooks must use `go.mod` to specify dependencies - 2672 PR by taoufik07. ``` ### 2.21.0 ``` =================== Features - Require new-enough virtualenv to prevent 3.10 breakage - 2467 PR by asottile. - Respect aliases with `SKIP` for environment install. - 2480 PR by kmARC. - 2478 issue by kmARC. - Allow `pre-commit run --files` against unmerged paths. - 2484 PR by asottile. - Also apply regex warnings to `repo: local` hooks. - 2524 PR by chrisRedwine. - 2521 issue by asottile. - `rust` is now a "first class" language -- supporting `language_version` and installation when not present. - 2534 PR by Holzhaus. - `r` now uses more-reliable binary installation. - 2460 PR by lorenzwalthert. - `GIT_ALLOW_PROTOCOL` is now passed through for git operations. - 2555 PR by asottile. - `GIT_ASKPASS` is now passed through for git operations. - 2564 PR by mattp-. - Remove `toml` dependency by using `cargo add` directly. - 2568 PR by m-rsha. - Support `dotnet` hooks which have dotted prefixes. - 2641 PR by rkm. - 2629 issue by rkm. Fixes - Properly adjust `--commit-msg-filename` if run from a sub directory. - 2459 PR by asottile. - Simplify `--intent-to-add` detection by using `git diff`. - 2580 PR by m-rsha. - Fix `R.exe` selection on windows. - 2605 PR by lorenzwalthert. - 2599 issue by SInginc. - Skip default `nuget` source when installing `dotnet` packages. - 2642 PR by rkm. ``` ### 2.20.0 ``` =================== Features - Expose `source` and `object-name` (positional args) of `prepare-commit-msg` hook as `PRE_COMMIT_COMIT_MSG_SOURCE` and `PRE_COMMIT_COMMIT_OBJECT_NAME`. - 2407 PR by M-Whitaker. - 2406 issue by M-Whitaker. Fixes - Fix `language: ruby` installs when `--user-install` is set in gemrc. - 2394 PR by narpfel. - 2393 issue by narpfel. - Adjust pty setup for solaris. - 2390 PR by gaige. - 2389 issue by gaige. - Remove unused `--config` option from `gc`, `sample-config`, `validate-config`, `validate-manifest` sub-commands. - 2429 PR by asottile. ``` ### 2.19.0 ``` =================== Features - Allow multiple outputs from `language: dotnet` hooks. - 2332 PR by WallucePinkham. - Add more information to `healthy()` failure. - 2348 PR by asottile. - Upgrade ruby-build. - 2342 PR by jalessio. - Add `pre-commit validate-config` / `pre-commit validate-manifest` and deprecate `pre-commit-validate-config` and `pre-commit-validate-manifest`. - 2362 PR by asottile. Fixes - Fix `pre-push` when pushed ref contains spaces. - 2345 PR by wwade. - 2344 issue by wwade. Updating - Change `pre-commit-validate-config` / `pre-commit-validate-manifest` to `pre-commit validate-config` / `pre-commit validate-manifest`. - 2362 PR by asottile. ``` ### 2.18.1 ``` =================== Fixes - Fix regression for `repo: local` hooks running `python<3.7` - 2324 PR by asottile. ``` ### 2.18.0 ``` =================== Features - Keep `GIT_HTTP_PROXY_AUTHMETHOD` in git environ. - 2272 PR by VincentBerthier. - 2271 issue by VincentBerthier. - Support both `cs` and `coursier` executables for coursier hooks. - 2293 PR by Holzhaus. - Include more information in errors for `language_version` / `additional_dependencies` for languages which do not support them. - 2315 PR by asottile. - Have autoupdate preferentially pick tags which look like versions when there are multiple equivalent tags. - 2312 PR by mblayman. - 2311 issue by mblayman. - Upgrade `ruby-build`. - 2319 PR by jalessio. - Add top level `default_install_hook_types` which will be installed when `--hook-types` is not specified in `pre-commit install`. - 2322 PR by asottile. Fixes - Fix typo in help message for `--from-ref` and `--to-ref`. - 2266 PR by leetrout. - Prioritize binary builds for R dependencies. - 2277 PR by lorenzwalthert. - Fix handling of git worktrees. - 2252 PR by daschuer. - Fix handling of `$R_HOME` for R hooks. - 2301 PR by jeff-m-sullivan. - 2300 issue by jeff-m-sullivan. - Fix a rare race condition in change stashing. - 2323 PR by asottile. - 2287 issue by ian-h-chamberlain. Updating - Remove python3.6 support. Note that pre-commit still supports running hooks written in older versions, but pre-commit itself requires python 3.7+. - 2215 PR by asottile. - pre-commit has migrated from the `master` branch to `main`. - 2302 PR by asottile. ``` ### 2.17.0 ``` =================== Features - add warnings for regexes containing `[\\/]`. - 2151 issue by sanjioh. - 2154 PR by kuviokelluja. - upgrade supported ruby versions. - 2205 PR by jalessio. - allow `language: conda` to use `mamba` or `micromamba` via `PRE_COMMIT_USE_MAMBA=1` or `PRE_COMMIT_USE_MICROMAMBA=1` respectively. - 2204 issue by janjagusch. - 2207 PR by xhochy. - display `git --version` in error report. - 2210 PR by asottile. - add `language: lua` as a supported language. - 2158 PR by mblayman. Fixes - temporarily add `setuptools` to the zipapp. - 2122 issue by andreoliwa. - a737d5f commit by asottile. - use `go install` instead of `go get` for go 1.18+ support. - 2161 PR by schmir. - fix `language: r` with a local renv and `RENV_PROJECT` set. - 2170 PR by lorenzwalthert. - forbid overriding `entry` in `language: meta` hooks which breaks them. - 2180 issue by DanKaplanSES. - 2181 PR by asottile. - always use `!/bin/sh` on windows for hook script. - 2182 issue by hushigome-visco. - 2187 PR by asottile. ``` ### 2.16.0 ``` =================== Features - add warning for regexes containing `[\/]` or `[/\\]`. - 2053 PR by radek-sprta. - 2043 issue by asottile. - move hook template back to `bash` resolving shebang-portability issues. - 2065 PR by asottile. - add support for `fail_fast` at the individual hook level. - 2097 PR by colens3. - 1143 issue by potiuk. - allow passthrough of `GIT_CONFIG_KEY_*`, `GIT_CONFIG_VALUE_*`, and `GIT_CONFIG_COUNT`. - 2136 PR by emzeat. Fixes - fix pre-commit autoupdate for `core.useBuiltinFSMonitor=true` on windows. - 2047 PR by asottile. - 2046 issue by lcnittl. - fix temporary file stashing with for `submodule.recurse=1`. - 2071 PR by asottile. - 2063 issue by a666. - ban broken importlib-resources versions. - 2098 PR by asottile. - replace `exit(...)` with `raise SystemExit(...)` for portability. - 2103 PR by asottile. - 2104 PR by asottile. ``` ### 2.15.0 ``` =================== Features - add support for hooks written in `dart`. - 2027 PR by asottile. - add support for `post-rewrite` hooks. - 2036 PR by uSpike. - 2035 issue by uSpike. Fixes - fix `check-useless-excludes` with exclude matching broken symlink. - 2029 PR by asottile. - 2019 issue by pkoch. - eliminate duplicate mutable sha warning messages for `pre-commit autoupdate`. - 2030 PR by asottile. - 2010 issue by graingert. ``` ### 2.14.1 ``` =================== Fixes - fix force-push of disparate histories using git>=2.28. - 2005 PR by asottile. - 2002 issue by bogusfocused. - fix `check-useless-excludes` and `check-hooks-apply` matching non-root `.pre-commit-config.yaml`. - 2026 PR by asottile. - pre-commit-ci/issues84 issue by billsioros. ``` ### 2.14.0 ``` =================== Features - During `pre-push` hooks, expose local branch as `PRE_COMMIT_LOCAL_BRANCH`. - 1947 PR by FlorentClarret. - 1410 issue by MaicoTimmerman. - Improve container id detection for docker-beside-docker with custom hostname. - 1919 PR by adarnimrod. - 1918 issue by adarnimrod. Fixes - Read legacy hooks in an encoding-agnostic way. - 1943 PR by asottile. - 1942 issue by sbienkow-ninja. - Fix execution of docker hooks for docker-in-docker. - 1997 PR by asottile. - 1978 issue by robin-moss. ``` ### 2.13.0 ``` =================== Features - Setting `SKIP=...` skips installation as well. - 1875 PR by asottile. - pre-commit-ci/issues53 issue by TylerYep. - Attempt to mount from host with docker-in-docker. - 1888 PR by okainov. - 1387 issue by okainov. - Enable `repo: local` for `r` hooks. - 1878 PR by lorenzwalthert. - Upgrade `ruby-build` and `rbenv`. - 1913 PR by jalessio. Fixes - Better detect `r` packages. - 1898 PR by lorenzwalthert. - Avoid warnings with mismatched `renv` versions. - 1841 PR by lorenzwalthert. - Reproducibly produce ruby tar resources. - 1915 PR by asottile. ``` ### 2.12.1 ``` =================== Fixes - Fix race condition when stashing files in multiple parallel invocations - 1881 PR by adamchainz. - 1880 issue by adamchainz. ``` ### 2.12.0 ``` =================== Features - Upgrade rbenv. - 1854 PR by asottile. - 1848 issue by sirosen. Fixes - Give command length a little more room when running batch files on windows so underlying commands can expand further. - 1864 PR by asottile. - pre-commit/mirrors-prettier7 issue by DeltaXWizard. - Fix permissions of root folder in ruby archives. - 1868 PR by asottile. ``` ### 2.11.1 ``` =================== Fixes - Fix r hooks when hook repo is a package - 1831 PR by lorenzwalthert. ``` ### 2.11.0 ``` =================== Features - Improve warning for mutable ref. - 1809 PR by JamMarHer. - Add support for `post-merge` hook. - 1800 PR by psacawa. - 1762 issue by psacawa. - Add `r` as a supported hook language. - 1799 PR by lorenzwalthert. Fixes - Fix `pre-commit install` on `subst` / network drives on windows. - 1814 PR by asottile. - 1802 issue by goroderickgo. - Fix installation of `local` golang repositories for go 1.16. - 1818 PR by rafikdraoui. - 1815 issue by rafikdraoui. ``` ### 2.10.1 ``` =================== Fixes - Fix `language: golang` repositories containing recursive submodules - 1788 issue by gaurav517. - 1789 PR by paulhfischer. ``` ### 2.10.0 ``` =================== Features - Allow `ci` as a top-level map for configuration for https://pre-commit.ci - 1735 PR by asottile. - Add warning for mutable `rev` in configuration - 1715 PR by paulhfischer. - 974 issue by asottile. - Add warning for `/*` in top-level `files` / `exclude` regexes - 1750 PR by paulhfischer. - 1702 issue by asottile. - Expose `PRE_COMMIT_REMOTE_BRANCH` environment variable during `pre-push` hooks - 1770 PR by surafelabebe. - Produce error message for `language` / `language_version` for non-installable languages - 1771 PR by asottile. Fixes - Fix execution in worktrees in subdirectories of bare repositories - 1778 PR by asottile. - 1777 issue by s0undt3ch. ``` ### 2.9.3 ``` ================== Fixes - Fix crash on cygwin mismatch check outside of a git directory - 1721 PR by asottile. - 1720 issue by chronoB. - Fix cleanup code on docker volumes for go - 1725 PR by fsouza. - Fix working directory detection on SUBST drives on windows - 1727 PR by mrogaski. - 1610 issue by jcameron73. ``` ### 2.9.2 ``` ================== Fixes - Fix default value for `types_or` so `symlink` and `directory` can be matched - 1716 PR by asottile. - 1718 issue by CodeBleu. ``` ### 2.9.1 ``` ================== Fixes - Improve error message for "hook goes missing" - 1709 PR by paulhfischer. - 1708 issue by theod07. - Add warning for `/*` in `files` / `exclude` regexes - 1707 PR by paulhfischer. - 1702 issue by asottile. - Fix `healthy()` check for `language: python` on windows when the base executable has non-ascii characters. - 1713 PR by asottile. - 1711 issue by Najiva. ``` ### 2.9.0 ``` ================== Features - Add `types_or` which allows matching multiple disparate `types` in a hook - 1677 by MarcoGorelli. - 607 by asottile. - Add Github Sponsors / Open Collective links - https://github.com/sponsors/asottile - https://opencollective.com/pre-commit Fixes - Improve cleanup for `language: dotnet` - 1678 by rkm. - Fix "xargs" when running windows batch files - 1686 PR by asottile. - 1604 issue by apietrzak. - 1604 issue by ufwtlsb. - Fix conflict with external `rbenv` and `language_version: default` - 1700 PR by asottile. - 1699 issue by abuxton. - Improve performance of `git status` / `git diff` commands by ignoring submodules - 1704 PR by Vynce. - 1701 issue by Vynce. ``` ### 2.8.2 ``` ================== Fixes - Fix installation of ruby hooks with `language_version: default` - 1671 issue by aerickson. - 1672 PR by asottile. ``` ### 2.8.1 ``` ================== Fixes - Allow default `language_version` of `system` when the homedir is `/` - 1669 PR by asottile. ``` ### 2.8.0 ``` ================== Features - Update `rbenv` / `ruby-build` - 1612 issue by tdeo. - 1614 PR by asottile. - Update `sample-config` versions - 1611 PR by mcsitter. - Add new language: `dotnet` - 1598 by rkm. - Add `--negate` option to `language: pygrep` hooks - 1643 PR by MarcoGorelli. - Add zipapp support - 1616 PR by asottile. - Run pre-commit through https://pre-commit.ci - 1662 PR by asottile. - Add new language: `coursier` (a jvm-based package manager) - 1633 PR by JosephMoniz. - Exit with distinct codes: 1 (user error), 3 (unexpected error), 130 (^C) - 1601 PR by int3l. Fixes - Improve `healthy()` check for `language: node` + `language_version: system` hooks when the system executable goes missing. - pre-commit/action45 issue by KOliver94. - 1589 issue by asottile. - 1590 PR by asottile. - Fix excess whitespace in error log traceback - 1592 PR by asottile. - Fix posixlike shebang invocations with shim executables of the git hook script on windows. - 1593 issue by Celeborn2BeAlive. - 1595 PR by Celeborn2BeAlive. - Remove hard-coded `C:\PythonXX\python.exe` path on windows as it caused confusion (and `virtualenv` can sometimes do better) - 1599 PR by asottile. - Fix `language: ruby` hooks when `--format-executable` is present in a gemrc - issue by `Rainbow Tux` (discord). - 1603 PR by asottile. - Move `cygwin` / `win32` mismatch error earlier to catch msys2 mismatches - 1605 issue by danyeaw. - 1606 PR by asottile. - Remove `-p` workaround for old `virtualenv` - 1617 PR by asottile. - Fix `language: node` installations to not symlink outside of the environment - pre-commit-ci/issues2 issue by DanielJSottile. - 1667 PR by asottile. - Don't identify shim executables as valid `system` for defaulting `language_version` for `language: node` / `language: ruby` - 1658 issue by adithyabsk. - 1668 PR by asottile. ``` ### 2.7.1 ``` ================== Fixes - Improve performance of docker hooks by removing slow `ps` call - 1572 PR by rkm. - 1569 issue by asottile. - Fix un-`healthy()` invalidation followed by install being reported as un-`healthy()`. - 1576 PR by asottile. - 1575 issue by jab. - Fix rare file race condition on windows with `os.replace()` - 1577 PR by asottile. ``` ### 2.7.0 ``` ================== Features - Produce error message if an environment is immediately unhealthy - 1535 PR by asottile. - Add --no-allow-missing-config option to init-templatedir - 1539 PR by singergr. - Add warning for old list-style configuration - 1544 PR by asottile. - Allow pre-commit to succeed on a readonly store. - 1570 PR by asottile. - 1536 issue by asottile. Fixes - Fix error messaging when the store directory is readonly - 1546 PR by asottile. - 1536 issue by asottile. - Improve `diff` performance with many hooks - 1566 PR by jhenkens. - 1564 issue by jhenkens. ``` ### 2.6.0 ``` ================== Fixes - Fix node hooks when `NPM_CONFIG_USERCONFIG` is set - 1521 PR by asottile. - 1516 issue by rkm. Features - Skip `rbenv` / `ruby-download` if system ruby is available - 1509 PR by asottile. - Partial support for ruby on windows (if system ruby is installed) - 1509 PR by asottile. - 201 issue by asottile. ``` ### 2.5.1 ``` ================== Fixes - Prevent infinite recursion of post-checkout on clone - 1497 PR by asottile. - 1496 issue by admorgan. ``` ### 2.5.0 ``` ================== Features - Expose a `PRE_COMMIT=1` environment variable when running hooks - 1467 PR by tech-chad. - 1426 issue by lorenzwalthert. Fixes - Fix `UnicodeDecodeError` on windows when using the `py` launcher to detect executables with non-ascii characters in the path - 1474 PR by asottile. - 1472 issue by DrFobos. - Fix `DeprecationWarning` on python3.9 for `random.shuffle` method - 1480 PR by asottile. - 1479 issue by isidentical. - Normalize slashes earlier such that global `files` / `exclude` use forward slashes on windows as well. - 1494 PR by asottile. - 1476 issue by harrybiddle. ``` ### 2.4.0 ``` ================== Features - Add support for `post-commit` hooks - 1415 PR by ModischFabrications. - 1411 issue by ModischFabrications. - Silence pip version warning in python installation error - 1412 PR by asottile. - Improve python `healthy()` when upgrading operating systems. - 1431 PR by asottile. - 1427 issue by ahonnecke. - `language: python_venv` is now an alias to `language: python` (and will be removed in a future version). - 1431 PR by asottile. - Speed up python `healthy()` check. - 1431 PR by asottile. - `pre-commit autoupdate` now tries to maintain quoting style of `rev`. - 1435 PR by marcjay. - 1434 issue by marcjay. Fixes - Fix installation of go modules in `repo: local`. - 1428 PR by scop. - Fix committing with unstaged files and a failing `post-checkout` hook. - 1422 PR by domodwyer. - 1418 issue by domodwyer. - Fix installation of node hooks with system node installed on freebsd. - 1443 PR by asottile. - 1440 issue by jockej. - Fix ruby hooks when `GEM_PATH` is set globally. - 1442 PR by tdeo. - Improve error message when `pre-commit autoupdate` / `pre-commit migrate-config` are run but the pre-commit configuration is not valid yaml. - 1448 PR by asottile. - 1447 issue by rpdelaney. ``` ### 2.3.0 ``` ================== Features - Calculate character width using `east_asian_width` - 1378 PR by sophgn. - Use `language_version: system` by default for `node` hooks if `node` / `npm` are globally installed. - 1388 PR by asottile. Fixes - No longer use a hard-coded user id for docker hooks on windows - 1371 PR by killuazhu. - Fix colors on windows during `git commit` - 1381 issue by Cielquan. - 1382 PR by asottile. - Produce readable error message for incorrect argument count to `hook-impl` - 1394 issue by pip9ball. - 1395 PR by asottile. - Fix installations which involve an upgrade of `pip` on windows - 1398 issue by xiaohuazi123. - 1399 PR by asottile. - Preserve line endings in `pre-commit autoupdate` - 1402 PR by utek. ``` ### 2.2.0 ``` ================== Features - Add support for the `post-checkout` hook - 1120 issue by domenkozar. - 1339 PR by andrewhare. - Add more readable `--from-ref` / `--to-ref` aliases for `--source` / `--origin` - 1343 PR by asottile. Fixes - Make sure that `--commit-msg-filename` is passed for `commit-msg` / `prepare-commit-msg`. - 1336 PR by particledecay. - 1341 PR by particledecay. - Fix crash when installation error is un-decodable bytes - 1358 issue by Guts. - 1359 PR by asottile. - Fix python `healthy()` check when `python` executable goes missing. - 1363 PR by asottile. - Fix crash when script executables are missing shebangs. - 1350 issue by chriselion. - 1364 PR by asottile. Misc. - pre-commit now requires python>=3.6.1 (previously 3.6.0) - 1346 PR by asottile. ``` ### 2.1.1 ``` ================== Fixes - Temporarily restore python 3.6.0 support (broken in 2.0.0) - reported by obestwalter. - 081f3028 by asottile. ``` ### 2.1.0 ``` ================== Features - Replace `aspy.yaml` with `sort_keys=False`. - 1306 PR by asottile. - Add support for `perl`. - 1303 PR by scop. Fixes - Improve `.git/hooks/*` shebang creation when pythons are in `/usr/local/bin`. - 1312 issue by kbsezginel. - 1319 PR by asottile. Misc. - Add repository badge for pre-commit. - [![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit) - 1334 PR by ddelange. ``` ### 2.0.1 ``` ================== Fixes - Fix `ImportError` in python 3.6.0 / 3.6.1 for `typing.NoReturn`. - 1302 PR by asottile. ``` ### 2.0.0 ``` ================== Features - Expose `PRE_COMMIT_REMOTE_NAME` and `PRE_COMMIT_REMOTE_URL` as environment variables during `pre-push` hooks. - 1274 issue by dmbarreiro. - 1288 PR by dmbarreiro. Fixes - Fix `python -m pre_commit --version` to mention `pre-commit` instead of `__main__.py`. - 1273 issue by ssbarnea. - 1276 PR by orcutt989. - Don't filter `GIT_SSL_NO_VERIFY` from environment when cloning. - 1293 PR by schiermike. - Allow `pre-commit init-templatedir` to succeed even if `core.hooksPath` is set. - 1298 issue by damienrj. - 1299 PR by asottile. Misc - Fix changelog date for 1.21.0. - 1275 PR by flaudisio. Updating - Removed `pcre` language, use `pygrep` instead. - 1268 PR by asottile. - Removed `--tags-only` argument to `pre-commit autoupdate` (it has done nothing since 0.14.0). - 1269 by asottile. - Remove python2 / python3.5 support. Note that pre-commit still supports running hooks written in python2, but pre-commit itself requires python 3.6+. - 1260 issue by asottile. - 1277 PR by asottile. - 1281 PR by asottile. - 1282 PR by asottile. - 1287 PR by asottile. - 1289 PR by asottile. - 1292 PR by asottile. ``` ### 1.21.0 ``` =================== Features - Add `conda` as a new `language`. - 1204 issue by xhochy. - 1232 PR by xhochy. - Add top-level configuration `files` for file selection. - 1220 issue by TheButlah. - 1248 PR by asottile. - Rework `--verbose` / `verbose` to be more consistent with normal runs. - 1249 PR by asottile. - Add support for the `pre-merge-commit` git hook. - 1210 PR by asottile. - this requires git 2.24+. - Add `pre-commit autoupdate --freeze` which produces "frozen" revisions. - 1068 issue by SkypLabs. - 1256 PR by asottile. - Display hook runtime duration when run with `--verbose`. - 1144 issue by potiuk. - 1257 PR by asottile. Fixes - Produce better error message when erroneously running inside of `.git`. - 1219 issue by Nusserdt. - 1224 PR by asottile. - Note: `git` has since fixed this bug: git/git36fd304d - Produce better error message when hook installation fails. - 1250 issue by asottile. - 1251 PR by asottile. - Fix cloning when `GIT_SSL_CAINFO` is necessary. - 1253 issue by igankevich. - 1254 PR by igankevich. - Fix `pre-commit try-repo` for bare, on-disk repositories. - 1258 issue by webknjaz. - 1259 PR by asottile. - Add some whitespace to `pre-commit autoupdate` to improve terminal autolink. - 1261 issue by yhoiseth. - 1262 PR by yhoiseth. Misc. - Minor code documentation updates. - 1200 PR by ryanrhee. - 1201 PR by ryanrhee. ``` ### 1.20.0 ``` =================== Features - Allow building newer versions of `ruby`. - 1193 issue by choffee. - 1195 PR by choffee. - Bump versions reported in `pre-commit sample-config`. - 1197 PR by asottile. Fixes - Fix rare race condition with multiple concurrent first-time runs. - 1192 issue by raholler. - 1196 PR by asottile. ``` ### 1.19.0 ``` =================== Features - Allow `--hook-type` to be specified multiple times. - example: `pre-commit install --hook-type pre-commit --hook-type pre-push` - 1139 issue by MaxymVlasov. - 1145 PR by asottile. - Include more version information in crash logs. - 1142 by marqueewinq. - Hook colors are now passed through on platforms which support `pty`. - 1169 by asottile. - pre-commit now uses `importlib.metadata` directly when running in python 3.8 - 1176 by asottile. - Normalize paths to forward slash separators on windows. - makes it easier to match paths with `files:` regex - avoids some quoting bugs in shell-based hooks - 1173 issue by steigenTI. - 1179 PR by asottile. Fixes - Remove some extra newlines from error messages. - 1148 by asottile. - When a hook is not executable it now reports `not executable` instead of `not found`. - 1159 issue by nixjdm. - 1161 PR by WillKoehrsen. - Fix interleaving of stdout / stderr in hooks. - 1168 by asottile. - Fix python environment `healthy()` check when current working directory contains modules which shadow standard library names. - issue by vwhsu92. - 1185 PR by asottile. Updating - Regexes handling both backslashes and forward slashes for directory separators now only need to handle forward slashes. ``` ### 1.18.3 ``` =================== Fixes - Fix `node_modules` plugin installation on windows - 1123 issue by henryykt. - 1122 PR by henryykt. ``` ### 1.18.2 ``` =================== Fixes - Make default python lookup more deterministic to avoid redundant installs - 1117 PR by scop. ``` ### 1.18.1 ``` =================== Fixes - Fix installation of `rust` hooks with new `cargo` - 1112 issue by zimbatm. - 1113 PR by zimbatm. ``` ### 1.18.0 ``` =================== Features - Use the current running executable if it matches the requested `language_version` - 1062 PR by asottile. - Print the stage when a hook is not found - 1078 issue by madkinsz. - 1079 PR by madkinsz. - `pre-commit autoupdate` now supports non-`master` default branches - 1089 PR by asottile. - Add `pre-commit init-templatedir` which makes it easier to automatically enable `pre-commit` in cloned repositories. - 1084 issue by ssbarnea. - 1090 PR by asottile. - 1107 PR by asottile. - pre-commit's color can be controlled using `PRE_COMMIT_COLOR={auto,always,never}` - 1073 issue by saper. - 1092 PR by geieredgar. - 1098 PR by geieredgar. - pre-commit's color can now be disabled using `TERM=dumb` - 1073 issue by saper. - 1103 PR by asottile. - pre-commit now supports `docker` based hooks on windows - 1072 by cz-fish. - 1093 PR by geieredgar. Fixes - Fix shallow clone - 1077 PR by asottile. - Fix autoupdate version flip flop when using shallow cloning - 1076 issue by mxr. - 1088 PR by asottile. - Fix autoupdate when the current revision is invalid - 1088 PR by asottile. Misc. - Replace development instructions with `tox --devenv ...` - 1032 issue by yoavcaspi. - 1067 PR by asottile. ``` ### 1.17.0 ``` =================== Features - Produce better output on `^C` - 1030 PR by asottile. - Warn on unknown keys at the top level and repo level - 1028 PR by yoavcaspi. - 1048 PR by asottile. Fixes - Fix handling of `^C` in wrapper script in python 3.x - 1027 PR by asottile. - Fix `rmtree` for non-writable directories - 1042 issue by detailyang. - 1043 PR by asottile. - Pass `--color` option to `git diff` in `--show-diff-on-failure` - 1007 issue by chadrik. - 1051 PR by mandarvaze. Misc. - Fix test when `pre-commit` is installed globally - 1032 issue by yoavcaspi. - 1045 PR by asottile. ``` ### 1.16.1 ``` =================== Fixes - Don't `UnicodeDecodeError` on unexpected non-UTF8 output in python health check on windows. - 1021 issue by nicoddemus. - 1022 PR by asottile. ``` ### 1.16.0 ``` =================== Features - Add support for `prepare-commit-msg` hook - 1004 PR by marcjay. Fixes - Fix repeated legacy `pre-commit install` on windows - 1010 issue by AbhimanyuHK. - 1011 PR by asottile. - Whitespace fixup - 1014 PR by mxr. - Fix CI check for working pcre support - 1015 PR by Myrheimb. Misc. - Switch CI from travis / appveyor to azure pipelines - 1012 PR by asottile. ``` ### 1.15.2 ``` =================== Fixes - Fix cloning non-branch tag while in the fallback slow-clone strategy. - 997 issue by jpinner. - 998 PR by asottile. ``` ### 1.15.1 ``` =================== Fixes - Fix command length calculation on posix when `SC_ARG_MAX` is not defined. - 691 issue by ushuz. - 987 PR by asottile. ``` ### 1.15.0 ``` =================== Features - No longer require being in a `git` repo to run `pre-commit` `clean` / `gc` / `sample-config`. - 959 PR by asottile. - Improve command line length limit detection. - 691 issue by antonbabenko. - 966 PR by asottile. - Use shallow cloning when possible. - 958 PR by DanielChabrowski. - Add `minimum_pre_commit_version` top level key to require a new-enough version of `pre-commit`. - 977 PR by asottile. - Add helpful CI-friendly message when running `pre-commit run --all-files --show-diff-on-failure`. - 982 PR by bnorquist. Fixes - Fix `try-repo` for staged untracked changes. - 973 PR by DanielChabrowski. - Fix rpm build by explicitly using `!/usr/bin/env python3` in hook template. - 985 issue by tim77. - 986 PR by tim77. - Guard against infinite recursion when executing legacy hook script. - 981 PR by tristan0x. Misc - Add test for `git.no_git_env()` - 972 PR by javabrett. ``` ### 1.14.4 ``` =================== Fixes - Don't filter `GIT_SSH_COMMAND` env variable from `git` commands - 947 issue by firba1. - 948 PR by firba1. - Install npm packages as if they were installed from `git` - 943 issue by ssbarnea. - 949 PR by asottile. - Don't filter `GIT_EXEC_PREFIX` env variable from `git` commands - 664 issue by revolter. - 944 PR by minrk. ``` ### 1.14.3 ``` =================== Fixes - Improve performance of filename classification by 45% - 55%. - 921 PR by asottile. - Fix installing `go` hooks while `GOBIN` environment variable is set. - 924 PR by ashanbrown. - Fix crash while running `pre-commit migrate-config` / `pre-commit autoupdate` with an empty configuration file. - 929 issue by ardakuyumcu. - 933 PR by jessebona. - Require a newer virtualenv to fix metadata-based setup.cfg installs. - 936 PR by asottile. ``` ### 1.14.2 ``` =================== Fixes - Make the hook shebang detection more timid (1.14.0 regression) - Homebrew/homebrew-core35825. - 915 PR by asottile. ``` ### 1.14.1 ``` =================== Fixes - Fix python executable lookup on windows when using conda - 913 issue by dawelter2. - 914 PR by asottile. ``` ### 1.14.0 ``` =================== Features - Add an `alias` configuration value to allow repeated hooks to be differentiated - 882 issue by s0undt3ch. - 886 PR by s0undt3ch. - Add `identity` meta hook which just prints filenames - 865 issue by asottile. - 898 PR by asottile. - Factor out `cached-property` and improve startup performance by ~10% - 899 PR by asottile. - Add a warning on unexpected keys in configuration - 899 PR by asottile. - Teach `pre-commit try-repo` to clone uncommitted changes on disk. - 589 issue by sverhagen. - 703 issue by asottile. - 904 PR by asottile. - Implement `pre-commit gc` which will clean up no-longer-referenced cache repos. - 283 issue by jtwang. - 906 PR by asottile. - Add top level config `default_language_version` to streamline overriding the `language_version` configuration in many places - 647 issue by asottile. - 908 PR by asottile. - Add top level config `default_stages` to streamline overriding the `stages` configuration in many places - 768 issue by mattlqx. - 909 PR by asottile. Fixes - More intelligently pick hook shebang (`!/usr/bin/env python3`) - 878 issue by fristedt. - 893 PR by asottile. - Several fixes related to `--files` / `--config`: - `pre-commit run --files x` outside of a git dir no longer stacktraces - `pre-commit run --config ./relative` while in a sub directory of the git repo is now able to find the configuration - `pre-commit run --files ...` no longer runs a subprocess per file (performance) - 895 PR by asottile. - `pre-commit try-repo ./relative` while in a sub directory of the git repo is now able to clone properly - 903 PR by asottile. - Ensure `meta` repos cannot have a language other than `system` - 905 issue by asottile. - 907 PR by asottile. - Fix committing with unstaged files that were `git add --intent-to-add` added - 881 issue by henniss. - 912 PR by asottile. Misc. - Use `--no-gpg-sign` when running tests - 894 PR by s0undt3ch. ``` ### 1.13.0 ``` =================== Features - Run hooks in parallel - individual hooks may opt out of parallel execution with `require_serial: true` - 510 issue by chriskuehl. - 851 PR by chriskuehl. Fixes - Improve platform-specific `xargs` command length detection - 691 issue by antonbabenko. - 839 PR by georgeyk. - Fix `pre-commit autoupdate` when updating to a latest tag missing a `.pre-commit-hooks.yaml` - 856 issue by asottile. - 857 PR by runz0rd. - Upgrade the `pre-commit-hooks` version in `pre-commit sample-config` - 870 by asottile. - Improve balancing of multiprocessing by deterministic shuffling of args - 861 issue by Dunedan. - 874 PR by chriskuehl. - `ruby` hooks work with latest `gem` by removing `--no-ri` / `--no-rdoc` and instead using `--no-document`. - 889 PR by asottile. Misc. - Use `--no-gpg-sign` when running tests - 885 PR by s0undt3ch. Updating - If a hook requires serial execution, set `require_serial: true` to avoid the new parallel execution. - `ruby` hooks now require `gem>=2.0.0`. If your platform doesn't support this by default, select a newer version using [`language_version`](https://pre-commit.com/#overriding-language-version). ``` ### 1.12.0 ``` =================== Fixes - Install multi-hook repositories only once (performance) - issue by chriskuehl. - 852 PR by asottile. - Improve performance by factoring out pkg_resources (performance) - 840 issue by RonnyPfannschmidt. - 846 PR by asottile. ``` ### 1.11.2 ``` =================== Fixes - `check-useless-exclude` now considers `types` - 704 issue by asottile. - 837 PR by georgeyk. - `pre-push` hook was not identifying all commits on push to new branch - 843 issue by prem-nuro. - 844 PR by asottile. ``` ### 1.11.1 ``` =================== Fixes - Fix `.git` dir detection in `git<2.5` (regression introduced in [1.10.5](1105)) - 831 issue by mmacpherson. - 832 PR by asottile. ``` ### 1.11.0 ``` =================== Features - Add new `fail` language which always fails - light-weight way to forbid files by name. - 812 821 PRs by asottile. Fixes - Fix `ResourceWarning`s for unclosed files - 811 PR by BoboTiG. - Don't write ANSI colors on windows when color enabling fails - 819 PR by jeffreyrack. ``` ### 1.10.5 ``` =================== Fixes - Work around `PATH` issue with `brew` `python` on `macos` - Homebrew/homebrew-core30445 issue by asottile. - 805 PR by asottile. - Support `pre-commit install` inside a worktree - 808 issue by s0undt3ch. - 809 PR by asottile. ``` ### 1.10.4 ``` =================== Fixes - Replace `yaml.load` with safe alternative - `yaml.load` can lead to arbitrary code execution, though not where it was used - issue by tonybaloney. - 779 PR by asottile. - Improve not found error with script paths (`./exe`) - 782 issue by ssbarnea. - 785 PR by asottile. - Fix minor buffering issue during `--show-diff-on-failure` - 796 PR by asottile. - Default `language_version: python3` for `python_venv` when running in python2 - 794 issue by ssbarnea. - 797 PR by asottile. - `pre-commit run X` only run `X` and not hooks with `stages: [...]` - 772 issue by asottile. - 803 PR by mblayman. Misc. - Improve travis-ci build times by caching rust / swift artifacts - 781 PR by expobrain. - Test against python3.7 - 789 PR by expobrain. ``` ### 1.10.3 ``` =================== Fixes - Fix `pre-push` during a force push without a fetch - 777 issue by domenkozar. - 778 PR by asottile. ``` ### 1.10.2 ``` =================== Fixes - pre-commit now invokes hooks with a consistent ordering of filenames - issue by mxr. - 767 PR by asottile. ``` ### 1.10.1 ``` =================== Fixes - `python_venv` language would leak dependencies when pre-commit was installed in a `-mvirtualenv` virtualenv - 755 756 issue and PR by asottile. ``` ### 1.10.0 ``` =================== Features - Add support for hooks written in `rust` - 751 PR by chriskuehl. ``` ### 1.9.0 ``` ================== Features - Add new `python_venv` language which uses the `venv` module instead of `virtualenv` - 631 issue by dongyuzheng. - 739 PR by ojii. - Include `LICENSE` in distribution - 745 issue by nicoddemus. - 746 PR by nicoddemus. Fixes - Normalize relative paths for `pre-commit try-repo` - 750 PR by asottile. ``` ### 1.8.2 ``` ================== Fixes - Fix cloning relative paths (regression in 1.7.0) - 728 issue by jdswensen. - 729 PR by asottile. ``` ### 1.8.1 ``` ================== Fixes - Fix integration with go 1.10 and `pkg` directory - 725 PR by asottile - Restore support for `git<1.8.5` (inadvertently removed in 1.7.0) - 723 issue by JohnLyman. - 724 PR by asottile. ``` ### 1.8.0 ``` ================== Features - Add a `manual` stage for cli-only interaction - 719 issue by hectorv. - 720 PR by asottile. - Add a `--multiline` option to `pygrep` hooks - 716 PR by tdeo. ``` ### 1.7.0 ``` ================== Features - pre-commit config validation was split to a separate `cfgv` library - 700 PR by asottile. - Allow `--repo` to be specified multiple times to autoupdate - 658 issue by KevinHock. - 713 PR by asottile. - Enable `rev` as a preferred alternative to `sha` in `.pre-commit-config.yaml` - 106 issue by asottile. - 715 PR by asottile. - Use `--clean-src` option when invoking `nodeenv` to save ~70MB per node env - 717 PR by asottile. - Refuse to install with `core.hooksPath` set - pre-commit/pre-commit-hooks250 issue by revolter. - 663 issue by asottile. - 718 PR by asottile. Fixes - hooks with `additional_dependencies` now get isolated environments - 590 issue by coldnight. - 711 PR by asottile. Misc. - test against swift 4.x - 709 by theresama. Updating - Run `pre-commit migrate-config` to convert `sha` to `rev` in the `.pre-commit-config.yaml` file. ``` ### 1.6.0 ``` ================== Features - Hooks now may have a `verbose` option to produce output even without failure - 689 issue by bagerard. - 695 PR by bagerard. - Installed hook no longer requires `bash` - 699 PR by asottile. Fixes - legacy pre-push / commit-msg hooks are now invoked as if `git` called them - 693 issue by samskiter. - 694 PR by asottile. - 699 PR by asottile. ``` ### 1.5.1 ``` ================== Fixes - proper detection for root commit during pre-push - 503 PR by philipgian. - 692 PR by samskiter. ``` ### 1.5.0 ``` ================== Features - pre-commit now supports node hooks on windows. - for now, requires python3 due to https://bugs.python.org/issue32539 - huge thanks to wenzowski for the tip! - 200 issue by asottile. - 685 PR by asottile. Misc. - internal reorganization of `PrefixedCommandRunner` -> `Prefix` - 684 PR by asottile. - https-ify links. - pre-commit.com is now served over https. - 688 PR by asottile. ``` ### 1.4.5 ``` ================== Fixes - Fix `local` golang repositories with `additional_dependencies`. - 679 680 issue and PR by asottile. Misc. - Replace some string literals with constants - 678 PR by revolter. ``` ### 1.4.4 ``` ================== Fixes - Invoke `git diff` without a pager during `--show-diff-on-failure`. - 676 PR by asottile. ``` ### 1.4.3 ``` ================== Fixes - `pre-commit` on windows can find pythons at non-hardcoded paths. - 674 PR by asottile. ``` ### 1.4.2 ``` ================== Fixes - `pre-commit` no longer clears `GIT_SSH` environment variable when cloning. - 671 PR by rp-tanium. ``` ### 1.4.1 ``` ================== Fixes - `pre-commit autoupdate --repo ...` no longer deletes other repos. - 660 issue by KevinHock. - 661 PR by KevinHock. ``` ### 1.4.0 ``` ================== Features - Lazily install repositories. - When running `pre-commit run <hookid>`, pre-commit will only install the necessary repositories. - 637 issue by webknjaz. - 639 PR by asottile. - Version defaulting now applies to local hooks as well. - This extends 556 to apply to local hooks. - 646 PR by asottile. - Add new `repo: meta` hooks. - `meta` hooks expose some linters of the pre-commit configuration itself. - `id: check-useless-excludes`: ensures that `exclude` directives actually apply to *any* file in the repository. - `id: check-hooks-apply`: ensures that the configured hooks apply to at least one file in the repository. - pre-commit/pre-commit-hooks63 issue by asottile. - 405 issue by asottile. - 643 PR by hackedd. - 653 PR by asottile. - 654 PR by asottile. - Allow a specific repository to be autoupdated instead of all repositories. - `pre-commit autoupdate --repo ...` - 656 issue by KevinHock. - 657 PR by KevinHock. Fixes - Apply selinux labelling option to docker volumes - 642 PR by jimmidyson. ``` ### 1.3.0 ``` ================== Features - Add `pre-commit try-repo` commands - The new `try-repo` takes a repo and will run the hooks configured in that hook repository. - An example invocation: `pre-commit try-repo https://github.com/pre-commit/pre-commit-hooks` - `pre-commit try-repo` can also take all the same arguments as `pre-commit run`. - It can be used to try out a repository without needing to configure it. - It can also be used to test a hook repository while developing it. - 589 issue by sverhagen. - 633 PR by asottile. ``` ### 1.2.0 ``` ================== Features - Add `pygrep` language - `pygrep` aims to be a more cross-platform alternative to `pcre` hooks. - 630 PR by asottile. Fixes - Use `pipes.quote` for executable path in hook template - Fixes bash syntax error when git dir contains spaces - 626 PR by asottile. - Clean up hook template - Simplify code - Fix `--config` not being respected in some situations - 627 PR by asottile. - Use `file://` protocol for cloning under test - Fix `file://` clone paths being treated as urls for golang - 629 PR by asottile. - Add `ctypes` as an import for virtualenv healthchecks - Fixes python3.6.2 <=> python3.6.3 virtualenv invalidation - e70825ab by asottile. ``` ### 1.1.2 ``` ================== Fixes - pre-commit can successfully install commit-msg hooks - Due to an oversight, the commit-msg-tmpl was missing from the packaging - 623 issue by sobolevn. - 624 PR by asottile. ``` ### 1.1.1 ``` ================== Features - pre-commit also checks the `ssl` module for virtualenv health - Suggestion by merwok. - 619 PR by asottile. Fixes - pre-commit no longer crashes with unstaged files when run for the first time - 620 621 issue by Lucas-C. - 622 PR by asottile. ``` ### 1.1.0 ``` ================== Features - pre-commit configuration gains a `fail_fast` option. - You must be using the v2 configuration format introduced in 1.0.0. - `fail_fast` defaults to `false`. - 240 issue by Lucas-C. - 616 PR by asottile. - pre-commit configuration gains a global `exclude` option. - This option takes a python regular expression and can be used to exclude files from _all_ hooks. - You must be using the v2 configuration format introduced in 1.0.0. - 281 issue by asieira. - 617 PR by asottile. ``` ### 1.0.1 ``` ================== Fixes - Fix a regression in the return code of `pre-commit autoupdate` - `pre-commit migrate-config` and `pre-commit autoupdate` return 0 when successful. - 614 PR by asottile. ``` ### 1.0.0 ``` ================== pre-commit will now be following [semver](https://semver.org/). Thanks to all of the [contributors](https://github.com/pre-commit/pre-commit/graphs/contributors) that have helped us get this far! Features - pre-commit's cache directory has moved from `~/.pre-commit` to `$XDG_CACHE_HOME/pre-commit` (usually `~/.cache/pre-commit`). - `pre-commit clean` now cleans up both the old and new directory. - If you were caching this directory in CI, you'll want to adjust the location. - 562 issue by nagromc. - 602 PR by asottile. - A new configuration format for `.pre-commit-config.yaml` is introduced which will enable future development. - The new format has a top-level map instead of a top-level list. The new format puts the hook repositories in a `repos` key. - Old list-based configurations will continue to be supported. - A command `pre-commit migrate-config` has been introduced to "upgrade" the configuration format to the new map-based configuration. - `pre-commit autoupdate` now automatically calls `migrate-config`. - In a later release, list-based configurations will issue a deprecation warning. - An example diff for upgrading a configuration: diff +repos: - repo: https://github.com/pre-commit/pre-commit-hooks sha: v0.9.2 hooks: - 414 issue by asottile. - 610 PR by asottile. Updating - Run `pre-commit migrate-config` to convert `.pre-commit-config.yaml` to the new map format. - Update any references from `~/.pre-commit` to `~/.cache/pre-commit`. ``` ### 0.18.3 ``` =================== - Allow --config to affect `pre-commit install` - Tweak not found error message during `pre-push` / `commit-msg` - Improve node support when running under cygwin. ``` ### 0.18.2 ``` =================== - Fix `--all-files`, detection of staged files, detection of manually edited files during merge conflict, and detection of files to push for non-ascii filenames. ``` ### 0.18.1 ``` =================== - Only mention locking when waiting for a lock. - Fix `IOError` during locking in timeout situation on windows under python 2. ``` ### 0.18.0 ``` =================== - Add a new `docker_image` language type. `docker_image` is intended to be a lightweight hook type similar to `system` / `script` which allows one to use an existing docker image that provides a hook. `docker_image` hooks can also be used as repository `local` hooks. ``` ### 0.17.0 ``` =================== - Fix typos in help - Allow `commit-msg` hook to be uninstalled - Upgrade the `sample-config` - Remove undocumented `--no-stash` and `--allow-unstaged-config` - Remove `validate_config` hook pre-commit hook. - Fix installation race condition when multiple `pre-commit` processes would attempt to install the same repository. ``` ### 0.16.3 ``` =================== - autoupdate attempts to maintain config formatting. ``` ### 0.16.2 ``` =================== - Initialize submodules in hook repositories. ``` ### 0.16.1 ``` =================== - Improve node support when running under cygwin. ``` ### 0.16.0 ``` =================== - Remove backward compatibility with repositories providing metadata via `hooks.yaml`. New repositories should provide `.pre-commit-hooks.yaml`. Run `pre-commit autoupdate` to upgrade to the latest repositories. - Improve golang support when running under cygwin. - Fix crash with unstaged trailing whitespace additions while git was configured with `apply.whitespace = error`. - Fix crash with unstaged end-of-file crlf additions and the file's lines ended with crlf while git was configured with `core-autocrlf = true`. ``` ### 0.15.4 ``` =================== - Add support for the `commit-msg` git hook ``` ### 0.15.3 ``` =================== - Recover from invalid python virtualenvs ``` ### 0.15.2 ``` =================== - Work around a windows-specific virtualenv bug pypa/virtualenv1062 This failure mode was introduced in 0.15.1 ``` ### 0.15.1 ``` =================== - Use a more intelligent default language version for python ``` ### 0.15.0 ``` =================== - Add `types` and `exclude_types` for filtering files. These options take an array of "tags" identified for each file. The tags are sourced from [identify](https://github.com/chriskuehl/identify). One can list the tags for a file by running `identify-cli filename`. - `files` is now optional (defaulting to `''`) - `always_run` + missing `files` also defaults to `files: ''` (previously it defaulted to `'^$'` (this reverses e150921c). ``` ### 0.14.3 ``` =================== - Expose `--origin` and `--source` as `PRE_COMMIT_ORIGIN` and `PRE_COMMIT_SOURCE` environment variables when running as `pre-push`. ``` ### 0.14.2 ``` =================== - Use `--no-ext-diff` when running `git diff` ``` ### 0.14.1 ``` =================== - Don't crash when `always_run` is `True` and `files` is not provided. - Set `VIRTUALENV_NO_DOWNLOAD` when making python virtualenvs. ``` ### 0.14.0 ``` =================== - Add a `pre-commit sample-config` command - Enable ansi color escapes on modern windows - `autoupdate` now defaults to `--tags-only`, use `--bleeding-edge` for the old behavior - Add support for `log_file` in hook configuration to tee hook output to a file for CI consumption, etc. - Fix crash with unicode commit messages during merges in python 2. - Add a `pass_filenames` option to allow disabling automatic filename positional arguments to hooks. ``` ### 0.13.6 ``` =================== - Fix regression in 0.13.5: allow `always_run` and `files` together despite doing nothing. ``` ### 0.13.5 ``` =================== - 0.13.4 contained incorrect files ``` ### 0.13.4 ``` =================== - Add `--show-diff-on-failure` option to `pre-commit run` - Replace `jsonschema` with better error messages ``` ### 0.13.3 ``` =================== - Add `--allow-missing-config` to install: allows `git commit` without a configuration. ``` ### 0.13.2 ``` =================== - Version the local hooks repo - Allow `minimum_pre_commit_version` for local hooks ``` ### 0.13.1 ``` =================== - Fix placeholder gem for ruby local hooks ``` ### 0.13.0 ``` =================== - Autoupdate now works even when the current state is broken. - Improve pre-push fileset on new branches - Allow "language local" hooks, hooks which install dependencies using `additional_dependencies` and `language` are now allowed in `repo: local`. ``` ### 0.12.2 ``` =================== - Fix docker hooks on older (<1.12) docker ``` ### 0.12.1 ``` =================== - golang hooks now support additional_dependencies - Added a --tags-only option to pre-commit autoupdate ``` ### 0.12.0 ``` =================== - The new default file for implementing hooks in remote repositories is now .pre-commit-hooks.yaml to encourage repositories to add the metadata. As such, the previous hooks.yaml is now deprecated and generates a warning. - Fix bug with local configuration interfering with ruby hooks - Added support for hooks written in golang. ``` ### 0.11.0 ``` =================== - SwiftPM support. ``` ### 0.10.1 ``` =================== - shlex entry of docker based hooks. - Make shlex behaviour of entry more consistent. ``` ### 0.10.0 ``` =================== - Add an `install-hooks` command similar to `install --install-hooks` but without the `install` side-effects. - Adds support for docker based hooks. ``` ### 0.9.4 ``` ================== - Warn when cygwin / python mismatch - Add --config for customizing configuration during run - Update rbenv + plugins to latest versions - pcre hooks now fail when grep / ggrep are not present ``` ### 0.9.3 ``` ================== - Fix python hook installation when a strange setup.cfg exists ``` ### 0.9.2 ``` ================== - Remove some python2.6 compatibility - UI is no longer sized to terminal width, instead 80 characters or longest necessary width. - Fix inability to create python hook environments when using venv / pyvenv on osx ``` ### 0.9.1 ``` ================== - Remove some python2.6 compatibility - Fix staged-files-only with external diff tools ``` ### 0.9.0 ``` ================== - Only consider forward diff in changed files - Don't run on staged deleted files that still exist - Autoupdate to tags when available - Stop supporting python2.6 - Fix crash with staged files containing unstaged lines which have non-utf8 bytes and trailing whitespace ``` ### 0.8.2 ``` ================== - Fix a crash introduced in 0.8.0 when an executable was not found ``` ### 0.8.1 ``` ================== - Fix regression introduced in 0.8.0 when already using rbenv with no configured ruby hook version ``` ### 0.8.0 ``` ================== - Fix --files when running in a subdir - Improve --help a bit - Switch to pyterminalsize for determining terminal size ``` ### 0.7.6 ``` ================== - Work under latest virtualenv - No longer create empty directories on windows with latest virtualenv ``` ### 0.7.5 ``` ================== - Consider dead symlinks as files when committing ``` ### 0.7.4 ``` ================== - Produce error message instead of crashing on non-utf8 installation failure ``` ### 0.7.3 ``` ================== - Fix regression introduced in 0.7.1 breaking `git commit -a` ``` ### 0.7.2 ``` ================== - Add `always_run` setting for hooks to run even without file changes. ``` ### 0.7.1 ``` ================== - Support running pre-commit inside submodules ``` ### 0.7.0 ``` ================== - Store state about additional_dependencies for rollforward/rollback compatibility ``` ### 0.6.8 ``` ================== - Build as a universal wheel - Allow '.format('-like strings in arguments - Add an option to require a minimum pre-commit version ``` ### 0.6.7 ``` ================== - Print a useful message when a hook id is not present - Fix printing of non-ascii with unexpected errors - Print a message when a hook modifies files but produces no output ``` ### 0.6.6 ``` ================== - Add `additional_dependencies` to hook configuration. - Fix pre-commit cloning under git 2.6 - Small improvements for windows ``` ### 0.6.5 ``` ================== - Allow args for pcre hooks ``` ### 0.6.4 ``` ================== - Fix regression introduced in 0.6.3 regarding hooks which make non-utf8 diffs ``` ### 0.6.3 ``` ================== - Remove `expected_return_code` - Fail a hook if it makes modifications to the working directory ``` ### 0.6.2 ``` ================== - Use --no-ri --no-rdoc instead of --no-document for gem to fix old gem ``` ### 0.6.1 ``` ================== - Fix pre-push when pushing something that&#x