neuromodulation / py_neuromodulation

Real-time analysis of intracranial neurophysiology recordings.
https://neuromodulation.github.io/py_neuromodulation/
MIT License
41 stars 9 forks source link

Failing documentation build on readthedocs #327

Closed timonmerk closed 3 weeks ago

timonmerk commented 4 weeks ago

The folder liblsl contains the required labstreaminglayer module, and was also added in the __init__.py path. Unfortunately though on the ubuntu build from readthedocs this module cannot be found with the following build error:

Extension error: Here is a summary of the problems encountered when running the examples:

Unexpected failing examples:

../../examples/plot_7_lsl_example.py failed leaving traceback:

Traceback (most recent call last):
  File "/home/docs/checkouts/readthedocs.org/user_builds/py-neuromodulation/checkouts/latest/examples/plot_7_lsl_example.py", line 25, in <module>
    from py_neuromodulation import (
  File "/home/docs/checkouts/readthedocs.org/user_builds/py-neuromodulation/envs/latest/lib/python3.11/site-packages/py_neuromodulation/nm_mnelsl_generator.py", line 1, in <module>
    from mne_lsl.player import PlayerLSL
  File "/home/docs/checkouts/readthedocs.org/user_builds/py-neuromodulation/envs/latest/lib/python3.11/site-packages/mne_lsl/__init__.py", line 1, in <module>
    from . import datasets, lsl, player, stream, utils
  File "/home/docs/checkouts/readthedocs.org/user_builds/py-neuromodulation/envs/latest/lib/python3.11/site-packages/mne_lsl/lsl/__init__.py", line 1, in <module>
    from .functions import library_version, local_clock, protocol_version, resolve_streams
  File "/home/docs/checkouts/readthedocs.org/user_builds/py-neuromodulation/envs/latest/lib/python3.11/site-packages/mne_lsl/lsl/functions.py", line 7, in <module>
    from .load_liblsl import lib
  File "/home/docs/checkouts/readthedocs.org/user_builds/py-neuromodulation/envs/latest/lib/python3.11/site-packages/mne_lsl/lsl/load_liblsl.py", line 618, in <module>
    lib = load_liblsl()
          ^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/py-neuromodulation/envs/latest/lib/python3.11/site-packages/mne_lsl/lsl/load_liblsl.py", line 68, in load_liblsl
    libpath = _fetch_liblsl() if libpath is None else libpath
              ^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/py-neuromodulation/envs/latest/lib/python3.11/site-packages/mne_lsl/lsl/load_liblsl.py", line 282, in _fetch_liblsl
    raise RuntimeError(
RuntimeError: The downloaded LIBLSL 'liblsl-1.16.2-jammy_amd64.so' in '/home/docs/checkouts/readthedocs.org/user_builds/py-neuromodulation/envs/latest/lib/python3.11/site-packages/mne_lsl/lsl/lib' could not be loaded. It will be removed. Please visit LIBLSL library github page (https://github.com/sccn/liblsl) and install a release in the system directories or provide its path in the environment variable MNE_LSL_LIB or PYLSL_LIB.

Things tried:

timonmerk commented 4 weeks ago

@toni-neurosc You can have a try if you want but no worries if it doesn't work. I wouldn't spend too much time on it. We can also build a html file and load it in sphinx-gallery as I've done it with the CEBRA example