Skip to content

Update release to 0.6.3#20

Closed
olivier-stasse wants to merge 2 commits intoros2:masterfrom
olivier-stasse:foxy
Closed

Update release to 0.6.3#20
olivier-stasse wants to merge 2 commits intoros2:masterfrom
olivier-stasse:foxy

Conversation

@olivier-stasse
Copy link
Copy Markdown

@olivier-stasse olivier-stasse commented Dec 16, 2020

This release is suppose to fix the two problems specified previously in the comment:
jbeder/yaml-cpp#538
jbeder/yaml-cpp#597

Tested (and needed) on macOS Catalina.

Proposed to fix #19

@clalancette
Copy link
Copy Markdown
Contributor

Thanks for the change. I'm going to run full CI on it on all platforms, just to be sure that there are no surprises here:

  • Linux Build Status
  • Linux-aarch64 Build Status
  • macOS Build Status
  • Windows Build Status
  • Windows Debug Build Status
  • CentOS Build Status

@clalancette
Copy link
Copy Markdown
Contributor

@olivier-stasse Hm, sorry to say, but Linux is very unhappy with this change. Can you take a look? Thanks.

@clalancette clalancette changed the base branch from foxy to master December 17, 2020 14:23
@clalancette
Copy link
Copy Markdown
Contributor

Note that I redirected this PR from foxy -> master. Our usual development workflow is to first get things into master, then think about backporting them to supported distributions.

@olivier-stasse also, the DCO bot is unhappy. Can you rebase and sign-off all of the commits here?

This release is suppose to fix the two problems specified previously in the comment:
jbeder/yaml-cpp#538
jbeder/yaml-cpp#597

Tested (and needed) on macOS Catalina.

Signed-off-by: Olivier Stasse <ostasse@laas.fr>
Signed-off-by: Olivier Stasse <ostasse@laas.fr>
@olivier-stasse
Copy link
Copy Markdown
Author

olivier-stasse commented Dec 17, 2020

Dear @clalancette,
I rebased my PR on master and corrected the DCO.
The package is compiling on ros2_foxy on ubuntu 20.04 LTS.
The problem was that the library was compiled in static mode only.

I have a problem with rviz_common but I do think this is not related...

@clalancette
Copy link
Copy Markdown
Contributor

clalancette commented Dec 17, 2020

Excellent, thanks for all of that. Here is CI on the change again:

  • Linux Build Status
  • Linux-aarch64 Build Status
  • macOS Build Status
  • Windows Build Status

@clalancette
Copy link
Copy Markdown
Contributor

Unfortunately, it looks like macOS is not happy with this change. It is failing to run many tests, all of them with a dyld error on yaml-cpp symbols. @olivier-stasse can you take a look?

@olivier-stasse
Copy link
Copy Markdown
Author

Dear @clalancette,
Sorry for the failure, do you have a way to reproduce the problem ? Is there a docker ?

Because I do not have the same on my own mac.

A detailed report follows.
Best Olivier.

On my side I did:

colcon build --symlink --packages-above yaml_cpp_vendor 

to check if the system was breaking at the compiling step and found nothing.
Then I did:

colcon test --symlink --packages-above yaml_cpp_vendor 

and got:

Starting >>> yaml_cpp_vendor
Finished <<< yaml_cpp_vendor [0.11s]           
Starting >>> rosbag2_storage
Starting >>> rviz_common
Finished <<< rosbag2_storage [11.0s]                                               
Starting >>> rosbag2_cpp
Starting >>> rosbag2_storage_default_plugins
Finished <<< rosbag2_storage_default_plugins [12.8s]                                                                     
Finished <<< rosbag2_cpp [17.5s]                                               
Starting >>> rosbag2_compression
Starting >>> rosbag2_converter_default_plugins
Finished <<< rviz_common [39.2s]                                                                                                   
Starting >>> rviz_visual_testing_framework
Finished <<< rosbag2_converter_default_plugins [13.2s]                                                                                              
Finished <<< rosbag2_compression [18.4s]                                                                
Starting >>> rosbag2_transport
Finished <<< rviz_visual_testing_framework [12.2s]                                                    
Starting >>> rviz_default_plugins
[Processing: rosbag2_transport, rviz_default_plugins]                                              
[Processing: rosbag2_transport, rviz_default_plugins]                                                  
[Processing: rosbag2_transport, rviz_default_plugins]                                                        
--- stderr: rviz_default_plugins                                                                             
Errors while running CTest
---
Finished <<< rviz_default_plugins [1min 47s]	[ with test failures ]
Starting >>> rviz2
Finished <<< rviz2 [11.0s]                                                              
[Processing: rosbag2_transport]                               
--- stderr: rosbag2_transport                                 
Errors while running CTest
---
Finished <<< rosbag2_transport [2min 35s]	[ with test failures ]
Starting >>> ros2bag
Finished <<< ros2bag [9.57s]                  
Starting >>> rosbag2_tests
[Processing: rosbag2_tests]                          
Finished <<< rosbag2_tests [37.5s]                   
Starting >>> rosbag2
Finished <<< rosbag2 [3.01s]                  

Summary: 14 packages finished [4min 13s]
  2 packages had stderr output: rosbag2_transport rviz_default_plugins
  2 packages had test failures: rosbag2_transport rviz_default_plugins

rosbag2_transport has only one timeout error.
rviz_default_pluginshas errors when testing a motion of the mouse
None of them seems to be related to the log of Jenkins which shows the following error:

dyld: Symbol not found: __ZN4YAML6detail9node_data12empty_scalarE

on rosbag2_storage/test_storage_factory
I checked the link of the dynamic library on my macOS using otool -L but it is linked against the right library:

otool -L ./build/rosbag2_storage/test_storage_factory 
./build/rosbag2_storage/test_storage_factory:
	@rpath/librosbag2_storage.dylib (compatibility version 0.0.0, current version 0.0.0)
	@rpath/libament_index_cpp.dylib (compatibility version 0.0.0, current version 0.0.0)
	@rpath/libclass_loader.dylib (compatibility version 0.0.0, current version 0.0.0)
	/usr/local/opt/console_bridge/lib/libconsole_bridge.1.0.dylib (compatibility version 1.0.0, current version 0.0.0)
	/usr/local/opt/tinyxml2/lib/libtinyxml2.8.dylib (compatibility version 8.0.0, current version 8.0.0)
	@rpath/librcpputils.dylib (compatibility version 0.0.0, current version 0.0.0)
	@rpath/librcutils.dylib (compatibility version 0.0.0, current version 0.0.0)
	@rpath/libyaml-cpp.0.6.dylib (compatibility version 0.6.0, current version 0.6.3)
	/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 904.4.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1292.0.0)

@clalancette
Copy link
Copy Markdown
Contributor

Sorry for the failure, do you have a way to reproduce the problem ? Is there a docker ?

No, unfortunately macOS doesn't support Docker. One significant difference is that our CI runs on Mojave, and I believe you are on Catalina. Other than testing on a Mojave machine, I don't exactly know how else to reproduce.

@clalancette clalancette added the more-information-needed Further information is required label Jan 7, 2021
@clalancette
Copy link
Copy Markdown
Contributor

I'm going to close this one in favor of #23 (where we are still going to have to figure out the problems with macOS).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

more-information-needed Further information is required

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Undefined symbol in rosbag2_storage due to wrong version on yaml-cpp for MacOS Catalina.

2 participants