# Backport of importlib.resources for python 3.8 and earlier.
importlib_resources==6.4.0; python_version < '3.9'

# ------------------ LIBRARIES ------------------ #
# TODO: Add most of the libraries we have hooks for, and write tests
av==12.3.0
adbutils==2.7.2
APScheduler==3.10.4
backports.zoneinfo==0.2.1; python_version < '3.9'
bokeh==3.5.1; python_version >= '3.10'
boto==2.49.0
boto3==1.34.153
botocore==1.34.153
branca==0.7.2
cairocffi==1.7.1
CairoSVG==2.7.1
cassandra-driver==3.29.1
cf-units==3.2.0; sys_platform != 'win32'
cftime==1.6.4
charset_normalizer==3.3.2
cloudpickle==3.0.0
cloudscraper==1.2.71
cmocean==4.0.3
# compliance-checker requires cf-units, so same constraints apply.
compliance-checker==5.1.1; sys_platform != 'win32'
cryptography==43.0.0
dash==2.17.1
dash-bootstrap-components==1.6.0
dash-uploader==0.6.0
# discid requires libdiscid to be provided by the system.
# We install it via apt-get and brew on ubuntu and macOS CI runners, respectively.
discid==1.2.0; sys_platform != 'win32'
eth_typing==4.4.0
eth_utils==4.1.1
fabric==3.2.2
falcon==3.1.3
fiona==1.9.6; sys_platform != 'win32'
folium==0.17.0
ffpyplayer==4.5.1
geopandas==1.0.1; sys_platform != 'win32' and python_version >= '3.9'
google-api-python-client==2.139.0
graphql-query==1.4.0
python-gitlab==4.8.0
h5py==3.11.0
humanize==4.10.0
iminuit==2.28.0; python_version >= '3.9'
iso639-lang==2.2.3
kaleido==0.2.1  # pyup: != 0.2.1.post1  # Contains only an invalid armv7l wheel.
langdetect==1.0.9
mariadb==1.1.10; sys_platform != "darwin"
markdown==3.6
# MetPy is no longer runable with PyInstaller since matplotlib made pillow a dependency. See #395.
# MetPy==1.2.0
moviepy==1.0.3
mnemonic==0.21
msoffcrypto-tool==5.4.1
nest-asyncio==1.6.0
netCDF4==1.7.1.post1; python_version >= '3.9'
numba==0.60.0; python_version >= '3.9'
numcodecs==0.13.0; python_version >= '3.10'
Office365-REST-Python-Client==2.5.11
openpyxl==3.1.5
pandas==2.2.2; python_version >= '3.9'
panel==1.4.5; python_version >= '3.9'
passlib==1.7.4
pendulum==3.0.0
phonenumbers==8.13.42
pingouin==0.5.4
pinyin==0.4.0
platformdirs==4.2.2
plotly==5.23.0
publicsuffix2==2.20191221
pycparser==2.22
pycryptodome==3.20.0
pycryptodomex==3.20.0
pydicom==2.4.4
pyexcelerate==0.12.0
pyexcel_ods==0.6.0
pylibmagic==0.5.0; sys_platform != 'win32'
pylint==3.2.6
pypemicro==0.1.11
pyphen==0.16.0
pyppeteer==2.0.0
pyqtgraph==0.13.7; python_version >= "3.9"
pyusb==1.2.1
pyviz-comms==3.0.3
pyvjoy==1.0.1; sys_platform == 'win32'
pynput==1.7.7
pymssql==2.3.0
pystray==0.19.5
pythonnet==3.0.3
pytz==2024.1
pyvista==0.44.1
pyzmq==26.1.0
PyQt5==5.15.11
qtmodern==0.2.0
Rtree==1.3.0
sacremoses==0.1.1
# Remove after merging https://github.com/pyinstaller/pyinstaller/pull/6587
scipy==1.14.0; python_version >= '3.10'
sentry-sdk==2.12.0
shotgun_api3==3.5.1
spacy==3.7.5
srsly==2.4.8
swagger-spec-validator==3.0.4
tableauhyperapi==0.0.19691
thinc==9.0.0; python_version >= '3.9'
timezonefinder==6.5.2; python_version > '3.8'
trame==3.6.3
trame-client==3.2.1
trame-code==1.0.1
trame-components==2.4.0
trame-datagrid==0.2.1
trame-deckgl==2.0.3
trame-formkit==0.1.2
trame-grid-layout==1.0.3
trame-iframe==1.0.1
trame-keycloak==0.1.1
trame-leaflet==1.1.1
trame-markdown==3.0.1
trame-matplotlib==2.0.3
trame-mesh-streamer==0.1.0
trame-plotly==3.0.2
trame-pvui==0.1.1
trame-quasar==0.2.1
trame-rca==0.4.4
trame-router==2.3.0
trame-server==3.0.3
trame-simput==2.4.3
trame-tauri==0.6.1
trame-tweakpane==0.1.3
trame-vega==2.1.1
trame-vtk==2.8.9
trame-vtk3d==0.1.0
trame-vtklocal==0.3.3
trame-vuetify==2.6.2
trame-xterm==0.2.1
Twisted==24.3.0
tzdata==2024.1
Unidecode==1.3.8
vtk==9.3.1
weasyprint==62.3; python_version >= '3.9'
web3==6.20.1
websockets==12.0
zeep==4.2.1
pypsexec==0.3.0
# mimesis 12.x dropped support for python < 3.10
mimesis==17.0.0; python_version >= '3.10'
orjson==3.10.6
altair==5.3.0
shapely==2.0.5
lark==1.1.9
python-stdnum==1.20
# On linux, sounddevice and soundfile use system-provided libportaudio
# and libsndfile, respectively.
sounddevice==0.4.7; sys_platform != 'linux'
soundfile==0.12.1; sys_platform != 'linux'
limits==3.13.0
great-expectations==0.18.19
# Starting with tensorflow 2.17.0, macOS wheels are provided only for arm64 (x86_64 is deprecated).
tensorflow==2.17.0; python_version >= '3.9' and (sys_platform != 'darwin' or platform_machine == 'arm64')
pyshark==0.6.0
opencv-python==4.10.0.84
hydra-core==1.3.2
spiceypy==6.0.0
exchangelib==5.4.2
NBT==1.5.1
minecraft-launcher-lib==6.5
scikit-learn==1.5.1; python_version >= '3.9'
scikit-image==0.24.0; python_version >= '3.10'
customtkinter==5.2.2
fastparquet==2024.5.0; python_version >= '3.9'
librosa==0.10.2.post1
sympy==1.13.1
xyzservices==2024.6.0
mistune==3.0.2
pydantic==2.8.2
jsonschema==4.23.0
psutil==6.0.0
litestar==2.10.0
lingua-language-detector==2.0.2; python_version >= '3.8'
opencc-python-reimplemented==0.1.7
jieba==0.42.1
simplemma==1.0.0
wordcloud==1.9.3
eng-to-ipa==0.0.2
python-mecab-ko==1.3.7
khmer-nltk==1.6
python-crfsuite==0.9.10
pymorphy3==2.0.2
pymorphy3-dicts-uk==2.4.1.1.1663094765
sudachipy==0.6.8
sudachidict-core==20240716
sudachidict-small==20240716
sudachidict-full==20240716
wxPython==4.2.1; sys_platform == 'darwin' or sys_platform == 'win32'  # PyPI provides binary wheels for Windows and macOS
laonlp==1.2.0
pythainlp==5.0.4
gmsh==4.13.1
sspilib==0.1.0
rlp==4.0.1
eth-rlp==2.1.0
z3c.rml==4.4.0
freetype-py==2.4.0
vaderSentiment==3.3.2
langchain==0.2.12
seedir==0.5.0
cel-python==0.1.5
pygwalker==0.4.9.4
eth-hash==0.7.0
pypylon==4.0.0; python_version >= '3.9'
python-pptx==1.0.0
opentelemetry-sdk==1.26.0
xarray==2024.7.0; python_version >= '3.9'
tables==3.9.2; python_version >= '3.9'
schwifty==2024.6.1
patool==2.3.0; python_version >= '3.10'

# ------------------- Platform (OS) specifics

# eccodes package requires the eccodes shared library provided by the environment (linux distribution, homebrew, or Anaconda).
eccodes==1.7.1; sys_platform == 'darwin' or sys_platform == 'linux'

# dbus-fast has pre-built wheels only for Linux; and D-Bus is available only there, anyway.
dbus-fast==2.22.1; sys_platform == 'linux'

# PyEnchant only pre-builds macOS and Windows
pyenchant==3.2.2; sys_platform == 'darwin' or sys_platform == 'win32'

# uvloop does not currently support Windows.
uvloop==0.19.0; sys_platform != 'win32'

# pydivert only runs on Windows
pydivert==2.1.0; sys_platform == 'win32'

# pywin32-ctypes runs on Windows
pywin32-ctypes==0.2.2; sys_platform == 'win32'

# pymediainfo on linux does not bundle mediainfo shared library, and requires system one.
pymediainfo==6.1.0; sys_platform == 'darwin' or sys_platform == 'win32'

# the required library can be installed with "brew install labstreaminglayer/tap/lsl" on macOS, or with "conda install liblsl" on any platform
pylsl==1.16.2; sys_platform == "darwin"

# PyTaskbarProgress only runs on Windows
PyTaskbarProgress==0.0.8; sys_platform == 'win32'

# Include the requirements for testing
-r requirements-test.txt
