Meeting Notes – 25 February 2021
World MoveIt Day 2021 (Mark, Tyler)
- Imminently approaching: March 10th, 2021!
- Organizing work items into parallel “tracks”
- Want people to join focused groups to make certain kinds of contributions.
- There’s an issue on Github for discussion.
- Example track: apply ROS linters to MoveIt code, increase amount of linting on MoveIt2 and make style consistent with ROS2 code.
- Other tracks: create some practical situations for constrained motion planning (sanding, painting, etc.).
- Michael: keep in mind that people are working on all kinds of time zones (in particular there is a very big difference between times for Asia and the US).
- Tyler: goal of structured tracks is to let people work asynchronously.
- Mark: another goal is to create a community feel while everyone’s working remotely.
- Opportunity for lightning talks – if you want to talk about something submit a video!
- Will show lightning talks multiple times, to let people in different time zones see them “live”
- Mark: it would be great if lightning talk presenters could be available after their talks are shown to discuss them with the audience.
- Nathan: to support CI during WMD, we will configure Travis to use 5 concurrent runners during the month of March.
Overall CI Update (Tyler)
- Trying to get CircleCI to work well for us, starting with MoveIt2. Have some specific plans for how to make it work, but this requires time and effort to put into place.
- Also working on fixing CMake issues in MoveIt2 to make it more correct (this PR, for example).
- In the long term, we need to get off Travis. It only provides runner-based plans instead of minutes-based plans, and it doesn’t effectively support open-source projects.
- It is possible to configure Github Actions to use local runners, but this is specifically called out as inadvisable in their instructions since it could expose remote code-execution vulnerabilities.
MoveIt Collision Checker Plugin PR (Andy)
- Andy: It’s currently possible to have multiple collision checkers running in parallel. I have a PR out to change this behavior.
- Jorge: what happens if you switch plugins?
- Andy: In MoveIt1, it keeps the other plugin around idle in the background. In the new PR, you can still switch plugins at runtime.
- Jorge: We need to make sure that the specified plugin is actually the one that’s being used. I haven’t seen expected performance improvements when using Bullet.
Blockers for Noetic Release (Tyler)
- Blocked by time and effort available!
- Changelog updates are particularly time-consuming. Need to edit autogenerated logs to match desired style. Would be great to have help.
- Do we want to discuss changing how we approach changelogs so that autogenerated ones are usable? One solution is to enforce requirement for detailed commit messages and squashing.
- Felix, Mark: seems like a good thing to do!
- Felix: PR titles should be formatted as a commit message
- Simon: possible to run linter but not have it block merging?
- Tyler: there are a variety of common commit rules that we could apply
- Felix: Declarative tense, capital first letter should be imposed. Not a fan of prefixing with brackets personally.
First-Timer Issues (Tyler)
- A big challenge is that MoveIt has a high barrier to entry, so it’s not an ideal place for people to get introduced to git/Github in general.
- It also takes some effort to identify good first-timer issues and set them up to be easily implemented. Again, don’t have a lot of time and effort in which to do this.
Stale PRs (Andy)
- There are many stale MoveIt1 PRs – went up from 30 to about 50!
- Is it time to just move to MoveIt2? How much motivation do we have to backport things to MoveIt1?
- Backporting takes a lot of effort. For example, the constrained motion planning PR took a lot of work to port!
- The overall process of ROS2 migration is a bigger challenge, since lots of people and projects are still using ROS1 (even with EOL’d distributions like Kinetic). The availability of compatible hardware drivers is a really big factor when people are choosing which version of ROS to use.
- ros1_bridge isn’t a good solution for everyone
- Jorge: The whole ROS2 ecosystem has maturity issues. running into important missing or buggy features that motivate reverting to ROS1.
- Mark: Need to push through effort of migration to ROS2, otherwise we’ll have perfect software for an unsupported package.
- Tyler: I read some discussion recently about how aspects of ROS culture motivate people to use old versions. We should think about how to address this.
MoveIt2 Updates (Henning)
- More features ported and more improvements implemented!
- Added linting, CMake package setup and installation.
- Using updated ros2_control interfaces. We can release dependent packages after the next ros2_control release.
- Michael: how to maintain MoveIt Task Constructor packages across ROS2 versions?
- Jafar: can sync going forward by creating occasional sync PRs via cherry-picking.
Future Roadmap Items (Mark)
- Looking for volunteers to build out current “nice-to-have” feature requests. Post an issue!
- Felix’s own personal roadmap:
"Will definitely work on:
- Object Poses (#2037)
- Adding visual geometry to CollisionScene (only collision geometry is displayed now)
- I strongly care about and would review at lightning speed, but might not be able to commit time on:
- Scene Graph
- Multiple Trajectory Execution (hopefully with a GSoC student)
- Multiple planning pipelines (I know this is somehow in with MoveItCpp, but I don’t know what to make of that)"
Abi Sivaraman, Andy Zelenak, Boston Cleek, David Lu, David P, Fabian Schutze, Felix von Drigalski, Michael Görner, Henning Kayser, Jafar Abdi, Joachim Schleicher, Joe Schornak, Jorge Nicho, Mark Moll, Marq Rasmussen, Nathan Brooks, Simon Schmeisser, Tyler Weaver