Skip to content

Commit 2efa180

Browse files
author
Abderahmane BENALI
committed
Merge branch 'main' into devel
Bring the release-prep commits on main into devel ahead of the v0.5.0 release PR: the GitHub issue forms and PR template (#56) and the Lyrical CI matrix entry (#17). Conflict-free; ci.yml takes Lyrical from main and keeps devel's [main, devel] push/PR triggers.
2 parents e819eb5 + 6238500 commit 2efa180

5 files changed

Lines changed: 250 additions & 7 deletions

File tree

Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
name: 🐛 Bug Report
2+
description: File a bug report.
3+
labels: ["bug"]
4+
body:
5+
- type: markdown
6+
attributes:
7+
value: "**Required Info:**"
8+
- type: input
9+
id: generative_ai
10+
attributes:
11+
label: "Generated by Generative AI"
12+
description: "If this issue was generated using Generative AI, specify the tool and model used (e.g. GitHub Copilot, Claude Code)"
13+
validations:
14+
required: false
15+
- type: input
16+
id: os
17+
attributes:
18+
label: "Operating System:"
19+
description: |
20+
Please try to be specific.
21+
Run `uname -a` from a terminal and copy/paste its output here.
22+
This RMW is Linux-only (it uses `epoll`, `eventfd`, `/dev/shm` and `AF_UNIX`).
23+
value: |
24+
```
25+
<PUT OS INFO HERE>
26+
```
27+
validations:
28+
required: true
29+
- type: dropdown
30+
id: ros_distro
31+
attributes:
32+
label: "ROS 2 distro:"
33+
options:
34+
- jazzy
35+
- kilted
36+
- rolling
37+
- other (please state in Additional information)
38+
validations:
39+
required: true
40+
- type: input
41+
id: version
42+
attributes:
43+
label: "rmw_unix_socket_cpp version or commit hash:"
44+
description: |
45+
The version from `package.xml`, or the commit hash you built from (`git rev-parse HEAD`).
46+
validations:
47+
required: true
48+
- type: input
49+
id: clientlib
50+
attributes:
51+
label: "Client library (if applicable):"
52+
description: |
53+
**Examples:** *rclcpp*, *rclpy*, ...
54+
Client libraries are the APIs that allow users to implement their ROS 2 code.
55+
validations:
56+
required: false
57+
- type: dropdown
58+
id: executor
59+
attributes:
60+
label: "Executor (if applicable):"
61+
description: |
62+
Wait-set and event delivery behaviour differs noticeably between executors.
63+
options:
64+
- SingleThreadedExecutor
65+
- MultiThreadedExecutor
66+
- StaticSingleThreadedExecutor
67+
- EventsExecutor
68+
- other / not sure
69+
validations:
70+
required: false
71+
- type: dropdown
72+
id: other_rmw
73+
attributes:
74+
label: "Does the same reproducer work with another RMW?"
75+
description: |
76+
Re-run with `RMW_IMPLEMENTATION=rmw_fastrtps_cpp` (or `rmw_cyclonedds_cpp`).
77+
This tells us whether the bug is specific to this RMW or lives further up the stack.
78+
options:
79+
- "Yes — it works with another RMW, so the bug looks specific to rmw_unix_socket_cpp"
80+
- "No — it fails with another RMW too"
81+
- "Not tested"
82+
validations:
83+
required: false
84+
- type: textarea
85+
id: qos
86+
attributes:
87+
label: "QoS profile (if applicable):"
88+
description: |
89+
If you use a non-default QoS profile, post it here (reliability, durability, history, depth).
90+
Note that some policies are unsupported — see the Limitations section of the README.
91+
validations:
92+
required: false
93+
- type: textarea
94+
id: doctor
95+
attributes:
96+
label: "'ros2 doctor --report' output"
97+
description: |
98+
It can help us knowing the details of your ROS environment.
99+
Please use the command `ros2 doctor --report` and copy paste its output here.
100+
value: |
101+
<details><summary>ros2 doctor --report</summary>
102+
103+
```console
104+
<COPY OUTPUT HERE>
105+
```
106+
</details>
107+
validations:
108+
required: false
109+
- type: textarea
110+
id: repro
111+
attributes:
112+
label: "Steps to reproduce issue"
113+
description: |
114+
How do you trigger this bug? Please walk us through it step by step.
115+
Include all the commands you ran in the exact order you ran them so that anyone can reproduce the bug.
116+
Remember that every process that should talk to each other needs `RMW_IMPLEMENTATION=rmw_unix_socket_cpp` set.
117+
placeholder: |
118+
1.
119+
2.
120+
3.
121+
...
122+
validations:
123+
required: true
124+
- type: textarea
125+
id: expected
126+
attributes:
127+
label: "Expected behavior"
128+
validations:
129+
required: true
130+
- type: textarea
131+
id: actual
132+
attributes:
133+
label: "Actual behavior"
134+
description: |
135+
Include any error output. If a process crashed, a backtrace is very helpful.
136+
Setting `RCUTILS_LOGGING_SEVERITY=DEBUG` often surfaces the relevant RMW logs.
137+
validations:
138+
required: true
139+
- type: textarea
140+
id: addinfo
141+
attributes:
142+
label: "Additional information"
143+
description: |
144+
Please note any additional information to share here.
145+
e.g) Is the reported bug a regression? If so, what is the last version where it still worked fine?
146+
How many nodes/topics does your system run, and does the problem depend on that scale?
147+
validations:
148+
required: false

