Skip to main content

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)

https://img.shields.io/pypi/v/python_dev_tools.svg https://img.shields.io/pypi/l/python_dev_tools.svg https://img.shields.io/pypi/pyversions/python_dev_tools.svg?logo=python&logoColor=fff https://github.com/vpoulailleau/python-dev-tools/actions/workflows/tests.yml/badge.svg Documentation Status Downloads Test Coverage Maintainability Maintainability Maintainability

Supported Python versions: the same as the classic Python interpreter (CPython)

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 --upgrade

Full documentation on installation: https://python-dev-tools.readthedocs.io/en/latest/installation.html

That’s it! Use the provided linter (flake8), formatter (whataformatter) and precommit hook (TODO) where applicable.

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

  • Open VS Code from within your activated virtual environment (in fact, make sure that flake8 from python-dev-tools is in your PYTHON_PATH)

  • In VS Code, open settings (F1 key, then type “Open Settings (JSON)”, then enter)

  • Add in the opened JSON file (before the closing }):

"python.linting.enabled": true,
"python.linting.flake8Enabled": true,
"python.linting.flake8Path": "flake8",
"python.formatting.provider": "black",
"python.formatting.blackPath": "whataformatter",
"python.formatting.blackArgs": [],

Features

Integrate features of commonly used tools. This package provides usual dependencies to develop Python software.

License

BSD 3-Clause license, feel free to contribute: https://python-dev-tools.readthedocs.io/en/latest/contributing.html.

TODO

  • flake8 formatter to add URL to information on a warning

  • documentation

  • precommit (flake8, mypy)

Changelog

2022.5.27

  • Add flake8-aaa linter

  • Add flake8-blind-except linter

  • Add flake8-breakpoint linter

  • Add flake8-class-attributes-order linter

  • Add flake8-cognitive-complexity linter

  • Add flake8-coding linter

  • Add flake8-comments linter

  • Add flake8-django linter

  • Add flake8-encoding linter

  • Add flake8-executable linter

  • Add flake8-functions-names linter

  • Add flake8-future-annotations linter

  • Add flake8-literal linter

  • Add flake8-markdown linter

  • Add flake8-noqa linter

  • Add flake8-no-pep420 linter

  • Add flake8-pie linter

  • Add flake8-pyi linter

  • Add flake8-pylint linter

  • Add flake8-secure-coding-standard linter

  • Add flake8-slots linter

  • Add flake8-use-pathlib linter

  • Add flake8-useless-assert linter

  • Add flake8-warnings linter

  • Add pandas-vet linter

2022.5.26

  • Add docformatter formatter

  • Add isort formatter

  • Add pybetter formatter

  • Add pycln formatter

  • Add removestar formatter

  • Add ssort formatter

  • Remove cohesion linter (false warnings on pure data classes such as NamedTuple)

2022.5.20

  • Add cohesion linter

  • Add dlint linter

  • Add flake8-annotations linter

  • Add flake8-annotations-complexity linter

  • Add flake8-annotations-coverage linter

  • Add flake8-black linter

  • Add flake8-expression-complexity linter

  • Add flake8-functions linter

  • Add flake8-pytest-style linter

  • Add flake8-simplify linter

  • Add flake8-tidy-imports linter

  • Add flake8-typing-imports linter

  • Add flake8-use-fstring linter

  • Remove flake8-commas linter that is deprecated

  • Fix whataformatter and add --target-version option for VS Code compatibility

2020.9.10

  • The path provided to whatalinter can be the one of a directory (recursive search of Python files)

2020.9.7

  • Remove E203 in flake8 for black compatibility

2020.9.4

  • Add whatalinter_vscode for Visual Studio Code integration

2020.9.2

  • Remove some warnings of wemake-python-styleguide, for instance allow f-strings

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

python_dev_tools-2022.5.27.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

python_dev_tools-2022.5.27-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file python_dev_tools-2022.5.27.tar.gz.

File metadata

  • Download URL: python_dev_tools-2022.5.27.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.8.10 Linux/5.4.0-113-generic

File hashes

Hashes for python_dev_tools-2022.5.27.tar.gz
Algorithm Hash digest
SHA256 7536e4e6f87d967e3b3f6fc5bfd807ac4a437a51e16d89cc489b84ff7ed7b4a2
MD5 60599c422840d8cd81a721914bdf5054
BLAKE2b-256 8889ea2e603841740f58d2f7067ec2cba095d6ad00f05cbbf9d02fa37525dd90

See more details on using hashes here.

File details

Details for the file python_dev_tools-2022.5.27-py3-none-any.whl.

File metadata

File hashes

Hashes for python_dev_tools-2022.5.27-py3-none-any.whl
Algorithm Hash digest
SHA256 5c66707c04509e7046fd9c850427bd4969d10efa503fe52106a119dcf9eef3d9
MD5 915997c73777f531fd1291cfc08de41e
BLAKE2b-256 a6538e58a69f5e276282fae803b3faaf651d4f772d2029e13b799c250d590a56

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page