add support for additional build-types, e.g., ros2 pkg create --build-type anewbuildtype
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 262
- Forks
- 228
- Avg merge
- 23h 15m
- Merged PRs (30d)
- 12
Description
This enhancement request is to enable the creation of packages for build-types other than c/c++ and python, i.e.,ros2 pkg create --build-type mynewbuildtype
Specifically I'm proposing the addition of an extension point for additional build-types. Something like this:
entry_points={
'ros2cli.extension_point': [
'ros2pkg.build_type = ros2pkg.build_type:BuildTypeExtension',
],
As an experiment I implemented this extension point and it was quite simple to work into ros2pkg.verb.command.py with minimal changes, no refactoring of existing build-types required. I've been using my implementation for creating javascript/rclnodejs projects. I would be glad to share a PR for your consideration. If included in ros2cli, we (the rclnodejs team) will release a new build type for creating nodejs projects that properly work with ros2 run and ros2 launch commands.
Thoughts?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in ros2pkg.verb.command.py and review the proposed ros2cli.extension_point entry for build types. Check how the existing C/C++ and Python build types are selected, then verify that an additional build type can be used with ros2 pkg create without changing those existing types.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, python
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100