Check Python files for repeat use of strings
Project description
Check Python files for repeat use of strings
Escape commas with \ (when enclosed in single quotes.)
Defaults can be configured in your pyproject.toml file
Installation
$ pip install constcheck
Usage
Commandline
usage: constcheck [-h] [-p PATH] [-c INT] [-l INT] [-s STR] [-i LIST] [-I LIST]
[--ignore-from [FILE=LIST [FILE=LIST ...]]] [-f] [-n] [-v]
optional arguments:
-h, --help show this help message and exit
-p PATH, --path PATH path to check files for (default: .)
-c INT, --count INT minimum number of repeat strings (default: 3)
-l INT, --len INT minimum length of repeat strings (default: 3)
-s STR, --string STR parse a string instead of a file
-i LIST, --ignore-strings LIST comma separated list of strings to exclude
-I LIST, --ignore-files LIST comma separated list of files to exclude
--ignore-from [FILE=LIST [FILE=LIST ...]] comma separated list of strings to exclude from file
-f, --filter filter out empty results
-n, --no-color disable color output
-v, --version show version and exit
API
>>> import constcheck
>>> EXAMPLE = """
... STRING_1 = "Hey"
... STRING_2 = "Hey"
... STRING_3 = "Hey"
... STRING_4 = "Hello"
... STRING_5 = "Hello"
... STRING_6 = "Hello"
... STRING_7 = "Hello"
... STRING_8 = "Hello, world"
... STRING_9 = "Hello, world"
... STRING_10 = "Hello, world"
... STRING_11 = "Hello, world"
... STRING_12 = "Hello, world"
... """
>>> constcheck.main(string=EXAMPLE)
3 | Hey
4 | Hello
5 | Hello, world
<BLANKLINE>
1
With the count argument
>>> constcheck.main(string=EXAMPLE, count=4)
4 | Hello
5 | Hello, world
<BLANKLINE>
1
With the len argument
>>> constcheck.main(string=EXAMPLE, len=6)
5 | Hello, world
<BLANKLINE>
1
With the ignore_strings argument which accepts list of str objects
>>> constcheck.main(string=EXAMPLE, ignore_strings=["Hello, world", "Hello"])
3 | Hey
<BLANKLINE>
1
Config
All keyword arguments available to constcheck.main() can be configured in the pyproject.toml file
[tool.constcheck]
path = "."
count = 3
len = 3
ignore_strings = ["Hello", "Hello, world"]
ignore_files = ["tests/__init__.py"]
filter = false
no_color = false
[tool.constcheck.ignore_from]
"tests/__init__.py" = ["Hello, world"]
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
constcheck-0.3.1.tar.gz
(11.0 kB
view hashes)
Built Distribution
constcheck-0.3.1-py3-none-any.whl
(11.0 kB
view hashes)
Close
Hashes for constcheck-0.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1aa3b3ec52d2c497a6ec849af9a658b39e91346127ee2385acfb9ffd74ea906a |
|
MD5 | 4cf7a7b6ba0c4f325e58622fbb7e0a06 |
|
BLAKE2b-256 | e469576ae56176bd7c2e6396ea097c366ceb145f96d59d3b5a363599cf325a2f |