Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync ros2-development-custom to 4.56.3 #3

Open
wants to merge 181 commits into
base: ros2-development-custom
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
181 commits
Select commit Hold shift + click to select a range
b1e3963
Update README.md
SamerKhshiboun Oct 10, 2023
88818df
Update README.md
SamerKhshiboun Oct 10, 2023
8834e34
Merge PR #2901 from SamerKhshiboun: Update Anchors Links In README.md
SamerKhshiboun Oct 10, 2023
9ef9638
Update main.yml
Arun-Prasad-V Dec 4, 2023
4679aa4
PR #2943 from Arun-Prasad-V: Update main.yml
Nir-Az Dec 4, 2023
e09414d
Disabling hdr while updating exposure & gain values
Arun-Prasad-V Nov 22, 2023
dc6cbdc
Merge branch 'IntelRealSense:ros2-development' into hdr_enabled
Arun-Prasad-V Dec 4, 2023
573d6a7
add error handling to avoid crash when asic temperature monitor occas…
gwen2018 Dec 14, 2023
8384c89
Return failure in SetParam callback in case of error
Arun-Prasad-V Dec 14, 2023
91c0f35
PR #2946 from gwen2018: fix ros random crash with error hw monitor co…
Nir-Az Dec 15, 2023
734f92a
PR #2934 from Arun-Prasad-V: Disabling hdr while updating exposure & …
Nir-Az Dec 15, 2023
c5e5d3b
Fixing the data_type of ROS Params exposure & gain
Arun-Prasad-V Nov 29, 2023
25ceeae
Added live camera test for dynamic seq_id update
Arun-Prasad-V Dec 15, 2023
4610843
Disabling HDR during INIT
Arun-Prasad-V Dec 18, 2023
7bf5176
PR #2948 from Arun-Prasad-V: Disabling HDR during INIT
Nir-Az Dec 18, 2023
9d0a77c
PR #2940 from Arun-Prasad-V: Fixing the data_type of ROS Params expos…
Nir-Az Dec 19, 2023
0ab7e4f
Added urdf & mesh files for D405 model
Arun-Prasad-V Dec 22, 2023
d7b029f
PR #2953 from Arun-Prasad-V: Added urdf & mesh files for D405 model
Nir-Az Dec 26, 2023
d27a327
to_urdf fun retrun a str, not a BufferedRandom
hellototoro Jan 1, 2024
79b7fb3
PR #2957 from hellototoro: to_urdf fun retrun a str, not a BufferedRa…
Nir-Az Jan 2, 2024
da05add
Extending LibRS's GL support to RS ROS2
Arun-Prasad-V Dec 29, 2023
33c5f47
Set top level permission for GHA
SamerKhshiboun Jan 8, 2024
2c2d628
PR #2966 from SamerKhshiboun: Set top level permission for GHA for R…
Nir-Az Jan 8, 2024
8b298b4
remove-deprecated-nodes-usages
SamerKhshiboun Jan 8, 2024
78b58d1
updated readme on how to enable GPU acceleration
Arun-Prasad-V Jan 10, 2024
08e5fb4
Update issue templates
SamerKhshiboun Jan 11, 2024
8d04747
Update issue templates
SamerKhshiboun Jan 11, 2024
d56d382
Merge PR #2968 from SamerKhshiboun: Fix GHA Warning - Remove deprecat…
SamerKhshiboun Jan 11, 2024
15cf396
Update bug-report---feature-request.md
SamerKhshiboun Jan 11, 2024
a3a04eb
Rename bug-report---feature-request.md to ISSUE_TEMPLATE.md
SamerKhshiboun Jan 11, 2024
6b54ac7
Update Issue Template
SamerKhshiboun Jan 11, 2024
febbfa4
Update Issue Template
SamerKhshiboun Jan 11, 2024
7bd5c60
Update Issue Template
SamerKhshiboun Jan 12, 2024
d6417d9
Added GL support for Align-Depth filter
Arun-Prasad-V Jan 12, 2024
73df46b
Configured GLFW to create a hidden window
Arun-Prasad-V Jan 19, 2024
f77ac0e
Fix All Profiles Test
deep0294 Jan 25, 2024
447f1e9
Reverting the GL support of Align-Depth filter
Arun-Prasad-V Jan 25, 2024
4943275
updated readme
Arun-Prasad-V Jan 25, 2024
2cf6cc6
Used indices to address the enumerated devices output
deep0294 Jan 30, 2024
005ec5d
remove d465 sku from ros2 wrapper
SamerKhshiboun Jan 31, 2024
58593f6
PR #2956 from Arun-Prasad-V: Extending LibRS's GL support to RS ROS2
Nir-Az Feb 1, 2024
6036e60
Added support for dynamically switching b/w CPU / GPU processing
Arun-Prasad-V Feb 1, 2024
202e869
PR #2984 from deep0294: Fix All Profiles Test
Nir-Az Feb 5, 2024
ae3ac2d
PR #2987 from SamerKhshiboun: Remove D465 SKU
SamerKhshiboun Feb 7, 2024
5337ee5
Use zeroed intrinsic for profiles that does not have defined intrinsic
SamerKhshiboun Feb 7, 2024
d07957e
PR #2998 from SamerKhshiboun: fix calibration intrinsic fail
SamerKhshiboun Feb 7, 2024
2c59d4c
add pointcloud QoS description
gwen2018 Feb 8, 2024
57f819a
Updated updateSensors() function
Arun-Prasad-V Feb 8, 2024
d155f82
Update ReadMe to run ROS2 Unit Test
deep0294 Feb 9, 2024
c86312d
updated readme
Arun-Prasad-V Feb 14, 2024
45e7252
PR #3001 from deep0294: Update ReadMe to run ROS2 Unit Test
SamerKhshiboun Feb 14, 2024
c3d80aa
PR #3000 from gwen2018: add pointcloud QoS description
SamerKhshiboun Feb 14, 2024
c76358c
PR #2989 from Arun-Prasad-V: Dynamically switching b/w CPU & GPU proc…
SamerKhshiboun Feb 14, 2024
41200ea
skip updating exp 1,2 & gain 1,2 params when HDR is disabled
Arun-Prasad-V Feb 16, 2024
5e835f7
renamed GL GPU enable param
Arun-Prasad-V Feb 16, 2024
c0a674c
PR #3008 from Arun-Prasad-V: Renamed GL GPU enable param
SamerKhshiboun Feb 16, 2024
567aaa3
Assertion failed when the camera device not found
kadiredd Mar 12, 2024
d318ee0
Assertion failed when the camera device not found
kadiredd Mar 12, 2024
2f78ad0
Applying Colorizer filter to Aligned-Depth image
Arun-Prasad-V Mar 19, 2024
dde5a17
PR #3042 from kadiredd: Assert Fail if camera not found
SamerKhshiboun Mar 19, 2024
8159e80
PR #3007 from Arun-Prasad-V: Skip updating Exp 1,2 & Gain 1,2 when HD…
SamerKhshiboun Mar 19, 2024
0ca2510
Support for selecting profile for each stream_type
Arun-Prasad-V Mar 20, 2024
c38066f
fix static analysis issue 1
Nir-Az Mar 20, 2024
9b8cb5e
fix static analysis issue 2
Nir-Az Mar 20, 2024
49cfc09
fix static analysis issue 3
Nir-Az Mar 20, 2024
99873aa
fix resource leak
Nir-Az Mar 20, 2024
6db8874
fix empty warning
Nir-Az Mar 20, 2024
f1a4213
fixup! fix static analysis issue 2
Nir-Az Mar 20, 2024
5d617e5
PR #3053 from Nir-Az: Fix Coverity issues + remove empty warning log
Nir-Az Mar 21, 2024
1172637
support running realsense2 ros node on windows
SamerKhshiboun Mar 24, 2024
97721e8
add if win32 for open cv and fix some typos in README.md
SamerKhshiboun Mar 25, 2024
1d5de35
fixes of readme and cmakelists for windows installation
SamerKhshiboun Mar 26, 2024
b28dd00
PR #3049 from Arun-Prasad-V: Applying Colorizer filter to Aligned-Dep…
SamerKhshiboun Mar 26, 2024
2ac1f8b
PR #3056 from SamerKhshiboun: Add documentation for RealSense ROS2 Wr…
Nir-Az Mar 26, 2024
2a054eb
PR #3052 from Arun-Prasad-V: Support for selecting profile for each s…
SamerKhshiboun Mar 26, 2024
2f899c4
add security.md as part of SDLe CT256
SamerKhshiboun Mar 27, 2024
4cc91e6
update checkout to v4
SamerKhshiboun Mar 27, 2024
1443278
update checkout to v4
SamerKhshiboun Mar 27, 2024
5da2ee0
PR #3064 from SamerKhshiboun: Update actions/checkout from v3 to v4
SamerKhshiboun Mar 28, 2024
b69891b
PR #3062 from SamerKhshiboun: Add security.md to the repo main folder…
SamerKhshiboun Mar 31, 2024
314948b
revert from installation for foxy distro on ubuntu 20
SamerKhshiboun Mar 31, 2024
d80ccf4
fix compilation warning: stream_type may be used uninitialized
SamerKhshiboun Apr 7, 2024
a75c2e2
fetch string from output substitution object for foxy
SamerKhshiboun Apr 7, 2024
c5f484a
fix workflow for rolling
SamerKhshiboun Apr 7, 2024
34350e7
Merge PR #3066 from SamerKhshiboun: Revert Foxy Build Support (From S…
SamerKhshiboun Apr 8, 2024
72992de
update notice file (TPP)
SamerKhshiboun Apr 9, 2024
5f05300
Merge PR #3073 from SamerKhshiboun: Update notice file (TPP)
SamerKhshiboun Apr 9, 2024
7041b87
add Intel Copyright
SamerKhshiboun Apr 9, 2024
eb0b6ac
PR #3074 from SamerKhshiboun: Add Intel Copyright
SamerKhshiboun Apr 9, 2024
c35ec47
Merge branch 'ros2-development' into temp_fix_for_rolling
SamerKhshiboun Apr 9, 2024
19731b4
Merge PR #3071 from SamerKhshiboun: Temp fix for Rolling flow
SamerKhshiboun Apr 15, 2024
20ec87c
Update README.md
SamerKhshiboun Apr 17, 2024
2dac617
Updated pr_check.sh script to not verify the year
Arun-Prasad-V Mar 27, 2024
bb039b5
PR #3063 from Arun-Prasad-V: Updated pr_check.sh script to not verify…
Nir-Az May 7, 2024
4acf08d
Update rs_launch.py to add depth_module.color_profile
anisotropicity May 11, 2024
21fbfd7
Update CMakeLists.txt
jiuguangw May 11, 2024
d3650f7
ROSCI infra for live camera testing
kadiredd May 8, 2024
622ea2a
Merge PR #3094 from kadiredd: ROSCI infra for live camera testing
SamerKhshiboun May 14, 2024
9029433
Allow hw synchronization of several realsense devices
fortizcuesta May 14, 2024
21efc80
ROS live cam test fixes
kadiredd May 11, 2024
f5a1ca5
PR #3098 from kadiredd: ROS live cam test fixes
SamerKhshiboun May 14, 2024
4de999f
Merge branch 'ros2-development' into feature/ros2-development-allow-h…
fortizcuesta May 14, 2024
41d9bab
Revert changes
fortizcuesta May 14, 2024
a6c90ff
Expose depth_module.inter_cam_sync_mode in launch files
fortizcuesta May 14, 2024
ce00324
Update profile_manager.h
SamerKhshiboun May 21, 2024
184eacf
PR #3106 from SamerKhshiboun: Remove unused parameter _is_profile_exist
SamerKhshiboun May 22, 2024
92028df
bump version to 4.55.1
SamerKhshiboun May 28, 2024
8a86cb8
4.55.1
SamerKhshiboun May 28, 2024
e7fb97b
PR #3096 from anisotropicity: Update rs_launch.py to add depth_module…
SamerKhshiboun May 29, 2024
047d601
PR #3102 from fortizcuesta: Allow hw synchronization of several reals…
SamerKhshiboun May 29, 2024
9feaee6
PR #3100 from jiuguangw: Suppress CMake warnings
SamerKhshiboun Jun 10, 2024
8b5207a
Ubuntu 24.04 support for Rolling and Jazzy
Arun-Prasad-V Jun 7, 2024
bd5705d
PR #3114 from Arun-Prasad-V: Ubuntu 24.04 support for Rolling and Jaz…
SamerKhshiboun Jun 11, 2024
b76fae6
Update README.md
SamerKhshiboun Jun 11, 2024
d1684b4
Update README.md
SamerKhshiboun Jun 11, 2024
5c298f7
[ROS][Test Infra] Support testing ROS2 service call device_info
kadiredd Jun 13, 2024
ec8ef10
support calib config read/write services
SamerKhshiboun Jun 13, 2024
d30980f
PR #3125 from SamerKhshiboun: Support calibration config read/write s…
SamerKhshiboun Jun 16, 2024
732409b
Update main.yml
SamerKhshiboun Jun 16, 2024
68473bd
PR #3130 from SamerKhshiboun: Install specific numpy version to avoid…
SamerKhshiboun Jun 16, 2024
f8a054c
PR #3124 from kadiredd: Support testing ROS2 service call device_info
SamerKhshiboun Jun 18, 2024
8ee70bb
update librealsense2 version to 2.56.0
SamerKhshiboun Jun 19, 2024
1cd6789
PR #3133 from SamerKhshiboun: update librealsense2 version to 2.56.0
SamerKhshiboun Jun 19, 2024
f41f165
Update README.md
SamerKhshiboun Jun 20, 2024
d0e0e5e
PR #3134 from SamerKhshiboun: Update README.md (ROS Wrapper naming)
SamerKhshiboun Jun 20, 2024
8adf5ae
Casefolding device name instead os strict case sensitive comparison
kadiredd Jun 20, 2024
f688fba
PR #3135 from kadiredd: Casefolding device name instead of strict cas…
SamerKhshiboun Jun 20, 2024
cce5cf2
implement Triggered Calibration action
SamerKhshiboun Jun 22, 2024
598756b
PR #3138 from SamerKhshiboun: Support Triggered Calibration as ROS2 A…
SamerKhshiboun Jun 23, 2024
7415bd0
small fixes in main workflow
SamerKhshiboun Jun 25, 2024
b4bc5d1
update READMEs and CONTRIBUTING files regarding ros2-master
SamerKhshiboun Jul 1, 2024
915f1f6
update readme and more for jazzy support
SamerKhshiboun Jul 1, 2024
2c696ef
PR #3147 from SamerKhshiboun: Update READMEs and CONTRIBUTING files r…
SamerKhshiboun Jul 1, 2024
6c0d1be
update librealsense ver in readme
SamerKhshiboun Jul 1, 2024
790f9fe
PR #3149 from SamerKhshiboun: More updates for jazzy support
SamerKhshiboun Jul 2, 2024
f53762d
fix feedback and update readme for TC
SamerKhshiboun Jul 2, 2024
b99f251
PR #3151 from SamerKhshiboun: Update librealsense ver in readme
SamerKhshiboun Jul 2, 2024
4e94c66
PR #3153 from SamerKhshiboun: TC | Fix feedback and update readme
SamerKhshiboun Jul 2, 2024
3f603ac
add D421 pid
noacoohen Jul 10, 2024
4bccd5c
PR #3159 from noacoohen: Add D421 PID
SamerKhshiboun Jul 14, 2024
7ad5ca4
update calib config usage to the new API, and update readme
SamerKhshiboun Jul 19, 2024
a7129c7
PR #3166 from SamerKhshiboun: Update Calibration Config API
SamerKhshiboun Jul 21, 2024
f49627c
disabling FPS & TF tests for ROS-CI
Aug 9, 2024
afd43d8
PR #3178 from kadiredd: disabling FPS & TF tests for ROS-CI
SamerKhshiboun Aug 14, 2024
911c77b
Update README.md
SamerKhshiboun Aug 20, 2024
2855e41
PR #3140 from SamerKhshiboun: Update workflows
SamerKhshiboun Sep 3, 2024
f62e29c
retry thrice finding devices with Ykush reset
Sep 8, 2024
667b23c
retry thrice finding devices with Ykush reset
Sep 8, 2024
d11c181
PR #3200 from kadiredd: retry thrice finding devices with Ykush reset
SamerKhshiboun Sep 9, 2024
b9626df
replace plugins versions withe commit hash
Noy-Zini Sep 24, 2024
3151f4e
Replace reference to master with latest commit hash
Noy-Zini Sep 24, 2024
63a303d
adjustments
Noy-Zini Sep 25, 2024
c786902
PR #3212 from Noy-Zini: replace plugins versions withe commit hash
SamerKhshiboun Sep 26, 2024
4243224
Added hw_reset service call to reset the device
PrasRsRos Sep 26, 2024
3d540ec
Added hw_reset service call to reset the device
PrasRsRos Sep 26, 2024
eb51551
Added hw_reset service implementation
PrasRsRos Sep 26, 2024
ad83ba7
Added hw_reset service implementation
PrasRsRos Sep 26, 2024
6fa33b0
Added hw_reset service implementation
PrasRsRos Sep 26, 2024
f92011e
Added hw_reset service implementation
PrasRsRos Sep 26, 2024
4002360
Added hw_reset service implementation
PrasRsRos Sep 27, 2024
3b285a1
Added hw_reset service implementation
PrasRsRos Sep 27, 2024
39df251
Added service call for hw_reset
PrasRsRos Sep 27, 2024
c062b60
PR #3216 from PrasRsRos: hw_reset implementation
SamerKhshiboun Sep 30, 2024
75612a1
fix config typo
patrickwasp Oct 4, 2024
d2e9f15
PR #3221 from patrickwasp: fix config typo
SamerKhshiboun Oct 4, 2024
10f9c62
Add D555 PID
SamerKhshiboun Oct 5, 2024
f57a617
adjusments to DDS Support for ROS Wrapper
SamerKhshiboun Oct 8, 2024
9f37e29
support latched QoS for imu_info
SamerKhshiboun Oct 8, 2024
c586628
PR #3222 from SamerKhshiboun: Support D555 and its motion profiles
SamerKhshiboun Oct 9, 2024
5286d26
use new APIs for motion, accel and gryo streams
SamerKhshiboun Oct 10, 2024
ee94dc9
PR #3225 from SamerKhshiboun: Use new APIs for motion, accel and gryo…
SamerKhshiboun Oct 10, 2024
85435dd
Update CMakeLists.txt
SamerKhshiboun Oct 29, 2024
b9c999a
Update CMakeLists.txt
SamerKhshiboun Oct 30, 2024
7a9f5a3
PR #3239 from SamerKhshiboun: Update CMakeLists.txt - remove find_pac…
SamerKhshiboun Oct 31, 2024
fe65054
bump version to 4.56.3
SamerKhshiboun Oct 31, 2024
d7b549d
4.56.3
SamerKhshiboun Oct 31, 2024
5f335b0
add gazebo plugins
eliasdc Dec 4, 2020
1ddad93
add t265 camera
eliasdc Dec 4, 2020
8be117a
allow meshes in package to be used by others
eliasdc Dec 4, 2020
6efbd6a
fix gazebo sensor plugins for imu
eliasdc Mar 7, 2024
460b36d
use find package instead of file
eliasdc Mar 27, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
* Before opening a new issue, we wanted to provide you with some useful suggestions (Click "Preview" above for a better view):

