# This is the pip requirements file for extensive
# PyInstaller testing.
#
# Example (assuming current dir is PyInstaller's top-level source dir)::
#
#   python -m pip install -r tests/requirements-libraries.txt  # extensive

# include requirements for base testing
-r requirements-tools.txt


# Needs work
# ----------
# These packages, if updated, produce test failures. Work needs to be done on
# these hooks. Any requirement in this list should be followed by the
# `# pyup: ignore <https://pyup.io/docs/bot/filter/>`_ comment.
#
# - v. 2.2 and above fails.
Django==2.1.8; python_version != '2.7'  # pyup: ignore
# - v 3.1.0 fails.
matplotlib==3.0.3; python_version != '2.7'  # pyup: ignore


# Working
# -------
# These packages work with no (known) issues.
babel==2.7.0
boto==2.49.0
boto3==1.9.159
botocore==1.12.159
future==0.17.1
h5py==2.9.0
markdown==3.1.1
numpy==1.16.4
openpyxl==2.6.2
phonenumbers==8.10.13
Pillow==6.0.0
pinyin==0.4.0
pycparser==2.19
pycryptodome==3.8.2
pycryptodomex==3.8.2
pyexcelerate==0.8.0
pygments==2.4.2
python-dateutil==2.8.0
pytz==2019.1
pyusb==1.0.2
pyzmq==18.0.1
requests==2.22.0
# simplejson is used for text_c_extension
simplejson==3.16.0
# Required for test_namespace_package
sqlalchemy==1.3.4
Unidecode==1.0.23
zeep==3.3.1
zope.interface==4.6.0


# Special cases
# -------------
# Per https://github.com/sdispater/pendulum/issues/365, this library fails to
# install using pip 19. A slightly older version fails CI. So, omit tests
# until this is resolved.
##pendulum==2.0.4

# Wheels are available only on OS X and Win 32. The only Windows 64-bit Python
# tests run are for Python 3.7, so exclude that. There's no way to simply
# exclude Windows 64 bit Python.
pyenchant==2.0.0; sys_platform == 'darwin' or (sys_platform == 'win32' and python_version <= '3.6')

# No wheel for Python 3.5 or higher.
PySide==1.2.4; sys_platform == 'win32' and python_version == '2.7'

# As of 14-Aug-2018, twisted doesn't offer Python 3 wheels.
twisted==19.2.0; python_version == '2.7'

# uvloop does not currently support Windows.
uvloop==0.12.2; python_version != '2.7' and sys_platform != 'win32'


# Python 3 only
# -------------
gevent==1.4.0; python_version != '2.7'
ipython==7.5.0; python_version != '2.7'
keyring==19.0.2; python_version != '2.7'
pandas==0.24.2; python_version != '2.7'
pylint==2.3.1; python_version != '2.7'
# This does provide Mac and Linux wheels for Python 2.7. Given EOL coming soon,
# don't bother testing them.
PySide2==5.12.3; python_version != '2.7'
pyqt5==5.12.2; python_version != '2.7'
pyqtwebengine==5.12.1; python_version != '2.7'
scipy==1.3.0; python_version != '2.7'
sphinx==2.0.1; python_version != '2.7'
web3==4.9.2; python_version != '2.7'
