Flake8
Dev/개발환경

Flake8

Flake8

Github 등을 통해 협업을 하다보면 자연스레 코딩 컨벤션의 중요성을 느끼게 된다.

여러 개발자가 협업을 하므로, 코드의 스타일을 통일하고 잠재적인 버그를 줄이기 위해

일관성있는 코드를 생산하는 것은 매우 중요하다.

직접 코드 리뷰를 할 수는 있으나 매우 번거로우므로 이를 도와주는 도구인 코드 정적 분석기를 사용하는 것이 좋다.

그 중 Python을 위한 대표적인 도구가 Flake 8이다.

 

Flake8 설치 및 사용법

기본적으로 PEP8을 기반으로 코드 컨벤션을 검사한다. 

설치 방법은 다음과 같다.

$ pip install flake8

 

사용법은 다음과 같다.

$ flake8 test.py

이처럼 수정해야할 사항들을 하나씩 알려준다.

차례대로 수정하면 된다. 수정할 때마다 다시 flake8 명령어를 입력하면 조금씩 줄어드는 것을 볼 수 있다. 얼마 안걸림.

 

Flake8 커스터마이징

.flake8 파일을 생성하고 수정하면 커스터마이징도 가능하다. 종종 일반적으로 생각할 필요가 없는 부분까지 에러로 표시하는 경우가 있다. 이런 부분들을 강제로 무시하기 위해서 다음과 같은 방법으로 파일을 작성하면 된다.

[flake8]
exclude =
    .git,
    .gitignore,
    *.pot,
    *.py[co],
    __pycache__,
    venv,
    .env

ignore =
    E121,
    E126,
    E127,
    E128,
    E203,
    E225,
    E226,
    E231,
    E241,
    E251,
    E261,
    E265,
    E302,
    E303,
    E305,
    E402,
    E501,
    E741,
    W291,
    W292,
    W293,
    W391,
    W503,
    W504,
    F403,
    B007,
    B950,

max-line-length = 200

 

https://help.sider.review/getting-started/recommended-rules/#recommended-ruleset

 

Recommended Ruleset | Sider Documentation

Static analysis with its default configuration typically reports many issues, and some of them don't fit your projects. Most analysis tools have the capability to let users enable/disable analysis rules for users to avoid such "false positives." But, a hug

help.sider.review

참고할만한 규칙이다.

728x90