ros2 / ros2/launch

Avoid `launch` dependency on lark

Open
#282 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement help wanted
Dominant language
Python
Stars
155
Forks
182
Avg merge
2d 14h
Merged PRs (30d)
6

Description

Feature request

Feature description

https://github.com/ros2/launch/pull/226 added a dependency on lark to launch:
https://github.com/ros2/launch/blob/15af530bd2a1d207849659615fbbdbb5a4daf4a5/launch/package.xml#L10-L13.
It can be easily avoided moving the substitution parser to an independent package.

Implementation considerations

launch_xml, launch_yaml can then import this package and override the Parser parse_substitution method.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the dependency declaration in launch/package.xml and the substitution parser added by PR #226. Review how launch_xml and launch_yaml could import an independent parser package and override Parser.parse_substitution. Done means launch no longer depends on lark while the XML and YAML packages retain substitution parsing.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.