GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - vyahello/flake8-debug: šŸ›‘ flake8 plugin that forbids debug funcs in prod codebase (flake8, ast)

BranchesTags
Open more actions menu

Latest commit

 

History

30 Commits
30 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
flake8_debug
flake8_debug
 
 
tests
tests
 
 
.gitignore
.gitignore
 
 
LICENSE.md
LICENSE.md
 
 
README.md
README.md
 
 
_config.yml
_config.yml
 
 
analyse-source-code.sh
analyse-source-code.sh
 
 
icon.png
icon.png
 
 
pyproject.toml
pyproject.toml
 
 
pytest.ini
pytest.ini
 
 
requirements-dev.txt
requirements-dev.txt
 
 
requirements.txt
requirements.txt
 
 
setup.py
setup.py
 
 

Repository files navigation

Screenshot

made-with-python Coverage Status Code style: black Checked with flake8 License PyPI version shields.io PyPI pyversions PyPi downloads Downloads EO principles respected here

flake8-debug

A simple flake8 plugin that forbids the usage of print, breakpoint and pdb.set_trace functions in production code.

Tools

Production

  • python 3.10+
  • flake8

Development

  • black
  • flake8
  • pytest

Installation

PYPI

pip install flake8-debug
✨ šŸ° ✨

Source code

git clone [email protected]:vyahello/flake8-debug.git
cd flake8-debug
python3 -m venv venv 
. venv/bin/activate
pip install -e .

Errors

Codes

  • DB100 - print function is detected.
  • DB200 - breakpoint function is detected.
  • DB201 - breakpointhook function is detected.
  • DB300 - set_trace function is detected.

Sample

# 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

⬆ back to top

Development notes

Testing

Please run the following script to start plugin tests:

pytest 

CI

To be able to run code analysis, please execute command below:

./analyse-source-code.sh

Meta

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

Contributing

I would highly appreciate any contribution and support. If you are interested to add your ideas into project please follow next simple steps:

  1. Clone the repository
  2. Configure git for the first time after cloning with your name and email
  3. pip install -r requirements.txt to install all project dependencies
  4. pip install -r requirements-dev.txt to install all development project dependencies
  5. Create your feature branch (git checkout -b feature/fooBar)
  6. Commit your changes (git commit -am 'Add some fooBar')
  7. Push to the branch (git push origin feature/fooBar)
  8. Create a new Pull Request

What's next

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.

⬆ back to top

About

šŸ›‘ flake8 plugin that forbids debug funcs in prod codebase (flake8, ast)

vyahello.pro/flake8-debug/

Topics

disable-printflake8-plugin

Resources

Readme
MIT license
Activity

Stars

2 stars

Watchers

1 watching

Forks

1 fork
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800Ɨ600. No cookies required.