A simple flake8 plugin that forbids the usage of
breakpoint
andpdb.set_trace
functions in production code.
- python 3.7+
- flake8
pip install flake8-debug
β¨ π° β¨
git clone [email protected]:vyahello/flake8-debug.git
cd flake8-debug
python3 -m venv venv
. venv/bin/activate
pip install -e .
DB100
- print function is detected.DB200
- breakpoint function is detected.DB201
- breakpointhook function is detected.DB300
- set_trace function is detected.
# foo.py
import pdb
from pdb import set_trace
from sys import breakpointhook
def bar(*a):
print(a)
breakpoint()
breakpointhook()
set_trace()
pdb.set_trace()
flake8 foo.py
foo.py:7:5: DB100 print() function usage is detected
foo.py:8:5: DB200 breakpoint() function usage is detected
foo.py:9:5: DB201 breakpointhook() function usage is detected
foo.py:10:5: DB300 set_trace() function usage is detected
foo.py:11:5: DB300 set_trace() function usage is detected
Please run the following script to start plugin tests:
pytest
To be able to run code analysis, please execute command below:
./analyse-source-code.sh
Author β Vladimir Yahello.
Distributed under the MIT
license. See license for more information.
You can reach out me at:
- [email protected]
- https://twitter.com/vyahello
- https://www.linkedin.com/in/volodymyr-yahello-821746127
I would highly appreciate any contribution and support. If you are interested to add your ideas into project please follow next simple steps:
- Clone the repository
- Configure
git
for the first time after cloning with yourname
andemail
pip install -r requirements.txt
to install all project dependenciespip install -r requirements-dev.txt
to install all development project dependencies- Create your feature branch (git checkout -b feature/fooBar)
- Commit your changes (git commit -am 'Add some fooBar')
- Push to the branch (git push origin feature/fooBar)
- Create a new Pull Request
All recent activities and ideas are described at project issues page. If you have ideas you want to change/implement please do not hesitate and create an issue.