Skip to content

rpbp-predictions-dashboard fails with ModuleNotFoundError #166

Description

@eboileau

Description

Calling rpbp-predictions-dashboard fails with ModuleNotFoundError: No module named 'numpy.compat'.
This is due to dash_bio importing parmed. This has apparently been fixed, but there was no release, i.e. the latest builds on conda-forge e.g. parmed-4.3.0-py312ha9124a0_2 aren't fixed. This will only fail if numpy>=2.3.

Expected behavior

To Reproduce

rpbp-predictions-dashboard --help or

import dash_bio
# import parmed

Output

Traceback (most recent call last):
File "/home/eboileau/.mambaforge/envs/rpbp4/bin/rpbp-predictions-dashboard", line 7, in <module>
from rpbp.analysis.rpbp_predictions.dashboard.rpbp_predictions_dashboard import main
File "/beegfs/homes/eboileau/.mambaforge/envs/rpbp4/lib/python3.12/site-packages/rpbp/analysis/rpbp_predictions/dashboard/rpbp_predictions_dashboard.py", line 8, in <module>
import dash_bio
File "/beegfs/homes/eboileau/.mambaforge/envs/rpbp4/lib/python3.12/site-packages/dash_bio/__init__.py", line 28, in <module>
from . import utils  # noqa: F401,E402
^^^^^^^^^^^^^^^^^^^
File "/beegfs/homes/eboileau/.mambaforge/envs/rpbp4/lib/python3.12/site-packages/dash_bio/utils/__init__.py", line 1, in <module>
from .pdb_parser import PdbParser  # noqa: F401,E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/beegfs/homes/eboileau/.mambaforge/envs/rpbp4/lib/python3.12/site-packages/dash_bio/utils/pdb_parser.py", line 7, in <module>
import parmed as pmd
File "/beegfs/homes/eboileau/.mambaforge/envs/rpbp4/lib/python3.12/site-packages/parmed/__init__.py", line 23, in <module>
from . import amber, charmm, gromacs, dlpoly, namd, openmm, rosetta, tinker, entos
File "/beegfs/homes/eboileau/.mambaforge/envs/rpbp4/lib/python3.12/site-packages/parmed/amber/__init__.py", line 14, in <module>
from .netcdffiles import NetCDFTraj, NetCDFRestart
File "/beegfs/homes/eboileau/.mambaforge/envs/rpbp4/lib/python3.12/site-packages/parmed/amber/netcdffiles.py", line 25, in <module>
from ..utils.netcdf import netcdf_file as NetCDFFile
File "/beegfs/homes/eboileau/.mambaforge/envs/rpbp4/lib/python3.12/site-packages/parmed/utils/netcdf.py", line 46, in <module>
from numpy.compat import asbytes, asstr
ModuleNotFoundError: No module named 'numpy.compat'

Environment

dash                      3.2.0              pyhd8ed1ab_0    conda-forge
dash-bio                  1.0.2              pyhd8ed1ab_0    conda-forge
parmed                    4.3.0           py312ha9124a0_2    conda-forge
rpbp                      4.0.0           py312hf731ba3_0    bioconda

Additional context

For bioconda install, this can be temporarily fixed with

# activate rp-bp conda environment and
pip install git+https://github.com/ParmEd/ParmEd@master

If this is fixed upstream by the ParmEd team, and new builds are created, this should hopefully solve the bioconda install. However, rp-bp containers will remain broken for some time. One could

git clone https://github.com/ParmEd/ParmEd
docker run --mount type=bind,src=./ParmEd,dst=/ParmEd -it quay.io/biocontainers/rpbp:4.0.0--py312hf731ba3_0 bash
root@81deb1bf8b71:/# cd ParmEd/
root@81deb1bf8b71:/ParmEd# pip install .

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions