pre-commit-hooks
pipx
pre-commit-hooks | pipx | |
---|---|---|
22 | 38 | |
4,889 | 8,844 | |
2.1% | 3.0% | |
7.4 | 9.3 | |
3 days ago | 6 days ago | |
Python | Python | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
pre-commit-hooks
-
Implementing Quality Checks In Your Git Workflow With Hooks and pre-commit
# See https://pre-commit.com for more information # See https://pre-commit.com/hooks.html for more hooks repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v3.2.0 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: check-yaml - id: check-toml - id: check-added-large-files - repo: local hooks: - id: tox lint name: tox-validation entry: pdm run tox -e test,lint language: system files: ^src\/.+py$|pyproject.toml|^tests\/.+py$ types_or: [python, toml] pass_filenames: false - id: tox docs name: tox-docs language: system entry: pdm run tox -e docs types_or: [python, rst, toml] files: ^src\/.+py$|pyproject.toml|^docs\/ pass_filenames: false - repo: https://github.com/pdm-project/pdm rev: 2.10.4 # a PDM release exposing the hook hooks: - id: pdm-lock-check - repo: https://github.com/jumanjihouse/pre-commit-hooks rev: 3.0.0 hooks: - id: markdownlint
-
How to Write Impeccably Clean Code That Will Save Your Sanity
repos: - repo: https://github.com/ambv/black rev: 23.3.0 hooks: - id: black args: [--config=./pyproject.toml] language_version: python3.11 - repo: https://github.com/pycqa/flake8 rev: 6.0.0 hooks: - id: flake8 args: [--config=./tox.ini] language_version: python3.11 - repo: https://github.com/pycqa/isort rev: 5.12.0 hooks: - id: isort args: ["--profile", "black", "--filter-files"] language_version: python3.11 - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.4.0 hooks: - id: requirements-txt-fixer language_version: python3.11 - id: debug-statements - id: detect-aws-credentials - id: detect-private-key
-
Setting Up Pre-Commit Hooks in GitHub: Ensuring Code Quality and Consistency
repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: hooks: - id: check-json
-
Level up your development in Git
$ pre-commit run --all-files [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. [INFO] Initializing environment for https://github.com/psf/black. [INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [INFO] Installing environment for https://github.com/psf/black. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... Check Yaml...............................................................Passed Fix End of Files.........................................................Passed Trim Trailing Whitespace.................................................Failed - hook id: trailing-whitespace - exit code: 1 Files were modified by this hook. Additional output: Fixing sample.py black....................................................................Passed
-
What happens when you leak AWS credentials and how AWS minimizes the damage
The excellent pre-commit framework (https://pre-commit.com/) has a hook for that in its official hook collection: https://github.com/pre-commit/pre-commit-hooks#detect-aws-cr...
-
Improve your Django Code with pre-commit
exclude: .*migrations\/.* repos: - repo: https://github.com/pre-commit/pre-commit-hooks ... - repo: https://github.com/psf/black rev: 22.12.0 hooks: - id: black language_version: python3.9
-
ChatGPT based PR Reviewer and Summarizer (GH Action)
This is what we use — https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/detect_private_key.py
-
How I use pre-commit for Terraform
Personally I do also add "end-of-file-fixer" and "trailing-whitespace" from the "https://github.com/pre-commit/pre-commit-hooks" repo. That cleans up and normalizes some files as well.
-
Gitlab CI with docker compose
repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v3.3.0 hooks: - id: check-yaml args: ["--allow-multiple-documents"] - repo: local hooks: - id: forbidden-files name: forbidden files entry: found copier update rejection files; review them and remove them language: fail files: "\\.rej$" - id: black name: black entry: poetry run black language: system types: [python] - id: flake8 name: flake8 entry: poetry run flake8 language: system types: [python] - id: isort name: isort entry: poetry run isort --settings-path=. language: system types: [python] - id: pyupgrade name: pyupgrade entry: poetry run pyupgrade language: system types: [python] args: [--py310-plus] - id: mypy name: mypy description: Check python types. entry: poetry run mypy language: system types: [python]
-
Disable a direct push to GitHub main branch
repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.1.0 hooks: - id: no-commit-to-branch
pipx
-
Keep your AWS CLI config fresh with Cog
Use pipx to install Cog and my aws-sso-config-builder tool in the same environment:
- pipx
-
Implementing Quality Checks In Your Git Workflow With Hooks and pre-commit
Given how useful pre-commit is across projects I generally recommend installing via pip install --user, making it part of a tooling virtual environment, or using pipx:
-
pipx VS instld - a user suggested alternative
2 projects | 9 Dec 2023
- Pipx – Install and Run Python Applications in Isolated Environments
-
Packaging a self contained CLI application for any environment?
I would recommend going with PipX. You toss in a setup.py file, put your project on github, and then anyone on any OS can pipx install your project. It's a glorious thing. The only thing they need is 1) some supported version of Python installed, 2) pipx installed. They can even get updates by calling pipx upgrade.
-
Some confusion with system version and pyenv
See https://github.com/pypa/pipx/issues/278
-
List of software package management systems
Good overview. There are quite a few on there I was not aware of. That said, I am not sure the organizational schema makes a tone of sense. I would assume most users that come across this would be looking for a package manager for a specific platform and then weighing the options of binary/source/etc., instead of the other way around.
Also, pipx (https://github.com/pypa/pipx) would be a good addition to the list. I'd add it but I'm not sure where it would go. Maybe every section? It's cross platform and handles both binary and source based app distributions.
-
After using Python for over 2 years I am still really confused about all of the installation stuff and virtual environments
Pip is pretty simple and useful for me - you have your own environment for every script/program, requirements.txt is simple to understand too... It's kinda good solution for regular users... For more complex projects we have Poetry, PipX, that was inspired by NPM(x), I think...
-
Apple Unveils MacBook Pro Featuring M2 Pro and M2 Max
What benefit would joining your cult bestow upon me that brew does not already?
My brew list is intentionally very short and my faffing about desire is limited.
Generally I use brew to pull in asdf (https://github.com/asdf-vm/asdf) to install programming languages/tooling, it works flawlessly.
I use Pipx (https://github.com/pypa/pipx) to install python thingies (such as yt-dlp) as a cli. Go and Rust handle binaries in their languages beautifully and without issues.
What are some alternatives?
bandit - Bandit is a tool designed to find common security issues in Python code.
Poetry - Python packaging and dependency management made easy
pyupgrade - A tool (and pre-commit hook) to automatically upgrade syntax for newer versions of the language.
opstrat - Option visualization python package
tfsec - Security scanner for your Terraform code [Moved to: https://github.com/aquasecurity/tfsec]
Lean and Mean Docker containers - Slim(toolkit): Don't change anything in your container image and minify it by up to 30x (and for compiled languages even more) making it secure too! (free and open source)
tflint - A Pluggable Terraform Linter
dust - A more intuitive version of du in rust
codespell - check code for common misspellings
private-pypi - private pypi server
terraform-docs - Generate documentation from Terraform modules in various output formats
Pyjion