Skip to content

👨‍🌾 tf2_sensor_msgs can't import numpy.core._multiarray_umath on Windows Debug #524

@Blast545

Description

@Blast545

Bug report

Required Info:

  • Operating System:
    • Windows
  • Installation type:
    • Source, buildfarm
  • Version or commit hash:
    • main
  • DDS implementation:
    • N/A
  • Client library (if applicable):
    • rclpy

Steps to reproduce issue

Run a buildfarm job on nightly_win_deb

Expected behavior

All test pass.

Actual behavior

Some fail, this one in particular is failing consistently:
https://ci.ros2.org/view/nightly/job/nightly_win_deb/2341/testReport/junit/(root)/tf2_sensor_msgs/___/

============================= test session starts =============================
platform win32 -- Python 3.8.3, pytest-7.1.2, pluggy-1.0.0
cachedir: build\tf2_sensor_msgs\ament_cmake_pytest\test_tf2_sensor_msgs_py\.cache
rootdir: C:\ci\ws
plugins: ament-copyright-0.13.1, ament-flake8-0.13.1, ament-lint-0.13.1, ament-mypy-0.13.1, ament-pep257-0.13.1, ament-xmllint-0.13.1, launch-pytest-1.1.0, launch-testing-1.1.0, launch-testing-ros-0.20.0, colcon-core-0.8.3, cov-3.0.0, mock-3.7.0, repeat-0.9.1, rerunfailures-10.2, timeout-2.1.0
collected 0 items / 1 error

=================================== ERRORS ====================================
________________________ ERROR collecting test session ________________________
C:\Python38\lib\site-packages\numpy\core\__init__.py:24: in <module>
    from . import multiarray
C:\Python38\lib\site-packages\numpy\core\multiarray.py:14: in <module>
    from . import overrides
C:\Python38\lib\site-packages\numpy\core\overrides.py:7: in <module>
    from numpy.core._multiarray_umath import (
E   ModuleNotFoundError: No module named 'numpy.core._multiarray_umath'

During handling of the above exception, another exception occurred:
C:\Python38\lib\site-packages\pluggy\_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
C:\Python38\lib\site-packages\pluggy\_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
C:\Python38\lib\site-packages\_pytest\python.py:206: in pytest_collect_file
    module: Module = ihook.pytest_pycollect_makemodule(
C:\Python38\lib\site-packages\_pytest\config\compat.py:67: in fixed_hook
    return hook(**kw)
C:\Python38\lib\site-packages\pluggy\_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
C:\Python38\lib\site-packages\pluggy\_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
..\..\install\Lib\site-packages\launch_testing\pytest\hooks.py:188: in pytest_pycollect_makemodule
    entrypoint = find_launch_test_entrypoint(path)
..\..\install\Lib\site-packages\launch_testing\pytest\hooks.py:178: in find_launch_test_entrypoint
    module = import_path(path, root=None)
C:\Python38\lib\site-packages\_pytest\pathlib.py:533: in import_path
    importlib.import_module(module_name)
C:\Python38\lib\importlib\__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
<frozen importlib._bootstrap>:975: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:671: in _load_unlocked
    ???
C:\Python38\lib\site-packages\_pytest\assertion\rewrite.py:168: in exec_module
    exec(co, module.__dict__)
..\..\src\ros2\geometry2\tf2_sensor_msgs\test\test_tf2_sensor_msgs.py:34: in <module>
    from geometry_msgs.msg import Transform, TransformStamped
..\..\install\Lib\site-packages\geometry_msgs\msg\__init__.py:3: in <module>
    from geometry_msgs.msg._accel_with_covariance import AccelWithCovariance  # noqa: F401
..\..\install\Lib\site-packages\geometry_msgs\msg\_accel_with_covariance.py:11: in <module>
    import numpy  # noqa: E402, I100
C:\Python38\lib\site-packages\numpy\__init__.py:142: in <module>
    from . import core
C:\Python38\lib\site-packages\numpy\core\__init__.py:50: in <module>
    raise ImportError(msg)
E   ImportError: 
E   
E   IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!
E   
E   Importing the numpy C-extensions failed. This error can happen for
E   many reasons, often due to issues with your setup or how NumPy was
E   installed.
E   
E   We have compiled some common reasons and troubleshooting tips at:
E   
E       https://numpy.org/devdocs/user/troubleshooting-importerror.html
E   
E   Please note and check the following:
E   
E     * The Python version is: Python3.8 from "C:\Python38\python.exe"
E     * The NumPy version is: "1.18.4"
E   
E   and make sure that they are the versions you expect.
E   Please carefully study the documentation linked above for further help.
E   
E   Original error was: No module named 'numpy.core._multiarray_umath'
- generated xml file: C:\ci\ws\build\tf2_sensor_msgs\test_results\tf2_sensor_msgs\test_tf2_sensor_msgs_py.xunit.xml -
=========================== short test summary info ===========================
ERROR ..\.. - ImportError: 
!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!
============================== 1 error in 0.27s ===============================
-- run_test.py: return code 2
-- run_test.py: verify result file 'C:/ci/ws/build/tf2_sensor_msgs/test_results/tf2_sensor_msgs/test_tf2_sensor_msgs_py.xunit.xml'

Additional information

Started happening after #507 and probably requires a fix like ros2/common_interfaces#185.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions