Needed and up-to-date tools to develop in Python (WORK IN PROGRESS)
The full documentation can be read at https://python-dev-tools.readthedocs.io.
- Short version:
pip install python-dev-tools
- Long version: https://python-dev-tools.readthedocs.io/en/latest/installation.html
- Use the provided linter, formatter and precommit hook where applicable
pip install --user --upgrade python-dev-tools
- Be sure to have the official Python extension installed in VS Code
- In VS Code, open settings (F1 key, then type "Open Settings (JSON)", then enter)
- Add in the opened JSON file:
"python.linting.enabled": true,
"python.linting.flake8Enabled": true,
"python.linting.flake8Path": "/home/vincent/.local/bin/whatalinter",
- Adapt the previous path according to your installation.
Integrate features of commonly used tools. This package provides usual dependencies to develop Python software.
- Simple linter
whatalinter a_python_file.py
lints a_python_file.py- output is compatible with the one of pycodestyle (formerly named pep8) for easy integration in text editors and IDE
- based on
- pycodestyle: https://github.com/PyCQA/pycodestyle
- pyflakes: https://github.com/PyCQA/pyflakes
- mccabe: https://github.com/pycqa/mccabe
- pydocstyle: https://github.com/PyCQA/pydocstyle
- flake8 and plugins: https://gitlab.com/pycqa/flake8
- flake8-isort: https://github.com/gforcada/flake8-isort
- pep8-naming: https://github.com/PyCQA/pep8-naming
- flake8-comprehensions: https://github.com/adamchainz/flake8-comprehensions
- flake8-logging-format: https://github.com/globality-corp/flake8-logging-format
- flake8-bugbear: https://github.com/PyCQA/flake8-bugbear
- flake8-builtins: https://github.com/gforcada/flake8-builtins
- flake8-broken-line: https://github.com/sobolevn/flake8-broken-line
- flake8-fixme: https://github.com/tommilligan/flake8-fixme
- flake8-mutable: https://github.com/ebeweber/flake8-mutable
- flake8-debugger: https://github.com/JBKahn/flake8-debugger
- flake8-variables-names: https://github.com/best-doctor/flake8-variables-names
- flake8-bandit: https://github.com/tylerwince/flake8-bandit
- Simple formatter
- TODO
- Simple precommit hook
- TODO
BSD 3-Clause license, feel free to contribute: https://python-dev-tools.readthedocs.io/en/latest/contributing.html.
- documentation
- linter
- add more linters
- formatter
- precommit
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.