Needed and up-to-date tools to develop in Python
Project description
Needed and up-to-date tools to develop in Python (WORK IN PROGRESS)
Documentation
The full documentation can be read at https://python-dev-tools.readthedocs.io.
Installation
In a terminal, run:
$ python3 -m pip install python-dev-tools --user
Full documentation on installation: https://python-dev-tools.readthedocs.io/en/latest/installation.html
That’s it! Use the provided linter, formatter and precommit hook where applicable.
Upgrade
$ python3 -m pip install python-dev-tools --user --upgrade
Installation with Visual Studio Code
Follow the installation procedure for 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": "flake8",
"python.formatting.provider": "black",
"python.formatting.blackPath": "whataformatter",
"python.formatting.blackArgs": [],
Adapt the previous path according to your installation.
Features
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
pydocstyle: https://github.com/PyCQA/pydocstyle
flake8 and plugins: https://gitlab.com/pycqa/flake8
flake8-2020: https://github.com/asottile/flake8-2020
flake8-bandit: https://github.com/tylerwince/flake8-bandit
flake8-broken-line: https://github.com/sobolevn/flake8-broken-line
flake8-bugbear: https://github.com/PyCQA/flake8-bugbear
flake8-builtins: https://github.com/gforcada/flake8-builtins
flake8-comprehensions: https://github.com/adamchainz/flake8-comprehensions
flake8-debugger: https://github.com/JBKahn/flake8-debugger
flake8-docstrings: https://gitlab.com/pycqa/flake8-docstrings
flake8-fixme: https://github.com/tommilligan/flake8-fixme
flake8-isort: https://github.com/gforcada/flake8-isort
flake8-logging-format: https://github.com/globality-corp/flake8-logging-format
flake8-mutable: https://github.com/ebeweber/flake8-mutable
flake8-variables-names: https://github.com/best-doctor/flake8-variables-names
pep8-naming: https://github.com/PyCQA/pep8-naming
wemake-python-styleguide: https://github.com/wemake-services/wemake-python-styleguide
Simple formatter
whataformatter a_python_file.py formats a_python_file.py
based on
autoflake: https://github.com/myint/autoflake
pyupgrade: https://github.com/asottile/pyupgrade
Simple precommit hook
TODO
License
BSD 3-Clause license, feel free to contribute: https://python-dev-tools.readthedocs.io/en/latest/contributing.html.
TODO
documentation
precommit
Changelog
2020.9.1
Use poetry
Remove redundant linters
Change max line length to 88 (default value of black)
Replace pydocstyle with flake8-docstrings
Add wemake-python-styleguide
2019.10.22
Add flake8-2020 linter
2019.07.21
Add –quiet and –diff flags to whataformatter for VS Code compatibility
2019.07.20
Add black formatter
Add autoflake formatter
Add pyupgrade formatter
2019.04.08
Add flake8 linter
Add flake8-isort linter
Add pep8-naming linter
Add flake8-comprehensions linter
Add flake8-logging-format linter
Add flake8-bugbear linter
Add flake8-builtins linter
Add flake8-broken-line linter
Add flake8-fixme linter
Add flake8-mutable linter
Add flake8-debugger linter
Add flake8-variables-names linter
Add flake8-bandit linter
2019.03.02
Add pydocstyle linter
2019.03.01
Add McCabe complexity checker
2019.02.26
Add pyflakes linter
Add pycodestyle linter
2019.02.23
First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for python_dev_tools-2020.9.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | b3d7374e7c9aa0863b3eea24f37632977cae63db1c657c738ea9cecb6584acb1 |
|
MD5 | 99dac6de9fe4e621bc6474c88a13051c |
|
BLAKE2b-256 | bad6e40c2202d6d93c74ed4c051b685d10c8040105aecbde63b541c2c438e26a |
Hashes for python_dev_tools-2020.9.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 04f3e06b1ea2e14c680433bf2f619ac46258ee60fee604df8cc6e5d9254f6fb1 |
|
MD5 | 750713dd19c23826af3978a55e5a824c |
|
BLAKE2b-256 | 9d9f476da21337e0200f55ad6ea5566cad744711e34bd0291c4902168ae114d6 |