‎.github/ISSUE_TEMPLATE/config.yml‎

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
blank_issues_enabled: true
2+
contact_links:
3+
- name: 🔗 Not sure whether this RMW supports what you need?
4+
url: https://github.com/benaliabderrahmane/rmw_unix_socket_cpp#limitations
5+
about: The README lists the supported QoS policies and the known limitations.
6+
- name: 🔗 Want to understand how it works internally?
7+
url: https://github.com/benaliabderrahmane/rmw_unix_socket_cpp/blob/main/rmw_unix_socket_cpp/DESIGN.md
8+
about: DESIGN.md documents the discovery registry, the transports and the wait set.
9+
- name: 🔗 Have a general question on how to use ROS 2?
10+
url: https://robotics.stackexchange.com/
11+
about: The ROS community uses Robotics Stack Exchange for general project questions.
12+
- name: 🔗 Looking for documentation on active ROS distros?
13+
url: https://docs.ros.org/
14+
about: The ROS documentation is available at docs.ros.org
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: 🚀 Feature Request
2+
description: File a feature request.
3+
labels: ["enhancement"]
4+
body:
5+
- type: markdown
6+
attributes:
7+
value: "Thanks for taking the time to fill out this feature request form!"
8+
- type: textarea
9+
id: description
10+
attributes:
11+
label: Description
12+
description: |
13+
Describe in a few sentences what the feature consists of and what problem it will solve.
14+
validations:
15+
required: true
16+
- type: textarea
17+
id: motivation
18+
attributes:
19+
label: Motivation
20+
description: |
21+
Description what you are trying to solve, what is the problem to address with this Feature Request.
22+
validations:
23+
required: true
24+
- type: textarea
25+
id: implementation
26+
attributes:
27+
label: Design / Implementation Considerations
28+
description: |
29+
Relevant information on how the feature could be implemented and pros and cons of the different solutions.
30+
validations:
31+
required: false
32+
- type: textarea
33+
id: information
34+
attributes:
35+
label: Additional Information
36+
description: |
37+
If you have more details information, please describe here.
38+
validations:
39+
required: false

‎.github/PULL_REQUEST_TEMPLATE.md‎

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
## Description
2+
3+
<!--
4+
Please include a summary of the changes and the related issue.
5+
Highlight any key points or areas of concern.
6+
-->
7+
8+
<!--
9+
*Automatically closes linked issue when PR is merged.
10+
Usage: `Fixes #<issue number>`, or `Fixes (paste link of issue)`.*
11+
-->
12+
13+
Fixes # (issue)
14+
15+
### Is this user-facing behavior change?
16+
17+
<!--
18+
If no, just leave this section empty.
19+
If yes, please explain how user-experience changes with this pull request.
20+
-->
21+
22+
### How was this tested?
23+
24+
<!--
25+
Which tests did you add or run, and on which ROS 2 distro?
26+
For a bug fix, a test that fails before the change and passes after it is the best evidence.
27+
CI builds and tests run on jazzy, kilted and rolling.
28+
-->
29+
30+
### Did you use Generative AI?
31+
32+
<!--
33+
If this pull request was generated using Generative AI, please specify the tool and model used (e.g. GitHub Copilot, Claude Code).
34+
If only specific parts were generated by Generative AI, please list those parts (e.g. function A, class B, etc.).
35+
-->
36+
37+
### Additional Information
38+
39+
<!--
40+
If applicable, provide any additional context or details about the changes.
41+
-->

‎.github/workflows/ci.yml‎

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
strategy:
1515
fail-fast: false
1616
matrix:
17-
ros_distro: [jazzy, kilted, rolling]
17+
ros_distro: [jazzy, kilted, rolling, lyrical]
1818
container:
1919
image: ros:${{ matrix.ros_distro }}-ros-base
2020
# Default Docker /dev/shm is 64MB; one domain registry mmap is ~37MB
@@ -60,13 +60,14 @@ jobs:
6060
ros-${{ matrix.ros_distro }}-test-msgs \
6161
ros-${{ matrix.ros_distro }}-rosidl-typesupport-cpp \
6262
ros-${{ matrix.ros_distro }}-rosidl-runtime-cpp
63-
# rosidl_buffer is a Rolling-only package (introduced after Jazzy/
64-
# Kilted were branched) and test_msgs' exported imported targets
65-
# reference it. CMake side: find_package(rosidl_buffer QUIET) in
66-
# CMakeLists handles the apt-missing case on older distros.
67-
if [ "${{ matrix.ros_distro }}" = "rolling" ]; then
63+
# rosidl_buffer was introduced after Jazzy/Kilted were branched and
64+
# test_msgs' exported imported targets reference it; Lyrical branched
65+
# from Rolling after it landed, so both ship it. CMake side:
66+
# find_package(rosidl_buffer QUIET) in CMakeLists handles the
67+
# apt-missing case on older distros.
68+
if [ "${{ matrix.ros_distro }}" = "rolling" ] || [ "${{ matrix.ros_distro }}" = "lyrical" ]; then
6869
apt-get install -y --no-install-recommends \
69-
ros-rolling-rosidl-buffer
70+
ros-${{ matrix.ros_distro }}-rosidl-buffer
7071
fi
7172
7273
- name: Build

0 commit comments

Comments
 (0)