TorchDSP / torchsig

TorchSig is an open-source signal processing machine learning toolkit based on the PyTorch data handling pipeline.
MIT License
155 stars 37 forks source link

Documentation Generation Fails "NameError: name '_C' is not defined" #205

Closed sciafri closed 2 days ago

sciafri commented 1 year ago

Describe the bug Documents fail to build out in both the develop branch and the main branch (as of commmits on 9.8.2023)

To Reproduce Steps to reproduce the behavior:

  1. cd docs
  2. pip install -r docs-requirements.txt
  3. make html
  4. Resultant errors:
    Details

(torchsig_pip) :~/torchsig/docs$ make html
sphinx-build -b html -d build/doctrees   . build/html
Running Sphinx v7.2.5
WARNING: html_static_path entry '_static' does not exist
loading pickled environment... done
building [mo]: targets for 0 po files that are out of date
writing output...
building [html]: targets for 0 source files that are out of date
updating environment: 0 added, 4 changed, 0 removed
/torchsig/torchsig/datasets/modulations.py:3: UserWarning: The NumPy module was reloaded (imported a second time). This can in some cases result in small but subtle issues and is discouraged.
  import numpy as np
/torchsig/torchsig/datasets/modulations.py:3: UserWarning: The NumPy module was reloaded (imported a second time). This can in some cases result in small but subtle issues and is discouraged.
  import numpy as np
reading sources... [100%] utils
WARNING: autodoc: failed to import class 'sig53.Sig53' from module 'torchsig.datasets'; the following exception was raised:
Traceback (most recent call last):
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/sphinx/ext/autodoc/importer.py", line 65, in import_module
    return importlib.import_module(modname)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/torchsig/torchsig/datasets/sig53.py", line 1, in <module>
    from torchsig.utils.types import SignalData, ModulatedRFMetadata, Signal
  File "/torchsig/torchsig/utils/types.py", line 2, in <module>
    from torch import Tensor
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/torch/__init__.py", line 1157, in <module>
    from torch._C._VariableFunctions import *  # type: ignore[misc] # noqa: F403
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ModuleNotFoundError: No module named 'torch._C._VariableFunctions'; 'torch._C' is not a package

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/sphinx/ext/autodoc/importer.py", line 90, in import_object
    module = import_module(modname, warningiserror=warningiserror)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/sphinx/ext/autodoc/importer.py", line 69, in import_module
    raise ImportError(exc, traceback.format_exc()) from exc
ImportError: (ModuleNotFoundError("No module named 'torch._C._VariableFunctions'; 'torch._C' is not a package"), 'Traceback (most recent call last):\n  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/sphinx/ext/autodoc/importer.py", line 65, in import_module\n    return importlib.import_module(modname)\n           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File "/miniconda3/envs/torchsig_pip/lib/python3.11/importlib/__init__.py", line 126, in import_module\n    return _bootstrap._gcd_import(name[level:], package, level)\n           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import\n  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load\n  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked\nFile "<frozen importlib._bootstrap>", line 690, in _load_unlocked\n  File "<frozen importlib._bootstrap_external>", line 940, in exec_module\n  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed\n  File "/torchsig/torchsig/datasets/sig53.py", line 1, in <module>\n    from torchsig.utils.types import SignalData, ModulatedRFMetadata, Signal\n  File "/torchsig/torchsig/utils/types.py", line 2, in <module>\n    from torch import Tensor\n  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/torch/__init__.py", line 1157, in <module>\n    from torch._C._VariableFunctions import *  # type: ignore[misc] # noqa: F403\n    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nModuleNotFoundError: No module named \'torch._C._VariableFunctions\'; \'torch._C\' is not a package\n')

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/sphinx/ext/autodoc/importer.py", line 65, in import_module
    return importlib.import_module(modname)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/torchsig/torchsig/datasets/sig53.py", line 1, in <module>
    from torchsig.utils.types import SignalData, ModulatedRFMetadata, Signal
  File "/torchsig/torchsig/utils/types.py", line 2, in <module>
    from torch import Tensor
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/torch/__init__.py", line 933, in <module>
    from ._tensor import Tensor
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/torch/_tensor.py", line 21, in <module>
    from torch.overrides import (
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/torch/overrides.py", line 1565, in <module>
    has_torch_function = _add_docstr(
                         ^^^^^^^^^^^^
RuntimeError: function '_has_torch_function' already has a docstring

[hundreds of similar errors ...]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/sphinx/ext/autodoc/importer.py", line 65, in import_module
    return importlib.import_module(modname)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/torchsig/torchsig/utils/visualize.py", line 10, in <module>
    import torch
  File "/miniconda3/envs/torchsig_pip/lib/python3.11/site-packages/torch/__init__.py", line 457, in <module>
    for name in dir(_C):
                    ^^
NameError: name '_C' is not defined

looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
copying assets... copying static files... done
copying extra files... done
done
writing output... [100%] utils
generating indices... genindex py-modindex done
highlighting module code...
writing additional pages... search done
copying images... [100%] logo.png
dumping search index in English (code: en)... done
dumping object inventory... done
build succeeded, 152 warnings.

The HTML pages are in build/html.

Build finished. The HTML pages are in build/html.
(torchsig_pip) :~/torchsig/docs$

  1. build/html folder has documents created but missing many descriptions and functionality.

Expected behavior Documents fully built out with full functionality

Screenshots N/A

Desktop (please complete the following information):

MattCarrickPL commented 2 days ago

Issue 1 year old and with significant code changes, unclear if still relevant. Closing.