diff options
Diffstat (limited to 'setup.py')
-rw-r--r-- | setup.py | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..c5ee105 --- /dev/null +++ b/setup.py @@ -0,0 +1,95 @@ +# Copyright (C) 2003-2008 Robey Pointer <robeypointer@gmail.com> +# +# This file is part of paramiko. +# +# Paramiko is free software; you can redistribute it and/or modify it under the +# terms of the GNU Lesser General Public License as published by the Free +# Software Foundation; either version 2.1 of the License, or (at your option) +# any later version. +# +# Paramiko is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR +# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more +# details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Paramiko; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA. + +import sys +from setuptools import setup + +if sys.platform == "darwin": + import setup_helper + + setup_helper.install_custom_make_tarball() + +long_description = open("README.rst").read() + +# Version info -- read without importing +_locals = {} +with open("paramiko/_version.py") as fp: + exec(fp.read(), None, _locals) +version = _locals["__version__"] + +# Have to build extras_require dynamically because it doesn't allow +# self-referencing and I hate repeating myself. +extras_require = { + "gssapi": [ + "pyasn1>=0.1.7", + 'gssapi>=1.4.1;platform_system!="Windows"', + 'pywin32>=2.1.8;platform_system=="Windows"', + ], + "invoke": ["invoke>=2.0"], + # TODO 4.0: remove entrypoint as irrelevant + "ed25519": [], +} +everything = [] +for subdeps in extras_require.values(): + everything.extend(subdeps) +extras_require["all"] = everything + +setup( + name="paramiko", + version=version, + description="SSH2 protocol library", + long_description=long_description, + author="Jeff Forcier", + author_email="jeff@bitprophet.org", + url="https://paramiko.org", + project_urls={ + "Docs": "https://docs.paramiko.org", + "Source": "https://github.com/paramiko/paramiko", + "Issues": "https://github.com/paramiko/paramiko/issues", + "Changelog": "https://www.paramiko.org/changelog.html", + "CI": "https://app.circleci.com/pipelines/github/paramiko/paramiko", + }, + packages=["paramiko"], + license="LGPL", + platforms="Posix; MacOS X; Windows", + classifiers=[ + "Development Status :: 5 - Production/Stable", + "Intended Audience :: Developers", + "License :: OSI Approved :: " + "GNU Library or Lesser General Public License (LGPL)", + "Operating System :: OS Independent", + "Topic :: Internet", + "Topic :: Security :: Cryptography", + "Programming Language :: Python", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3 :: Only", + "Programming Language :: Python :: 3.6", + "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + ], + python_requires=">=3.6", + install_requires=[ + "bcrypt>=3.2", + "cryptography>=3.3", + "pynacl>=1.5", + ], + extras_require=extras_require, +) |