Kuanhao-Chao / LiftOn

🚀 LiftOn: Accurate annotation mapping for GFF/GTF across assemblies
http://ccb.jhu.edu/lifton
GNU General Public License v3.0
59 stars 3 forks source link

AttributeError: module 'numpy' has no attribute 'int'. #3

Closed Kuanhao-Chao closed 4 months ago

Kuanhao-Chao commented 4 months ago

A user reported this error when running LiftOn. This is a dependency error that needs to be resolved.

Traceback (most recent call last):
  File "/hlilab/yingzhou/Softwareplayground/lifton/install/bin/./lifton", line 33, in <module>
    sys.exit(load_entry_point('lifton==1.0.0', 'console_scripts', 'lifton')())
  File "/hlilab/yingzhou/Softwareplayground/lifton/install/bin/./lifton", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/usr/local/lib/python3.9/importlib/metadata.py", line 86, in load
    module = import_module(match.group('module'))
  File "/usr/local/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/lifton/lifton.py", line 1, in <module>
    from lifton import mapping, intervals, lifton_utils, annotation, extract_sequence, stats, logger, run_liftoff, run_miniprot, run_evaluation, __version__
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/lifton/mapping.py", line 1, in <module>
    from lifton import lifton_utils, logger
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/lifton/lifton_utils.py", line 3, in <module>
    from lifton import align, lifton_class, run_liftoff, run_miniprot, logger
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/lifton/run_liftoff.py", line 4, in <module>
    from lifton.liftoff import liftoff_main
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/lifton/liftoff/liftoff_main.py", line 1, in <module>
    from lifton.liftoff import write_new_gff, liftover_types, polish, align_features, lift_features
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/lifton/liftoff/liftover_types.py", line 1, in <module>
    from lifton.liftoff  import fix_overlapping_features, lift_features, liftoff_utils, align_features, extract_features
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/lifton/liftoff/fix_overlapping_features.py", line 1, in <module>
    from lifton.liftoff  import lift_features, liftoff_utils
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/lifton/liftoff/lift_features.py", line 1, in <module>
    from lifton.liftoff  import find_best_mapping, liftoff_utils, merge_lifted_features
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/lifton/liftoff/find_best_mapping.py", line 1, in <module>
    import networkx as nx
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/networkx/__init__.py", line 115, in <module>
    import networkx.readwrite
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/networkx/readwrite/__init__.py", line 15, in <module>
    from networkx.readwrite.graphml import *
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/networkx/readwrite/graphml.py", line 314, in <module>
    class GraphML(object):
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/networkx/readwrite/graphml.py", line 346, in GraphML
    ([np.int](http://np.int/), "int"), (np.int8, "int"),
  File "/homes8/yingzhou/.local/lib/python3.9/site-packages/numpy/__init__.py", line 324, in __getattr__
    raise AttributeError(__former_attrs__[attr])
AttributeError: module 'numpy' has no attribute 'int'.
`[np.int](http://np.int/)` was a deprecated alias for the builtin `int`. To avoid this error in existing code, use `int` by itself. Doing this will not modify any behavior and is safe. When replacing `[np.int](http://np.int/)`, you may wish to use e.g. `np.int64` or `np.int32` to specify the precision. If you wish to review your current use, check the release note link for additional information.
The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
    https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations
Kuanhao-Chao commented 4 months ago

The error is caused by a networkx dependency issue. I have pushed a new commit to require the minimum version of networkx to be 3.3: https://github.com/Kuanhao-Chao/LiftOn/commit/8336d26c22d8a0f0358301b645f1cfb3635ebe2e

If you have already install LiftOn v1.0.2, you can simply update networkx, and the problem should be solved.