Specify platform deps with PEP508

This commit is contained in:
Bastian Germann 2019-04-02 01:34:53 +02:00
parent 61dc9f69da
commit fa6f4d0c1f
2 changed files with 32 additions and 37 deletions

View File

@ -40,8 +40,8 @@ IS_MAC = sys.platform.startswith('dar')
VERS = { VERS = {
'Python': '3.6', 'Python': '3.6',
'PyQt5': '5.5', 'PyQt5': '5.12',
'Qt5': '5.5', 'Qt5': '5.12',
'pymediainfo': '2.2', 'pymediainfo': '2.2',
'sqlalchemy': '0.5', 'sqlalchemy': '0.5',
'enchant': '1.6' 'enchant': '1.6'
@ -57,6 +57,7 @@ WIN32_MODULES = [
LINUX_MODULES = [ LINUX_MODULES = [
# Optical drive detection. # Optical drive detection.
'dbus', 'dbus',
'Xlib',
] ]
MACOSX_MODULES = [ MACOSX_MODULES = [
@ -93,6 +94,7 @@ MODULES = [
OPTIONAL_MODULES = [ OPTIONAL_MODULES = [
('qdarkstyle', '(dark style support)'),
('mysql.connector', '(MySQL support)'), ('mysql.connector', '(MySQL support)'),
('pyodbc', '(ODBC support)'), ('pyodbc', '(ODBC support)'),
('psycopg2', '(PostgreSQL support)'), ('psycopg2', '(PostgreSQL support)'),

View File

@ -112,39 +112,6 @@ except Exception:
finally: finally:
ver_file.close() ver_file.close()
requires = [
'alembic',
'appdirs',
'beautifulsoup4',
'chardet',
'lxml',
'Mako',
'pymediainfo >= 2.2',
'PyQt5 >= 5.12',
'PyQtWebEngine',
'QtAwesome',
'requests',
'SQLAlchemy >= 0.5',
'waitress',
'WebOb',
'websockets'
]
test_requires = [
'nose2',
'pylint',
'pyodbc',
'pysword'
]
if sys.platform.startswith('win'):
requires.append('pywin32')
elif sys.platform.startswith('darwin'):
requires.extend([
'pyobjc',
'pyobjc-framework-Cocoa'
])
elif sys.platform.startswith('linux'):
requires.append('dbus-python')
test_requires.append('python-xlib')
setup( setup(
@ -200,7 +167,27 @@ using a computer and a data projector.""",
include_package_data=True, include_package_data=True,
zip_safe=False, zip_safe=False,
python_requires='>=3.6', python_requires='>=3.6',
install_requires=requires, install_requires=[
'alembic',
'appdirs',
'beautifulsoup4',
'chardet',
'dbus-python; platform_system=="Linux"',
'lxml',
'Mako',
'pymediainfo >= 2.2',
'pyobjc; platform_system=="Darwin"',
'pyobjc-framework-Cocoa; platform_system=="Darwin"',
'PyQt5 >= 5.12',
'PyQtWebEngine',
'pywin32; platform_system=="Windows"',
'QtAwesome',
'requests',
'SQLAlchemy >= 0.5',
'waitress',
'WebOb',
'websockets'
],
extras_require={ extras_require={
'darkstyle': ['QDarkStyle'], 'darkstyle': ['QDarkStyle'],
'mysql': ['mysql-connector-python'], 'mysql': ['mysql-connector-python'],
@ -212,7 +199,13 @@ using a computer and a data projector.""",
'jenkins': ['python-jenkins'], 'jenkins': ['python-jenkins'],
'launchpad': ['launchpadlib'] 'launchpad': ['launchpadlib']
}, },
tests_require=test_requires, tests_require=[
'nose2',
'pylint',
'pyodbc',
'pysword',
'python-xlib; platform_system=="Linux"'
],
test_suite='nose2.collector.collector', test_suite='nose2.collector.collector',
entry_points={'gui_scripts': ['openlp = run_openlp:start']} entry_points={'gui_scripts': ['openlp = run_openlp:start']}
) )