* Consider checking our ROS RealSense Wrapper documentation [README](https://github.com/IntelRealSense/realsense-ros/blob/ros2-master/README.md).
* Have you looked in our [Discussions](https://github.com/IntelRealSense/realsense-ros/discussions)?
* Try [searching our GitHub Issues](https://github.com/IntelRealSense/realsense-ros/issues) (open and closed) for a similar issue.

* All users are welcomed to report bugs, ask questions, suggest or request enhancements and generally feel free to open new issue, even if they haven't followed any of the suggestions above :)

----------------------------------------------------------------------------------------------------

| Required Info | |
|---------------------------------|------------------------------------------------------------ |
| Camera Model | { D405 / D415 / D435 / D435i / D455 / D457 } |
| Firmware Version | (Open RealSense Viewer --> Click info) |
| Operating System & Version | { Win (10/11) / Linux (Ubuntu 18/20/22) / MacOS } |
| Kernel Version (Linux Only) | (e.g. 5.4) |
| Platform | PC/Raspberry Pi/ NVIDIA Jetson / etc.. |
| Librealsense SDK Version | { 2.<?>.<?> } |
| Language | {C/C#/labview/opencv/pcl/python/unity } |
| Segment | {Robot/Smartphone/VR/AR/others } |
| ROS Distro | {Iron/Humble/Jazzy/Rolling/etc.. } |
| RealSense ROS Wrapper Version | {4.51.1, 4.54.1, etc..} |


### Issue Description
<Describe your issue / question / feature request / etc..>
103 changes: 80 additions & 23 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,17 @@ on:
push:
branches:
- ros2-development
- ros2-master
pull_request:
branches:
- ros2-development
- ros2-master

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

permissions: read-all

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
# This workflow contains a single job called "build"

Expand All @@ -23,41 +27,64 @@ jobs:
strategy:
fail-fast: false
matrix:
ros_distro: [rolling, iron, humble]
ros_distro: [rolling, iron, humble, foxy, jazzy]
include:
- ros_distro: 'rolling'
os: ubuntu-22.04
os: ubuntu-24.04
- ros_distro: 'jazzy'
os: ubuntu-24.04
- ros_distro: 'iron'
os: ubuntu-22.04
- ros_distro: 'humble'
os: ubuntu-22.04
- ros_distro: 'foxy'
os: ubuntu-20.04

steps:

- name: Setup ROS2 Workspace
run: |
run: |
mkdir -p ${{github.workspace}}/ros2/src

- uses: actions/checkout@v2
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 #v4
with:
path: 'ros2/src/realsense-ros'

- name: Check Copyright & Line-Endings
shell: bash
run: |
cd ${{github.workspace}}/ros2/src/realsense-ros/scripts
./pr_check.sh

- name: build ROS2
uses: ros-tooling/setup-ros@v0.6
# setup-ros@v0.6 is the last version supporting foxy (EOL)
# setup-ros@v0.7 is needed to support humble/iron/rolling/jazzy
# so, seperating steps with if conditions
- name: build ROS2 for foxy
if: ${{ matrix.ros_distro == 'foxy' }}
uses: ros-tooling/setup-ros@236ab287884fd5a314fc030e91b2017abb46719e #v0.6
with:
required-ros-distributions: ${{ matrix.ros_distro }}

- name: Build RealSense SDK 2.0 from source
- name: build ROS2 for humble/iron/rolling/jazzy
if: ${{ matrix.ros_distro != 'foxy' }}
uses: ros-tooling/setup-ros@a6ce30ecca1e5dcc10ae5e6a44fe2169115bf852 #v0.7
with:
required-ros-distributions: ${{ matrix.ros_distro }}

- name: Checkout librealsense/development
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 #v4
with:
repository: IntelRealSense/librealsense
path: librealsense
ref: development

- name: Build RealSense SDK 2.0 (development branch) from source
run: |
cd ${{github.workspace}}
git clone https://github.com/IntelRealSense/librealsense.git -b development
cd librealsense

# libusb-1.0-0-dev is needed for librealsense build in ubuntu 20.04
# This apt install command will be ignored in ubuntu 22.04 as libusb-1.0-0-dev already installed there
sudo apt install -y libusb-1.0-0-dev

cd ${{github.workspace}}/librealsense
sudo mkdir build
cd build
sudo cmake ../ -DCMAKE_BUILD_TYPE=Release -DBUILD_EXAMPLES=false -DBUILD_GRAPHICAL_EXAMPLES=false
Expand All @@ -66,17 +93,20 @@ jobs:
sudo make -j10
sudo make install

- name: Build RealSense ROS2 Wrapper
run: |
- name: Build RealSense ROS2 Wrapper from source
run: |
echo "source /opt/ros/${{ matrix.ros_distro }}/setup.bash" >> ${{github.workspace}}/.bashrc
source ${{github.workspace}}/.bashrc
cd ${{github.workspace}}/ros2
echo "================= ROSDEP UPDATE ====================="
rosdep update --rosdistro ${{ matrix.ros_distro }}
rosdep update --rosdistro ${{ matrix.ros_distro }} --include-eol-distros
echo "================= ROSDEP INSTALL ===================="
rosdep install -i --reinstall --from-path src --rosdistro ${{ matrix.ros_distro }} --skip-keys=librealsense2 -y
echo "================== COLCON BUILD ======================"
colcon build --cmake-args '-DBUILD_TOOLS=ON'
# Enable 'BUILD_TOOLS' through cmake arguments. Since, this variable is available only in realsense2_camera package
# and not in realsense2_camera_msgs and realsense2_description packages, to avoid warnings from these packages,
# use '--no-warn-unused-cli'. Ref: https://cmake.org/cmake/help/v3.0/manual/cmake.1.html
colcon build --cmake-args '-DBUILD_TOOLS=ON' --no-warn-unused-cli

## This step is commented out since we don't use rosbag files in "Run Tests" step below.
## Please uncomment when "Run Tests" step is fixed to run all tests.
Expand All @@ -89,22 +119,49 @@ jobs:
# bag_filename="https://librealsense.intel.com/rs-tests/D435i_Depth_and_IMU_Stands_still.bag";
# wget $bag_filename -P "records/"
# sudo apt install ros-${{ matrix.ros_distro}}-launch-pytest

- name: Install Packages For Tests

- name: Install Packages For Foxy Tests
if: ${{ matrix.ros_distro == 'foxy' }}
run: |
# To avoid mixing of 'apt' provided packages and 'pip' provided packages, one way is to create virtual env
# and manage python packages within it. Ref: https://peps.python.org/pep-0668/
python3 -m venv .venv
# Activate the virtual env such that following python related commands run within it.
source .venv/bin/activate
sudo apt-get install python3-pip
# numpy-quaternion needs numpy<2.0.0. Chose 1.24.1 as it is the highest version that support foxy.
pip3 install --force-reinstall numpy==1.24.1
pip3 install numpy-quaternion tqdm pyyaml

- name: Install Packages For Humble/Iron/Rolling/Jazzy Tests
if: ${{ matrix.ros_distro != 'foxy' }}
run: |
# To avoid mixing of 'apt' provided packages and 'pip' provided packages, one way is to create virtual env
# and manage python packages within it. Ref: https://peps.python.org/pep-0668/
python3 -m venv .venv
# Activate the virtual env such that following python related commands run within it.
source .venv/bin/activate
sudo apt-get install python3-pip
pip3 install numpy --upgrade
pip3 install numpy-quaternion tqdm

# numpy-quaternion needs numpy<2.0.0. Chose 1.26.4 as it is the lowest working version for ubuntu 24.04.
pip3 install --force-reinstall numpy==1.26.4
pip3 install numpy-quaternion tqdm pyyaml

- name: Run Tests
run: |
cd ${{github.workspace}}/ros2
source ${{github.workspace}}/.bashrc
. install/local_setup.bash
# the next command might be needed for foxy distro, since this package is not installed
# by default in ubuntu 20.04. For other distro, the apt install command will be ignored.
sudo apt install -y ros-${{matrix.ros_distro}}-sensor-msgs-py
source ../.venv/bin/activate
python3 src/realsense-ros/realsense2_camera/scripts/rs2_test.py non_existent_file


# don't run integration tests for foxy since some testing dependecies packages like
# tf_ros_py are not avaialble
# TODO: check when we can run integration tests on rolling
- name: Run integration tests
if: ${{ matrix.ros_distro != 'rolling'}}
if: ${{ matrix.ros_distro != 'rolling' && matrix.ros_distro != 'foxy' }}
run: |
cd ${{github.workspace}}/ros2
source ${{github.workspace}}/.bashrc
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/pre-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ on:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

permissions: read-all

jobs:
build:
Expand All @@ -44,6 +45,6 @@ jobs:
BASEDIR: ${{ github.workspace }}/.work

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 #v4
- name: industrial_ci
uses: ros-industrial/industrial_ci@master
uses: ros-industrial/industrial_ci@d23b9ad2c63bfad638a2b1fe3df34b8df9a2f17b #Replace reference to 'master' with the latest commit hash
4 changes: 3 additions & 1 deletion .github/workflows/static_analysis.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,14 @@ on:
pull_request:
branches: ['**']

permissions: read-all

jobs:
cppcheck:
name: cppcheck
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 #v4

- name: Install
shell: bash
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ This project welcomes third-party code via GitHub pull requests.
You are welcome to propose and discuss enhancements using project [issues](https://github.com/IntelRealSense/realsense-ros/issues).

> **Branching Policy**:
> The `ros2-development` branch is considered stable, at all times.
> The `ros2-master` branch is considered stable, at all times.
> If you plan to propose a patch, please commit into the `ros2-development` branch, or its own feature branch.

In addition, please run `pr_check.sh` under `scripts` directory. This scripts verify compliance with project's standards:
Expand Down
7 changes: 7 additions & 0 deletions Intel Copyright
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Copyright (2017-2024), Intel Corporation.
This "Software" is furnished under license and may only be used or copied in accordance with the terms of that license.
No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted by this document.
The Software is subject to change without notice, and should not be construed as a commitment by Intel Corporation to market, license, sell or support any product or technology.
Unless otherwise provided for in the license under which this Software is provided, the Software is provided AS IS, with no warranties of any kind, express or implied.
Except as expressly permitted by the Software license, neither Intel Corporation nor its suppliers assumes any responsibility or liability for any errors or inaccuracies that may appear herein.
Except as expressly permitted by the Software license, no part of the Software may be reproduced, stored in a retrieval system, transmitted in any form, or distributed by any means without the express written consent of Intel Corporation.
4 changes: 0 additions & 4 deletions NOTICE

This file was deleted.

Loading