micro-ROS / micro_ros_platformio

micro-ROS library for Platform.IO
Apache License 2.0
225 stars 80 forks source link

Build using github action suddenly fails #152

Closed yairshlomi1 closed 1 month ago

yairshlomi1 commented 1 month ago

Issue template

Steps to reproduce the issue

Hi. I'm using github action to build my micro-ros platformio project. I've been working with this specific github action a few months without any changes, and today it suddenly stopped working. I've tested it on old tags in my repository that was successfully built using the action in the past and the new builds fails. on my ubuntu 22.04 machine it still builds without any errors or warnings

this is the action file:

name: Build

on: [push]

jobs:
  build:
    runs-on: ubuntu-latest    

    steps:
    - uses: actions/checkout@v4
    - name: Cache pip
      uses: actions/cache@v4
      with:
        path: ~/.cache/pip
        key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
        restore-keys: |
          ${{ runner.os }}-pip-
    - name: Cache PlatformIO
      uses: actions/cache@v4
      with:
        path: ~/.platformio
        key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }}

    - name: Set up Python
      uses: actions/setup-python@v5
      with:
        python-version: '3.10'

    - name: Install PlatformIO
      run: |
        sudo apt-get install -y python3.10-venv
        wget -O get-platformio.py https://raw.githubusercontent.com/platformio/platformio-core-installer/master/get-platformio.py
        python3 get-platformio.py

    - name: Run PlatformIO
      run: |
        export PATH="$HOME/.platformio/penv/bin:$PATH"
        pio run 

    - name: Archive artifacts 
      id : archive_artifacts    
      uses: actions/upload-artifact@v4   
      with:
        name: ninox-gimbal-mcu-firmware
        path: .pio/build/**/*.hex  

    - name: Create Release
      if: startsWith(github.ref, 'refs/tags/')
      id: create_release
      uses: softprops/action-gh-release@v2
      env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      with:
        token: ${{ secrets.GITHUB_TOKEN }}
        name: Release ${{ github.ref_name }}
        draft: false
        prerelease: false
        files: .pio/build/**/*.hex

Expected behavior

code builds as before

Actual behavior

Building micro-ROS library
Build mcu micro-ROS environment failed: 
--- stderr: rosidl_typesupport_interface
CMake Warning:
  Manually-specified variables were not used by the project:

    CMAKE_POSITION_INDEPENDENT_CODE
    THIRDPARTY

---
--- stderr: rcutils
CMake Warning:
  Manually-specified variables were not used by the project:

    ENABLE_TESTING
    THIRDPARTY

In file included from /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/error_handling.c:35:
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/./error_handling_helpers.h: In function '__rcutils_convert_uint64_t_into_c_str':
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/./error_handling_helpers.h:109:48: warning: unused parameter 'number' [-Wunused-parameter]
  109 | __rcutils_convert_uint64_t_into_c_str(uint64_t number, char * buffer, size_t buffer_size)
      |                                       ~~~~~~~~~^~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/./error_handling_helpers.h:109:63: warning: unused parameter 'buffer' [-Wunused-parameter]
  109 | __rcutils_convert_uint64_t_into_c_str(uint64_t number, char * buffer, size_t buffer_size)
      |                                                        ~~~~~~~^~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/./error_handling_helpers.h:109:78: warning: unused parameter 'buffer_size' [-Wunused-parameter]
  109 | __rcutils_convert_uint64_t_into_c_str(uint64_t number, char * buffer, size_t buffer_size)
      |                                                                       ~~~~~~~^~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/./error_handling_helpers.h: In function '__rcutils_format_error_string':
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/./error_handling_helpers.h:142:28: warning: unused parameter 'error_string' [-Wunused-parameter]
  142 |   rcutils_error_string_t * error_string,
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/./error_handling_helpers.h:143:33: warning: unused parameter 'error_state' [-Wunused-parameter]
  143 |   const rcutils_error_state_t * error_state)
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/error_handling.c: In function 'rcutils_get_error_string':
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/error_handling.c:240:38: warning: initializer-string for array of 'char' is too long
  240 |     return (rcutils_error_string_t) {"error not set"};  // NOLINT(readability/braces)
      |                                      ^~~~~~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/error_handling.c:240:38: note: (near initialization for '(anonymous).str')
