Skip to main content

`shed` canonicalises Python code.

Project description

shed

shed canonicalises Python code. Shed your legacy, stop bikeshedding, and move on. Black++

What does it do?

shed is basically black plus autoflake plus isort plus pyupgrade plus some custom fixers.

shed is all about convention over configuration. It's designed to be a single opinionated tool that fully canonicalises my code - formatting, imports, updates, and every other fix I can possibly automate.

There are no configuration options at all, but if the defaults aren't for you that's OK - you can still use the underlying tools directly and get most of the same effect... though you'll have to configure them yourself.

Only works in git repos, because version control is great and so is git ls-files, or in single-file mode.

Features

shed...

  1. Runs autoflake, to remove unused imports and variables, and expand star-imports
  2. Runs isort (configuration support waiting on 5.0), with autodetected first-party imports
  3. Runs pyupgrade, with autodetected minimum version >= py36
  4. Runs black, with autodetected minimum version >= py36
  5. (WIP) Runs some custom fixers based on flake8-bugbear
  6. Iterates those steps until the source code stops changing.

Changelog

0.0.2 - 2020-03-08

  • usable CLI
  • better isort autoconfig

0.0.1 - 2020-02-15

  • project kickoff

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

shed-0.0.1.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

shed-0.0.1-py3-none-any.whl (16.2 kB view details)

Uploaded Python 3

File details

Details for the file shed-0.0.1.tar.gz.

File metadata

  • Download URL: shed-0.0.1.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.3.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.7

File hashes

Hashes for shed-0.0.1.tar.gz
Algorithm Hash digest
SHA256 e142cef87ee419258ca253cb6ec586b26a0658454909daa41fbe23fa509de347
MD5 3eab2baf521d6b2f05231d2603c81144
BLAKE2b-256 61a519e71983b5f6a23b1861e3c56df2b61232822a08a316ab4c95869383c4ce

See more details on using hashes here.

Provenance

File details

Details for the file shed-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: shed-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 16.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.3.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.7

File hashes

Hashes for shed-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d18e5a55b747d2a16e23217ef54c97b77245ac5bc000cd801436d27b07eb3a56
MD5 d31828ada758e2f24b2b2c9f0b4b47b0
BLAKE2b-256 aa28ada5906205f09c561bf190a411ad572a4a0ff90947e077ce54b095065300

See more details on using hashes here.

Provenance

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