apply a consistent format to `setup.cfg` files
Project description
setup-cfg-fmt
apply a consistent format to setup.cfg
files
installation
pip install setup-cfg-fmt
cli
Consult the help for the latest usage:
$ setup-cfg-fmt --help
usage: setup-cfg-fmt [-h] [filenames [filenames ...]]
positional arguments:
filenames
optional arguments:
-h, --help show this help message and exit
what does it do?
sets a consistent ordering for attributes
For example, name
and version
(the most important metadata) will always
appear at the top.
[metadata]
-version = 1.14.4
-name = pre_commit
+name = pre_commit
+version = 1.14.4
normalizes dashes to underscores in project name
pip
will normalize names to dashesfoo_bar
=>foo-bar
python setup.py sdist
produces a filename with the name verbatimpip wheel .
produces a filename with an underscore-normalized name
$ # with dashed name
$ python setup.py sdist && pip wheel -w dist .
...
$ ls dist/ | cat
setup_cfg_fmt-0.0.0-py2.py3-none-any.whl
setup-cfg-fmt-0.0.0.tar.gz
$ # with underscore name
$ python setup.py sdist && pip wheel -w dist .
...
$ ls dist/ | cat
setup_cfg_fmt-0.0.0-py2.py3-none-any.whl
setup_cfg_fmt-0.0.0.tar.gz
This makes it easier to upload packages to pypi since they end up with the same filename prefix.
[metadata]
-name = pre-commit
+name = pre_commit
adds long_description
if README.md
is present
This will show up on the pypi project page
[metadata]
name = pre_commit
version = 1.14.5
+long_description = file: README.md
+long_description_content_type = text/markdown
adds license_file
/ license
/ license classifier if LICENSE
exists
[metadata]
name = pre_commit
version = 1.14.5
+license = MIT
+license_file = LICENSE
+classifiers =
+ License :: OSI Approved :: MIT License
sorts classifiers
[metadata]
name = pre_commit
version = 1.14.5
classifiers =
- Programming Language :: Python :: 3
- License :: OSI Approved :: MIT License
+ License :: OSI Approved :: MIT License
+ Programming Language :: Python :: 3
Programming Language :: Python :: 3.6
related projects
- setup-py-upgrade: automatically migrate
setup.py
->setup.cfg
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
setup_cfg_fmt-0.0.1.tar.gz
(4.0 kB
view details)
Built Distribution
File details
Details for the file setup_cfg_fmt-0.0.1.tar.gz
.
File metadata
- Download URL: setup_cfg_fmt-0.0.1.tar.gz
- Upload date:
- Size: 4.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c907ab16dd7790f193630ed1c75b3b63690e16cb6d615327142af0caff9e7091 |
|
MD5 | 90629f73ac1fcbccdc2ff3816f11c21c |
|
BLAKE2b-256 | aa8767d6d83df16860fb17aa5beb1047436793b91c2dd0c4d234b587ac1e1aae |
Provenance
File details
Details for the file setup_cfg_fmt-0.0.1-py2.py3-none-any.whl
.
File metadata
- Download URL: setup_cfg_fmt-0.0.1-py2.py3-none-any.whl
- Upload date:
- Size: 4.6 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6aefd8732d9c0a8830f0438b1fb28836ba0d78414a597395e2a577745fe03e4c |
|
MD5 | f2354529d7e6284c2c3552b2f4cf592c |
|
BLAKE2b-256 | b35d6c6d21cce0e6832f12b67f7d635c3c9abc9c441cc29b3e8288b766754ddb |