In file included from /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/error_handling.c:35:
At top level:
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/./error_handling_helpers.h:109:1: warning: '__rcutils_convert_uint64_t_into_c_str' defined but not used [-Wunused-function]
  109 | __rcutils_convert_uint64_t_into_c_str(uint64_t number, char * buffer, size_t buffer_size)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/./error_handling_helpers.h:91:1: warning: '__rcutils_reverse_str' defined but not used [-Wunused-function]
   91 | __rcutils_reverse_str(char * string_in, size_t string_len)
      | ^~~~~~~~~~~~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/logging.c: In function 'rcutils_get_env_var_zero_or_one':
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/logging.c:130:35: warning: unused parameter 'zero_semantic' [-Wunused-parameter]
  130 |   const char * name, const char * zero_semantic,
      |                      ~~~~~~~~~~~~~^~~~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/logging.c:131:16: warning: unused parameter 'one_semantic' [-Wunused-parameter]
  131 |   const char * one_semantic)
      |   ~~~~~~~~~~~~~^~~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/time_unix.c:52:4: warning: #warning is a GCC extension
   52 | #  warning no monotonic clock function available
      |    ^~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/time_unix.c:52:4: warning: #warning no monotonic clock function available [-Wcpp]
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/time_unix.c: In function 'rcutils_system_time_now':
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/time_unix.c:74:3: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration]
   74 |   clock_gettime(CLOCK_REALTIME, &timespec_now);
      |   ^~~~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/atomic_64bits.c:53:10: warning: conflicting types for built-in function '__atomic_load_8'; expected 'long long unsigned int(const volatile void *, int)' [-Wbuiltin-declaration-mismatch]
   53 | uint64_t __atomic_load_8(uint64_t *mem, int model) {
      |          ^~~~~~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/atomic_64bits.c:62:6: warning: conflicting types for built-in function '__atomic_store_8'; expected 'void(volatile void *, long long unsigned int,  int)' [-Wbuiltin-declaration-mismatch]
   62 | void __atomic_store_8(uint64_t *mem, uint64_t val, int model) {
      |      ^~~~~~~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/atomic_64bits.c:70:10: warning: conflicting types for built-in function '__atomic_exchange_8'; expected 'long long unsigned int(volatile void *, long long unsigned int,  int)' [-Wbuiltin-declaration-mismatch]
   70 | uint64_t __atomic_exchange_8(uint64_t *mem, uint64_t val, int model) {
      |          ^~~~~~~~~~~~~~~~~~~
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rcutils/src/atomic_64bits.c:80:10: warning: conflicting types for built-in function '__atomic_fetch_add_8'; expected 'long long unsigned int(volatile void *, long long unsigned int,  int)' [-Wbuiltin-declaration-mismatch]
   80 | uint64_t __atomic_fetch_add_8(uint64_t *mem, uint64_t val, int model) {
      |          ^~~~~~~~~~~~~~~~~~~~
---
--- stderr: rosidl_adapter
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_SHARED_LIBS
    CMAKE_POSITION_INDEPENDENT_CODE
    THIRDPARTY

---
--- stderr: rosidl_runtime_c
CMake Warning at /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rcutils/cmake/ament_cmake_export_libraries-extras.cmake:116 (message):
  Package 'rcutils' exports library 'dl' which couldn't be found
Call Stack (most recent call first):
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rcutils/cmake/rcutilsConfig.cmake:41 (include)
  CMakeLists.txt:15 (find_package)

CMake Warning:
  Manually-specified variables were not used by the project:

    THIRDPARTY

---
--- stderr: rosidl_parser
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_SHARED_LIBS
    CMAKE_POSITION_INDEPENDENT_CODE
    THIRDPARTY

---
--- stderr: microcdr
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_TESTING
    Python3_EXECUTABLE
    THIRDPARTY

---
--- stderr: rosidl_cmake
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_SHARED_LIBS
    CMAKE_POSITION_INDEPENDENT_CODE
    THIRDPARTY

---
--- stderr: rosidl_typesupport_introspection_c
CMake Warning:
  Manually-specified variables were not used by the project:

    THIRDPARTY

---
--- stderr: rmw
CMake Warning at /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rcutils/cmake/ament_cmake_export_libraries-extras.cmake:116 (message):
  Package 'rcutils' exports library 'dl' which couldn't be found
Call Stack (most recent call first):
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rcutils/cmake/rcutilsConfig.cmake:41 (include)
  CMakeLists.txt:21 (find_package)

CMake Warning:
  Manually-specified variables were not used by the project:

    THIRDPARTY

In file included from /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rmw/rmw/src/validate_full_topic_name.c:17:
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rmw/rmw/src/validate_full_topic_name.c: In function 'rmw_validate_full_topic_name_with_size':
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rmw/rmw/src/validate_full_topic_name.c:106:29: warning: array subscript has type 'char' [-Wchar-subscripts]
  106 |       if (isdigit(topic_name[i + 1]) != 0) {
      |                   ~~~~~~~~~~^~~~~~~
In file included from /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rmw/rmw/src/validate_node_name.c:17:
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rmw/rmw/src/validate_node_name.c: In function 'rmw_validate_node_name_with_size':
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/rmw/rmw/src/validate_node_name.c:72:24: warning: array subscript has type 'char' [-Wchar-subscripts]
   72 |   if (isdigit(node_name[0]) != 0) {
      |               ~~~~~~~~~^~~
---
--- stderr: test_interface_files
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_SHARED_LIBS
    CMAKE_POSITION_INDEPENDENT_CODE
    THIRDPARTY

---
--- stderr: rosidl_typesupport_microxrcedds_c
CMake Warning at /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rcutils/cmake/ament_cmake_export_libraries-extras.cmake:116 (message):
  Package 'rcutils' exports library 'dl' which couldn't be found
Call Stack (most recent call first):
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rcutils/cmake/rcutilsConfig.cmake:41 (include)
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_runtime_c/cmake/ament_cmake_export_dependencies-extras.cmake:21 (find_package)
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_runtime_c/cmake/rosidl_runtime_cConfig.cmake:41 (include)
  CMakeLists.txt:22 (find_package)

CMake Warning:
  Manually-specified variables were not used by the project:

    THIRDPARTY

---
--- stderr: rosidl_generator_c
CMake Warning:
  Manually-specified variables were not used by the project:

    THIRDPARTY

---
--- stderr: rosidl_typesupport_c
CMake Warning at /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rcutils/cmake/ament_cmake_export_libraries-extras.cmake:116 (message):
  Package 'rcutils' exports library 'dl' which couldn't be found
Call Stack (most recent call first):
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rcutils/cmake/rcutilsConfig.cmake:41 (include)
  CMakeLists.txt:33 (find_package)

CMake Warning:
  Manually-specified variables were not used by the project:

    THIRDPARTY

---
--- stderr: microxrcedds_client
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_TESTING
    Python3_EXECUTABLE
    THIRDPARTY

/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/Micro-XRCE-DDS-Client/src/c/util/time.c: In function 'uxr_nanos':
/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/src/Micro-XRCE-DDS-Client/src/c/util/time.c:71:5: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration]
   71 |     clock_gettime(CLOCK_REALTIME, &ts);
      |     ^~~~~~~~~~~~~
---
--- stderr: rosidl_default_generators
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_SHARED_LIBS
    CMAKE_POSITION_INDEPENDENT_CODE
    THIRDPARTY

---
--- stderr: rosidl_default_runtime
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_SHARED_LIBS
    CMAKE_POSITION_INDEPENDENT_CODE
    THIRDPARTY

---
--- stderr: rmw_implementation_cmake
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_SHARED_LIBS
    CMAKE_POSITION_INDEPENDENT_CODE
    THIRDPARTY

---
--- stderr: builtin_interfaces
CMake Warning at /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rcutils/cmake/ament_cmake_export_libraries-extras.cmake:116 (message):
  Package 'rcutils' exports library 'dl' which couldn't be found
Call Stack (most recent call first):
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rcutils/cmake/rcutilsConfig.cmake:41 (include)
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_runtime_c/cmake/ament_cmake_export_dependencies-extras.cmake:21 (find_package)
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_runtime_c/cmake/rosidl_runtime_cConfig.cmake:41 (include)
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_typesupport_introspection_c/cmake/ament_cmake_export_dependencies-extras.cmake:21 (find_package)
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_typesupport_introspection_c/cmake/rosidl_typesupport_introspection_cConfig.cmake:41 (include)
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_typesupport_c/cmake/rosidl_typesupport_c-extras.cmake:13 (find_package)
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_typesupport_c/cmake/rosidl_typesupport_cConfig.cmake:41 (include)
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_default_generators/cmake/rosidl_default_generators-extras.cmake:21 (find_package)
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_default_generators/cmake/rosidl_default_generatorsConfig.cmake:41 (include)
  CMakeLists.txt:14 (find_package)

CMake Error at /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_adapter/cmake/rosidl_adapt_interfaces.cmake:59 (message):
  execute_process(/home/runner/.platformio/penv/bin/python -m rosidl_adapter
  --package-name builtin_interfaces --arguments-file
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/build/builtin_interfaces/rosidl_adapter__arguments__builtin_interfaces.json
  --output-dir
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/build/builtin_interfaces/rosidl_adapter/builtin_interfaces
  --output-file
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/build/builtin_interfaces/rosidl_adapter/builtin_interfaces.idls)
  returned error code 1:

  AttributeError processing template 'msg.idl.em'

  Traceback (most recent call last):

    File "/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/lib/python3.10/site-packages/rosidl_adapter/resource/__init__.py", line 51, in evaluate_template
      em.BUFFERED_OPT: True,

  AttributeError: module 'em' has no attribute 'BUFFERED_OPT'

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):

    File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/runpy.py", line 196, in _run_module_as_main
      return _run_code(code, main_globals, None,
    File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/runpy.py", line 86, in _run_code
      exec(code, run_globals)
    File "/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/lib/python3.10/site-packages/rosidl_adapter/__main__.py", line 19, in <module>
      sys.exit(main())
    File "/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/lib/python3.10/site-packages/rosidl_adapter/main.py", line 53, in main
      abs_idl_file = convert_to_idl(
    File "/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/lib/python3.10/site-packages/rosidl_adapter/__init__.py", line 19, in convert_to_idl
      return convert_msg_to_idl(
    File "/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/lib/python3.10/site-packages/rosidl_adapter/msg/__init__.py", line 39, in convert_msg_to_idl
      expand_template('msg.idl.em', data, output_file, encoding='iso-8859-1')
    File "/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/lib/python3.10/site-packages/rosidl_adapter/resource/__init__.py", line 23, in expand_template
      content = evaluate_template(template_name, data)
    File "/home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/lib/python3.10/site-packages/rosidl_adapter/resource/__init__.py", line 69, in evaluate_template
      _interpreter.shutdown()

  AttributeError: 'NoneType' object has no attribute 'shutdown'

Call Stack (most recent call first):
  /home/runner/work/led_publisher/led_publisher/.pio/libdeps/teensy40/micro_ros_platformio/build/mcu/install/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:130 (rosidl_adapt_interfaces)
  CMakeLists.txt:16 (rosidl_generate_interfaces)

---
Failed   <<< builtin_interfaces [1.15s, exited with code 1]

========================= [FAILED] Took 87.49 seconds =========================

Additional information

jeevan-vexev commented 1 month ago

:+1: am having the same issues too (using humble) :cry: First noticed it 27 Sep if that helps anyone!

yairshlomi1 commented 1 month ago

presumably, there is a new pip version that parses and installs colcon-common-extensions differently, which installs EmPy version 4.x.x, when micro-ros needs EmPy version higher than 3.3.4 but apparently lower than 4.x.x. Adding another step (in the jobs section in the action file) that manually installs the correct version of EmPy inside the venv (created by platformio) before calling to pio run solves this issue.

- name: Install empy in PlatformIO Environment
    run: |
        ~/.platformio/penv/bin/pip install --upgrade empy==3.3.4
roboticvedant commented 4 weeks ago

i am still having the same issue