A linter/refactoring tool to make your code smell better!
Project description
Good Smell - it makes your code smell good!
A linting/refactoring library for python best practices and lesser-known tricks
Installing:
pip install good_smell
Usage:
good_smell warn - Print warnings about smells in the code
good_smell warn PATH
good_smell warn --path PATH
Alternativly you can run it through flake8. Smells will be with the code SMLxxx
good_smell fix - Print a fixed version of the code
good_smell fix PATH [STARTING_LINE] [END_LINE]
good_smell fix --path PATH [--starting-line STARTING_LINE] [--end-line END_LINE]
Supported code smells:
Range(len(sequence))
for i in range(len(sequence)):
x = sequence[i]
do_thing(x,i)
will be fixed to
for i, x in enumerate(sequence):
do_thing(x,i)
Directly nested for loops
for i in seq_a:
for j in seq_b:
print(i, j)
to
import itertools
for i, j in itertools.product(seq_a, seq_b):
print(i, j)
Developing
Clone the repository and run inside it
pip install -e .[dev]
This will install the requirements and the package itself, updating when you edit the code.
Tests are run using pytest, simply run:
pytest
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
good_smell-0.6.tar.gz
(4.1 kB
view hashes)