setup.py (53 lines of code) (raw):

#!/usr/bin/env python # # Copyright (c) 2017-present, Facebook, Inc. # All rights reserved. # # This source code is licensed under the GPLv2 license found in the LICENSE # file in the root directory of this source tree. # from __future__ import absolute_import from __future__ import division from __future__ import print_function from __future__ import unicode_literals import logging import os import sys from setuptools import setup, find_packages import dcrpm.__version__ with open(os.path.join(os.path.dirname(__file__), "README.md")) as f: long_description = f.read() try: # convert readme to rst so it will be displayed on pypi (not critical so # it's ok to not do it) import pypandoc new_long_description = pypandoc.convert_text(long_description, "rst", format="md") assert new_long_description long_description = new_long_description except Exception: # it's ok if this fails. logging.exception("Could not translate readme into a rst!") if sys.version_info.major < 3 or ( sys.version_info.major == 3 and sys.version_info.minor < 6 ): tests_require = ["mock", "typing"] else: tests_require = [] tests_require.append("TestSlide") setup( name="dcrpm", version=dcrpm.__version__, packages=find_packages(exclude=["tests"]), author="Sean Karlage", author_email="skarlage@fb.com", url="https://github.com/facebookincubator/dcrpm", classifiers=[ "Operating System :: POSIX :: Linux", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Development Status :: 3 - Alpha", "Topic :: Utilities", "License :: OSI Approved :: GNU General Public License v2 (GPLv2)", ], keywords=["dcrpm", "rpm", "yum", "db_recover", "db4", "bdb"], description="A tool to detect and correct common issues around RPM database corruption.", long_description=long_description, license="GPLv2", install_requires=["psutil"], tests_require=tests_require, test_suite="tests", entry_points={"console_scripts": ["dcrpm=dcrpm.main:main"]}, )