Correct PyPI package dependencies

* Remove unused install requires from ipapython
* Add missing requirements to ipaserver
* Correct dependencies for yubico otptoken
* Add explicit dependency on cffi for csrgen
* Python 2 uses python-ldap, Python 3 pyldap

https://pagure.io/freeipa/issue/6875

Signed-off-by: Christian Heimes <cheimes@redhat.com>
Reviewed-By: Martin Basti <mbasti@redhat.com>
This commit is contained in:
Christian Heimes
2017-04-10 10:00:23 +02:00
committed by Martin Basti
parent 38276d3473
commit 26ab51ddf4
6 changed files with 23 additions and 15 deletions

View File

@@ -50,12 +50,11 @@ if __name__ == '__main__':
], ],
}, },
install_requires=[ install_requires=[
"cffi",
"cryptography", "cryptography",
"ipalib", "ipalib",
"ipapython", "ipapython",
"jinja2", "jinja2",
"python-yubico",
"pyusb",
"qrcode", "qrcode",
"six", "six",
], ],
@@ -66,7 +65,7 @@ if __name__ == '__main__':
}, },
extras_require={ extras_require={
"install": ["ipaplatform"], "install": ["ipaplatform"],
"otptoken_yubikey": ["yubico", "usb"] "otptoken_yubikey": ["python-yubico", "pyusb"],
}, },
zip_safe=False, zip_safe=False,
) )

View File

@@ -41,16 +41,14 @@ if __name__ == '__main__':
"cryptography", "cryptography",
"dnspython", "dnspython",
"gssapi", "gssapi",
"jwcrypto",
# "ipalib", # circular dependency # "ipalib", # circular dependency
"pyldap",
"netaddr", "netaddr",
"netifaces", "netifaces",
"requests",
"six", "six",
], ],
extras_require={ extras_require={
":python_version<'3'": ["enum34"], ":python_version<'3'": ["enum34", "python-ldap"],
":python_version>='3'": ["pyldap"],
"install": ["dbus-python"], # for certmonger "install": ["dbus-python"], # for certmonger
}, },
) )

View File

@@ -55,10 +55,11 @@ if __name__ == '__main__':
"ipalib", "ipalib",
"ipaplatform", "ipaplatform",
"ipapython", "ipapython",
"jwcrypto",
"lxml", "lxml",
"netaddr", "netaddr",
"pyasn1", "pyasn1",
"pyldap", "requests",
"six", "six",
], ],
entry_points={ entry_points={
@@ -70,6 +71,8 @@ if __name__ == '__main__':
], ],
}, },
extras_require={ extras_require={
":python_version<'3'": ["python-ldap"],
":python_version>='3'": ["pyldap"],
# These packages are currently not available on PyPI. # These packages are currently not available on PyPI.
"dcerpc": ["samba", "pysss", "pysss_nss_idmap"], "dcerpc": ["samba", "pysss", "pysss_nss_idmap"],
"hbactest": ["pyhbac"], "hbactest": ["pyhbac"],

View File

@@ -101,6 +101,7 @@ common_args = dict(
"Programming Language :: Python :: 2.7", "Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3", "Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: CPython",
"Operating System :: POSIX", "Operating System :: POSIX",
"Operating System :: POSIX :: Linux", "Operating System :: POSIX :: Linux",
@@ -138,13 +139,20 @@ def ipasetup(name, doc, **kwargs):
cmdclass = setup_kwargs.setdefault('cmdclass', {}) cmdclass = setup_kwargs.setdefault('cmdclass', {})
cmdclass['build_py'] = build_py cmdclass['build_py'] = build_py
# Env markers like ":python_version<'3.3'" are not supported by # Env markers like ":python_version<'3'" are not supported by
# setuptools < 18.0. # setuptools < 18.0.
if 'extras_require' in setup_kwargs and SETUPTOOLS_VERSION < (18, 0, 0): if 'extras_require' in setup_kwargs and SETUPTOOLS_VERSION < (18, 0, 0):
for k in list(setup_kwargs['extras_require']): for k in list(setup_kwargs['extras_require']):
if k.startswith(':'): if not k.startswith(':'):
req = setup_kwargs.setdefault('install_requires', []) continue
req.extend(setup_kwargs['extras_require'].pop(k)) values = setup_kwargs['extras_require'].pop(k)
req = setup_kwargs.setdefault('install_requires', [])
if k == ":python_version<'3'" and sys.version_info.major == 2:
req.extend(values)
elif k == ":python_version>='3'" and sys.version_info.major >= 3:
req.extend(values)
else:
raise ValueError(k, values)
os.chdir(local_path) os.chdir(local_path)
try: try:

View File

@@ -68,12 +68,13 @@ if __name__ == '__main__':
"ipapython", "ipapython",
"nose", "nose",
"polib", "polib",
"pyldap",
"pytest", "pytest",
"pytest_multihost", "pytest_multihost",
"six", "six",
], ],
extras_require={ extras_require={
":python_version<'3'": ["python-ldap"],
":python_version>='3'": ["pyldap"],
"integration": ["dbus-python", "pyyaml", "ipaserver"], "integration": ["dbus-python", "pyyaml", "ipaserver"],
"ipaserver": ["ipaserver"], "ipaserver": ["ipaserver"],
"webui": ["selenium", "pyyaml", "ipaserver"], "webui": ["selenium", "pyyaml", "ipaserver"],

View File

@@ -22,8 +22,7 @@ commands=
[testenv:pylint2] [testenv:pylint2]
basepython=python2.7 basepython=python2.7
deps= deps=
ipaclient ipaclient[otptoken_yubikey]
ipapython[certmonger]
pylint pylint
commands= commands=
{envpython} -m pylint \ {envpython} -m pylint \