Skip to content

Conversation

mergify[bot]
Copy link

@mergify mergify bot commented Oct 6, 2025

Add the plugin command together with the list verb to ros2 CLI.

At the moment it produces the following results:

$ ros2 plugin list
demo_plugin_component:
	Plugin(name='ros2_playground::MessageWriterDerived', type='ros2_playground::MessageWriterDerived', base='ros2_playground::MessageWriter')
rviz_default_plugins:
	Plugin(name='rviz_default_plugins/Camera', type='rviz_default_plugins::displays::CameraDisplay', base='rviz_common::Display')
	Plugin(name='rviz_default_plugins/Grid', type='rviz_default_plugins::displays::GridDisplay', base='rviz_common::Display')
	...

while passing the flag --packages only list packages that export plugins and the relative path to the XML file(s ?),

$ ros2 plugin list --packages
demo_plugin_component:
	share/demo_plugin_component/plugins_description.xml
rviz_default_plugins:
	share/rviz_default_plugins/plugins_description.xml

I'd be more than open to discuss actual output and/or output layout.

Note this does not exactly mimic ROS 1 in terms of prints layout nor in terms of use (yet),
e.g. ROS 1 --> rospack plugins --attrib=plugin <base_package_name>.

Fix ros2/ros2cli#328
Replace ros2/ros2cli#340

Signed-off-by: artivis [email protected]


This is an automatic backport of pull request #165 done by Mergify.

Signed-off-by: artivis <[email protected]>
Signed-off-by: Alejandro Hernandez Cordero <[email protected]>
Co-authored-by: Alejandro Hernandez Cordero <[email protected]>
(cherry picked from commit 1a596d6)

# Conflicts:
#	pluginlib/src/list_plugins.cpp
@mergify mergify bot added the conflicts label Oct 6, 2025
Copy link
Author

mergify bot commented Oct 6, 2025

Cherry-pick of 1a596d6 has failed:

On branch mergify/bp/kilted/pr-165
Your branch is up to date with 'origin/kilted'.

You are currently cherry-picking commit 1a596d6.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	renamed:    CHANGELOG.rst -> pluginlib/CHANGELOG.rst
	renamed:    CMakeLists.txt -> pluginlib/CMakeLists.txt
	renamed:    cmake/blank.in -> pluginlib/cmake/blank.in
	renamed:    cmake/pluginlib_enable_plugin_testing.cmake -> pluginlib/cmake/pluginlib_enable_plugin_testing.cmake
	renamed:    cmake/pluginlib_export_plugin_description_file.cmake -> pluginlib/cmake/pluginlib_export_plugin_description_file.cmake
	renamed:    cmake/pluginlib_package_hook.cmake -> pluginlib/cmake/pluginlib_package_hook.cmake
	renamed:    include/pluginlib/class_desc.hpp -> pluginlib/include/pluginlib/class_desc.hpp
	renamed:    include/pluginlib/class_list_macros.hpp -> pluginlib/include/pluginlib/class_list_macros.hpp
	renamed:    include/pluginlib/class_loader.hpp -> pluginlib/include/pluginlib/class_loader.hpp
	renamed:    include/pluginlib/class_loader_base.hpp -> pluginlib/include/pluginlib/class_loader_base.hpp
	renamed:    include/pluginlib/class_loader_imp.hpp -> pluginlib/include/pluginlib/class_loader_imp.hpp
	renamed:    include/pluginlib/exceptions.hpp -> pluginlib/include/pluginlib/exceptions.hpp
	renamed:    include/pluginlib/impl/split.hpp -> pluginlib/include/pluginlib/impl/split.hpp
	renamed:    package.xml -> pluginlib/package.xml
	renamed:    pluginlib-extras.cmake -> pluginlib/pluginlib-extras.cmake
	renamed:    test/include/test_base.hpp -> pluginlib/test/include/test_base.hpp
	renamed:    test/include/test_plugins.hpp -> pluginlib/test/include/test_plugins.hpp
	renamed:    test/include/visibility_control.hpp -> pluginlib/test/include/visibility_control.hpp
	renamed:    test/test_package.xml -> pluginlib/test/test_package.xml
	renamed:    test/test_plugins.cpp -> pluginlib/test/test_plugins.cpp
	renamed:    test/test_plugins.xml -> pluginlib/test/test_plugins.xml
	renamed:    test/unique_ptr_test.cpp -> pluginlib/test/unique_ptr_test.cpp
	renamed:    test/utest.cpp -> pluginlib/test/utest.cpp
	new file:   ros2plugin/package.xml
	new file:   ros2plugin/resource/ros2plugin
	new file:   ros2plugin/ros2plugin/__init__.py
	new file:   ros2plugin/ros2plugin/api/__init__.py
	new file:   ros2plugin/ros2plugin/command/__init__.py
	new file:   ros2plugin/ros2plugin/command/plugin.py
	new file:   ros2plugin/ros2plugin/verb/__init__.py
	new file:   ros2plugin/ros2plugin/verb/list.py
	new file:   ros2plugin/setup.py
	new file:   ros2plugin/test/test_copyright.py
	new file:   ros2plugin/test/test_flake8.py
	new file:   ros2plugin/test/test_pep257.py
	new file:   ros2plugin/test/test_xmllint.py

Unmerged paths:
  (use "git add/rm <file>..." as appropriate to mark resolution)
	deleted by us:   pluginlib/src/list_plugins.cpp

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally

@mergify mergify bot mentioned this pull request Oct 6, 2025
@ahcorde
Copy link
Contributor

ahcorde commented Oct 9, 2025

Pulls: #279
Gist: https://gist.githubusercontent.com/ahcorde/a32793824c33df6571e995c87182cfd4/raw/bf394e9019dfa3a005aebfa92a89edfea2db91eb/ros2.repos
BUILD args: --packages-above-and-dependencies pluginlib
TEST args: --packages-above pluginlib
ROS Distro: kilted
Job: ci_launcher
ci_launcher ran: https://ci.ros2.org/job/ci_launcher/17263

  • Linux Build Status
  • Linux-aarch64 Build Status
  • Linux-rhel Build Status
  • Windows Build Status

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants