python3-anticaptcha/setup.py

118 lines
3.5 KiB
Python
Raw Normal View History

2019-02-14 11:03:43 +00:00
import io
import os
import sys
2022-12-13 16:14:13 +00:00
import shutil
import logging
2019-02-14 11:03:43 +00:00
2022-12-13 16:14:13 +00:00
from setuptools import Command, setup
from pkg_resources import parse_requirements
from python3_anticaptcha.__version__ import __version__
2019-02-14 11:03:43 +00:00
# Package meta-data.
2019-03-19 19:26:12 +00:00
NAME = "python3-anticaptcha"
DESCRIPTION = "Python 3 Anti-Captcha service library with AIO module."
URL = "https://github.com/AndreiDrang/python3-anticaptcha"
2022-10-28 01:38:05 +00:00
EMAIL = "python-captcha@pm.me"
2019-03-19 19:26:12 +00:00
AUTHOR = "AndreiDrang, redV0ID"
2022-12-13 16:14:13 +00:00
REQUIRES_PYTHON = ">=3.7.0"
VERSION = __version__
with open("requirements.txt", "rt") as requirements_txt:
REQUIRED = [str(requirement) for requirement in parse_requirements(requirements_txt)]
2019-02-14 11:03:43 +00:00
here = os.path.abspath(os.path.dirname(__file__))
# Import the README and use it as the long-description.
# Note: this will only work if 'README.md' is present in your MANIFEST.in file!
try:
2019-03-19 19:26:12 +00:00
with io.open(os.path.join(here, "README.md"), encoding="utf-8") as f:
long_description = "\n" + f.read()
2019-02-14 11:03:43 +00:00
except FileNotFoundError:
long_description = DESCRIPTION
2019-03-19 19:26:12 +00:00
2019-02-14 11:03:43 +00:00
class UploadCommand(Command):
"""Support setup.py upload."""
2019-03-19 19:26:12 +00:00
description = "Build and publish the package."
2019-02-14 11:03:43 +00:00
user_options = []
@staticmethod
def status(s):
"""Prints things in bold."""
2019-03-19 19:26:12 +00:00
print("\033[1m{0}\033[0m".format(s))
2019-02-14 11:03:43 +00:00
def initialize_options(self):
pass
def finalize_options(self):
pass
def run(self):
2022-12-13 16:14:13 +00:00
logging.info("Clean builds . . .")
shutil.rmtree("dist/", ignore_errors=True)
logging.info("Building Source and Wheel distribution . . .")
os.system("python setup.py bdist_wheel")
logging.info("Uploading the package to PyPI via Twin . . .")
os.system("twine upload dist/* --verbose")
2019-02-14 11:03:43 +00:00
2022-12-13 16:14:13 +00:00
logging.info("🤖 Uploaded . . .")
2019-03-19 19:26:12 +00:00
2022-12-13 16:14:13 +00:00
logging.info("Clean builds . . .")
shutil.rmtree("dist/")
2019-02-14 11:03:43 +00:00
sys.exit()
2017-10-11 18:36:36 +00:00
2019-03-19 19:26:12 +00:00
2017-10-11 18:36:36 +00:00
setup(
2019-03-19 19:26:12 +00:00
name=NAME,
version=VERSION,
author=AUTHOR,
packages=["python3_anticaptcha"],
install_requires=REQUIRED,
description=DESCRIPTION,
2019-09-12 14:50:12 +00:00
long_description=long_description,
long_description_content_type="text/markdown",
2019-03-19 19:26:12 +00:00
package_dir={"python3-anticaptcha": "python3_anticaptcha"},
2019-01-10 23:42:51 +00:00
include_package_data=True,
2019-03-19 19:26:12 +00:00
url=URL,
2019-09-12 14:50:12 +00:00
author_email=EMAIL,
2019-03-19 19:26:12 +00:00
license="MIT",
keywords="""
2019-02-14 11:03:43 +00:00
captcha
anticaptcha
python3
recaptcha
security
api
python-library
python-anticaptcha
anticaptcha-client
2019-03-19 19:26:12 +00:00
""",
python_requires=REQUIRES_PYTHON,
2019-02-14 11:03:43 +00:00
zip_safe=False,
classifiers=[
2022-10-28 01:38:05 +00:00
# Trove classifiers
# Full list: https://pypi.python.org/pypi?%3Aaction=list_classifiers
"License :: OSI Approved :: MIT License",
"License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)",
2022-12-13 16:14:13 +00:00
"Development Status :: 5 - Production/Stable",
2019-03-19 19:26:12 +00:00
"Programming Language :: Python",
2022-12-13 16:14:13 +00:00
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
2022-10-29 01:24:51 +00:00
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
2019-03-19 19:26:12 +00:00
"Framework :: AsyncIO",
"Operating System :: Unix",
"Operating System :: Microsoft :: Windows",
"Operating System :: MacOS",
2019-02-14 11:03:43 +00:00
],
# Build and upload package: python3 setup.py upload
2019-03-19 19:26:12 +00:00
cmdclass={"upload": UploadCommand},
2017-10-11 18:36:36 +00:00
)
2022-12-13 16:14:13 +00:00
print("🤖 Success install ...")