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?style=flat-square&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

Changelog

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.26.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

python_dev_tools-2022.5.26-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: python_dev_tools-2022.5.26.tar.gz
  • Upload date:
  • Size: 9.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.26.tar.gz
Algorithm Hash digest
SHA256 560767bd202e818c511e52c95d8473573d754581df88eb83ab7dac45ce441f66
MD5 d7ec7ef81832a83c6cf2197234411821
BLAKE2b-256 d223d24101ba369efec691da49765d3c4346129cb604adbe69782a783cea89d0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for python_dev_tools-2022.5.26-py3-none-any.whl
Algorithm Hash digest
SHA256 38655a9fde85ba9cd0c6aae88ee7bd29a8f1dad1c2e0f447c0eb54a2b7de7080
MD5 4517243ee71004d0ab07e3cc86d1dbe7
BLAKE2b-256 f1dcd5074075e2dfa6654a7cf94fd753af16bb32aba11db46007db9d07fe2ba7

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