Skip to main content

A wrapper for pre-commit.

Project description

Wrapper for https://pre-commit.com, so wre-commit

Extensions

  • Run pre-commit:
    • in Docker container when ### wre-commit-docker-image: ... is found in the config file
    • or directly calling locally installed pre-commit
  • Support multiple configurations using:
    • multiple config files using shell wildcards in option --config, by default .pre-commit-config*.yaml, with respecting the fail_fast config setting.
    • multi-doc YAML config files, with respecting the fail_fast config setting.

Installation into system

Install the wraper into system by command:

pip3 install --upgrade wre-commit

Then a script wre-commit is available in the $PATH.

Installation into Git repository

Install this script as .git/hooks/pre-commit into your Git repository by running the command:

wre-commit install

Add option -t or --hook-type to specify another/more hook(s) to install.

Uninstallation from Git repository

Uninstall this script as .git/hooks/pre-commit from your Git repository by running the command

wre-commit uninstall

Add option -t or --hook-type to specify another/more hook(s) to uninstall.

Usage

Place the line ### wre-commit-docker-image: DOCKER_IMAGE (without quotes) into your pre-commit config file, typically .pre-commit-config.yaml. Replace the DOCKER_IMAGE with the Docker image name in format expected by command docker run. That image should have pre-commit installed, possibly with other binaries and hook repository dependencies. Then pre-commit in that container will be triggered with your repository dir read-write visible.

You can also call the pre-commit in the Docker container directly, f.e.:

wre-commit run --all-files

If no such line is present in the pre-commit config file, then the locally installed pre-commit will be called as usuall.

Debugging

Set environment variable WRE_COMMIT_DEBUG to see debug messages on standard error:

  • of the executed commands
  • about splitting multi-doc config files

Requirements

  • python3 AND:
    • locally installed and running docker OR:
    • locally installed pre-commit

Developing

Update versions

  • in wre_commit/main.py
  • in setup.cfg

Ensure local dependencies

python3 -m pip install --user --upgrade setuptools wheel twine

Build PyPi package

rm -rf dist
python3 setup.py sdist bdist_wheel

Upload package to PyPi

python3 -m twine upload dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wre_commit-1.0.7.tar.gz (19.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wre_commit-1.0.7-py2.py3-none-any.whl (19.9 kB view details)

Uploaded Python 2Python 3

File details

Details for the file wre_commit-1.0.7.tar.gz.

File metadata

  • Download URL: wre_commit-1.0.7.tar.gz
  • Upload date:
  • Size: 19.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.4.0 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.7.7

File hashes

Hashes for wre_commit-1.0.7.tar.gz
Algorithm Hash digest
SHA256 b2319ff5adb28695104dcd86225f60ac84f74194e34a01e974abbbcce46741f0
MD5 95776a548584e6b4b4d652839d35c8c4
BLAKE2b-256 4aa317310f65938a798d617b985efece85c7abf7cdd622182fab6595ddb82e37

See more details on using hashes here.

File details

Details for the file wre_commit-1.0.7-py2.py3-none-any.whl.

File metadata

  • Download URL: wre_commit-1.0.7-py2.py3-none-any.whl
  • Upload date:
  • Size: 19.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.4.0 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.7.7

File hashes

Hashes for wre_commit-1.0.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 5fc1bfc4a1755097cba4a2705946b4002cad673a90ed94e7c75c1318518514e2
MD5 7743acda2e239f8c09a6730b1285b433
BLAKE2b-256 2c7e22fcf6d33153e67aacf14809017efc4e8142450eb226fce6cb0263aa5a93

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page