bumpver/setup.py

100 lines
2.8 KiB
Python
Raw Normal View History

2018-09-02 21:48:12 +02:00
# This file is part of the pycalver project
2020-09-06 20:20:36 +00:00
# https://github.com/mbarkhau/pycalver
2018-09-02 21:48:12 +02:00
#
2020-09-06 20:20:36 +00:00
# Copyright (c) 2018-2020 Manuel Barkhau (mbarkhau@gmail.com) - MIT License
2018-09-02 21:48:12 +02:00
# SPDX-License-Identifier: MIT
import os
2018-12-05 09:37:34 +01:00
import sys
2018-09-02 21:48:12 +02:00
import setuptools
2018-11-04 21:34:53 +01:00
def project_path(*sub_paths):
project_dirpath = os.path.abspath(os.path.dirname(__file__))
return os.path.join(project_dirpath, *sub_paths)
2018-09-02 21:48:12 +02:00
2018-11-04 21:34:53 +01:00
def read(*sub_paths):
with open(project_path(*sub_paths), mode="rb") as fh:
2018-09-02 21:48:12 +02:00
return fh.read().decode("utf-8")
2018-11-05 00:38:20 +01:00
install_requires = [
line.strip()
for line in read("requirements", "pypi.txt").splitlines()
if line.strip() and not line.startswith("#")
]
2018-09-02 21:48:12 +02:00
2020-09-06 20:20:36 +00:00
long_description = "\n\n".join((read("README.md"), read("CHANGELOG.md")))
# See https://pypi.python.org/pypi?%3Aaction=list_classifiers
classifiers = [
"Development Status :: 4 - Beta",
"Environment :: Console",
"Environment :: Other Environment",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: Unix",
"Operating System :: POSIX",
"Operating System :: Microsoft :: Windows",
"Operating System :: MacOS :: MacOS X",
"Programming Language :: Python",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development :: Libraries :: Python Modules",
]
2018-12-05 09:37:34 +01:00
package_dir = {"": "src"}
2020-09-06 20:20:36 +00:00
is_lib3to6_fix_required = (
any(arg.startswith("bdist") for arg in sys.argv)
and (
"Programming Language :: Python :: 2.7" in classifiers
or "Programming Language :: Python :: 2" in classifiers
)
)
if is_lib3to6_fix_required:
try:
import lib3to6
package_dir = lib3to6.fix(package_dir)
except ImportError:
if sys.version_info < (3, 6):
raise
else:
sys.stderr.write((
"WARNING: Creating non-universal bdist of pycalver, "
"this should only be used for development.\n"
))
2018-12-05 09:37:34 +01:00
2018-09-02 21:48:12 +02:00
setuptools.setup(
name="pycalver",
license="MIT",
author="Manuel Barkhau",
2018-12-09 16:50:09 +01:00
author_email="mbarkhau@gmail.com",
2018-11-04 21:34:53 +01:00
url="https://gitlab.com/mbarkhau/pycalver",
2020-07-19 21:53:31 +00:00
version="202007.36",
2018-11-04 21:07:25 +01:00
keywords="version versioning bumpversion calver",
2019-02-14 22:05:02 +01:00
description="CalVer for python libraries.",
2018-09-02 21:48:12 +02:00
long_description=long_description,
2018-11-05 00:38:20 +01:00
long_description_content_type="text/markdown",
2020-09-06 20:20:36 +00:00
packages=setuptools.find_packages("src/"),
2018-12-05 09:37:34 +01:00
package_dir=package_dir,
2018-11-05 00:38:20 +01:00
install_requires=install_requires,
entry_points="""
2018-09-02 21:48:12 +02:00
[console_scripts]
2019-03-28 23:22:15 +01:00
pycalver=pycalver.cli:cli
2018-11-05 00:38:20 +01:00
""",
2020-09-06 20:20:36 +00:00
python_requires=">=2.7",
2018-11-05 00:38:20 +01:00
zip_safe=True,
2020-09-06 20:20:36 +00:00
classifiers=classifiers,
2018-09-05 21:27:10 +02:00
)