-
Notifications
You must be signed in to change notification settings - Fork 269
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
Enable use of ign gazebo -s on Windows #1574
Enable use of ign gazebo -s on Windows #1574
Conversation
d0d939c
to
7bca2d0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
linters and update branch with ign-gazebo6
7bca2d0
to
ee57695
Compare
ee57695
to
b170a72
Compare
Codecov Report
@@ Coverage Diff @@
## ign-gazebo6 #1574 +/- ##
===============================================
- Coverage 64.69% 64.02% -0.67%
===============================================
Files 321 317 -4
Lines 26055 25649 -406
===============================================
- Hits 16855 16422 -433
- Misses 9200 9227 +27
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
set(plugin_location ${CMAKE_INSTALL_LIBDIR}) | ||
endif() | ||
|
||
set(library_location "../../../${plugin_location}/$<TARGET_FILE_NAME:${ign_lib_target}>") | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Windows CI is failing on this file:
[12.204s] CMake Error in src/cmd/CMakeLists.txt:
[12.204s] Evaluation file to be written multiple times with different content. This
[12.204s] is generally caused by the content evaluating the configuration type,
[12.204s] language, or location of object files:
[12.204s]
[12.204s] C:/Jenkins/workspace/ign_gazebo-pr-win/ws/build/ignition-gazebo6/test/lib/ruby/ignition/cmdgazebo6.rb
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. For reference, I was developing using Ninja cmake generator, while this error appears with Visual Studio 16 2019
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This turned out to be quite a can of worms. Basically, all the logic that is generating .yaml files and ruby scripts for testing was written strictly assuming the use of a single-config CMake generator. So everything was working fine when using make, single-config Ninja or NMake Makefiles, but it was going to fail as soon as Visual Studio, XCode or multiple config Ninja was used.
Initially, I tried to make the CMake code support also multiple config generator, but that was going to make that code quite difficult to mantain. For this reason, I switched the PR to explicitly disable the UNIT_ign_TEST
and UNIT_ModelCommandAPI_TEST
test when a multiple-config CMake generator is used. Note that this test can be run on Windows using any of the available single-config CMake generators, such as Ninja or NMake Makefiles.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
By the way, while working on this I also got UNIT_ign_TEST
to work on Windows.
@ahcorde I worked on this locally, I still need to push the local version in the repo, sorry! |
8427a9d
to
0ea9426
Compare
The PR is now updated. I update the original post to reflect the changes, note that the unreleased change gazebosim/gz-common#389 is required to actually get the |
It seems that there is some not intentional interaction with |
I tried to reproduce the problem locally, but in my case that test fails also when I am on the master branch (commit 8c66ef3):
|
Ah, I think I know the problem here. I am using WSLg, so the problems:
Are still presents. In theory #1116 was fixed, but thre is still not release of gz-rendering that contains the fix. |
gz-common4 4.5.2 was released some days ago, containing this change: https://github.com/gazebosim/gz-common/releases/tag/ignition-common4_4.5.2 . |
0ea9426
to
579addc
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
a minor style issue
Still some failureso on Linux/macOS, and some new warnings on Windows. |
@osrf-jenkins run tests please |
@traversaro , I have a windows build setup from these instructions. I'm using powershell on windows 11. When I run Any thoughts, or extra information I should provide? |
I would expect everything to work also on Powershell, but just to check: can you try if the commands are working fine on Command Prompt? |
I think I understood the problem: this PR was merged and a new release of ign-common4 was released (i.e. 4.5.2, see #1574 (comment)), but the related package of conda-forge was not updated and is still stick to 4.5.1 (probably due to conda-forge/libignition-gazebo-feedstock#24). We can manually bump ign-common4, also to simplify the test of conda-forge/libignition-gazebo-feedstock#49 . |
Related PR: conda-forge/libignition-common-feedstock#54 . |
I found that the installed |
No, that seems a different issue, hopefully fixed by 124c13d . |
124c13d
to
bb924ea
Compare
Signed-off-by: Silvio <[email protected]>
Co-authored-by: Alejandro Hernández Cordero <[email protected]> Signed-off-by: Silvio <[email protected]>
Adding some API docs for changes from gazebosim#1076 Signed-off-by: Kenji Brameld <[email protected]> Signed-off-by: Silvio <[email protected]>
* Add topic parameter. Signed-off-by: Carlos Agüero <[email protected]> Signed-off-by: Silvio <[email protected]>
* bumped minor and updated changelog Signed-off-by: Dharini Dutia <[email protected]> * fixed changelog as per feedback and updated migration guide Signed-off-by: Dharini Dutia <[email protected]> Signed-off-by: Dharini Dutia <[email protected]> Signed-off-by: Silvio <[email protected]>
Signed-off-by: Kenji Brameld <[email protected]> Signed-off-by: Silvio <[email protected]>
Signed-off-by: Silvio Traversaro <[email protected]> Signed-off-by: Silvio <[email protected]>
* initial commit to allow plugin to call a service Signed-off-by: Liam Han <[email protected]> * adding tutorial and modifying the world sdf Signed-off-by: Liam Han <[email protected]> * added test for single input and single service output Signed-off-by: Liam Han <[email protected]> * added test for single input and multiple service output Signed-off-by: Liam Han <[email protected]> * added test for invalid matching service name => timeout Signed-off-by: Liam Han <[email protected]> * modified variables the camelCase Signed-off-by: Liam Han <[email protected]> * fixed typo, indentation, grammar, lines that exceeded 80 char Signed-off-by: Liam Han <[email protected]> * fixing ubuntu bionic ci issue Signed-off-by: Liam Han <[email protected]> * silly syntax mistake on expect_eq Signed-off-by: Liam Han <[email protected]> * added three more test cases that addesses incorrect response type, incorrect request type and false result Signed-off-by: Liam Han <[email protected]> * WIP: major restructuring and currently working. Requires more cleanup and test Signed-off-by: Liam Han <[email protected]> * WIP: fixed preprocessor define bug Signed-off-by: Liam Han <[email protected]> * WIP: working but extremely convoluted Signed-off-by: Liam Han <[email protected]> * WIP major modification but a lot of errors and tests failed Signed-off-by: Liam Han <[email protected]> * stable version: had to revert back to previous work. all tests passed Signed-off-by: Liam Han <[email protected]> * modified to use blocking Request method as well as reduce a service worker thread to just one thread with the publisher. all tests passed Signed-off-by: Liam Han <[email protected]> * stable version: had to revert back to previous work. all tests passed Signed-off-by: Liam Han <[email protected]> * successfully reverted and tested Signed-off-by: Liam Han <[email protected]> * fixing PR suggestions Signed-off-by: Liam Han <[email protected]> * changed string with 'serv' to 'srv' and included <mutex> to the header Signed-off-by: Liam Han <[email protected]> * fixed indentation and removed rep.set_data since it's unused on the client service Signed-off-by: Liam Han <[email protected]> * getting rid of the id Signed-off-by: Liam Han <[email protected]> * fixed race condition resulting seldom test failure Signed-off-by: Liam Han <[email protected]> * changed from triggerSrv to serviceCount. This compensates for the two threads running at different rate Signed-off-by: Liam Han <[email protected]> * braces indentation Signed-off-by: Mabel Zhang <[email protected]> * addressing gnu c compiler (gcc) warnings Signed-off-by: Liam Han <[email protected]> Signed-off-by: Liam Han <[email protected]> Signed-off-by: Mabel Zhang <[email protected]> Co-authored-by: Mabel Zhang <[email protected]> Signed-off-by: Silvio <[email protected]>
Signed-off-by: Ian Chen <[email protected]> Signed-off-by: Silvio <[email protected]>
Signed-off-by: Silvio <[email protected]>
bb924ea
to
bacff19
Compare
Sorry, it seems I did something wrong while trying to fix the DCO checks. Probably it is easier for me to open a new PR. |
🎉 New feature
This PR enable the use of
ign gazebo -s
on Windows. Similarly to what is done in macOS, asign gazebo
andign gazebo -g
are not supported, those options are explicitly disabled to give a nice error to the users.Summary
Summary of changes:
src/cmd
directory also on Windowsign.hh
andModelCommandAPI.hh
cmdgazebo.rb.in
to load the gazebo pluginUNIT_ign_TEST
to work correctly on Windowsign-tools
when using multiple config CMake generators, and consequently disableUNIT_ign_TEST and
UNIT_ModelCommandAPI_TEST` when using multiple config CMake generators.ign gazebo -s
is working, explicitly disableign gazebo -g
andign gazebo
as done on macOS .Test it
Note, the following instructions are not complete as a version of libignition-common4 with gazebosim/gz-common#389 needs to be released before the tests work again.
Personally, I tested it with conda-forge provided depedencies. I created an environment with:
Then, I compiled
ign-gazebo
with:After that, I was able to run correctly the server:
To verify the server was running correctly, I run in another terminal:
Checklist
codecheck
passed (See contributing)Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining
Signed-off-by
messages.