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

10 ➡️ master #462

Merged
merged 111 commits into from
Jan 14, 2021
Merged

10 ➡️ master #462

merged 111 commits into from
Jan 14, 2021

Conversation

azeey
Copy link
Collaborator

@azeey azeey commented Jan 13, 2021

Merge-forward from sdf10 to master. This replaces #432

traversaro and others added 30 commits April 28, 2020 14:14
… level (#251)

SDFormat 9 requires the use of C++17 in its public headers, however it does not correctly expose this requirement
in its installed imported targets. In particular, at the moment the requirement of C++17 is only documented via adding the
-std=c++17 flag in the `SDFormat_CXX_FLAGS` variable, but this strategy has two problems:
* It does not work unless a user explicitly pass this flags to its compilation targets, and this is definitely not obvious if it is not using directly SDFormat, but he is linking sdformat transitively through Gazebo 11.
* If a different C++ version is set at the CMake level, it is possible that the `-std=c++17` flag is ignored (it depends what is
the order with which the flags are passed to the compiler).

For CMake consumers, a better strategy is to use the target_compile_features and explicitly mark that
that this library requires the `cxx_std_17` feature, as `PUBLIC` because it also required in the public headers.

As the minimum required version of CMake is 3.10, we can use cxx_std_17 as it is available in CMake 3.10, see https://cmake.org/cmake/help/v3.10/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html#prop_gbl:CMAKE_CXX_KNOWN_FEATURES .

Signed-off-by: Silvio Traversaro <silvio.traversaro@iit.it>
Signed-off-by: Steven Peters <scpeters@openrobotics.org>
* [sdf8] Changelog links to BitBucket backup

Signed-off-by: Louise Poubel <louise@openrobotics.org>

* more fixes, new version of script

Signed-off-by: Louise Poubel <louise@openrobotics.org>

* [sdf7] Changelog links to BitBucket backup (#238)

Signed-off-by: Louise Poubel <louise@openrobotics.org>

* Update some more bitbucket issue references

Signed-off-by: Steven Peters <scpeters@openrobotics.org>

Co-authored-by: Steven Peters <scpeters@openrobotics.org>
* [sdf9] Changelog links to BitBucket backup

Signed-off-by: Louise Poubel <louise@openrobotics.org>

* [sdf8] Changelog links to BitBucket backup

Signed-off-by: Louise Poubel <louise@openrobotics.org>

* [sdf7] Changelog links to BitBucket backup (#238)

Signed-off-by: Louise Poubel <louise@openrobotics.org>

* Convert bitbucket links for sdf9

Signed-off-by: Steven Peters <scpeters@openrobotics.org>

* Fix link in API documentation

Signed-off-by: Steven Peters <scpeters@openrobotics.org>

Co-authored-by: Steven Peters <scpeters@openrobotics.org>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
For backward compatibility if it is not defined compile the tests

Signed-off-by: Silvio <silvio.traversaro@iit.it>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
* Changelog links to BitBucket backup

Signed-off-by: Louise Poubel <louise@openrobotics.org>

* Point to github issues, revert gazebo link

Co-authored-by: Steven Peters <scpeters@openrobotics.org>
Signed-off-by: Michael Carroll <michael@openrobotics.org>
Signed-off-by: Eric Cousineau <eric.cousineau@tri.global>
Co-authored-by: Steven Peters <scpeters@openrobotics.org>
* Add github action CI for uploading to codecov

Signed-off-by: Steven Peters <scpeters@openrobotics.org>

* Update codecov badge

Signed-off-by: Steven Peters <scpeters@openrobotics.org>
This is an internal-only refactoring that changes the mechanics of how
the sdf/** file data is embedded into the library.

For one, it solves the "static initialization order fiasco" for the
embedded data. The data is only loaded into memory upon first use,
instead of as the library is being loaded.

It also simplifies the ruby embedding code, making it more concise.
I hope this is easier to maintain, but it also helps me when sharing
Drake with consumers that always build from source, but will not
install ruby as a compile-time prerequisite

The EmbeddedSdf codegen now emits the cc file with the data; the header
is stored in git. This provides an easier way to use a function to
retrieve the embedded strings as static locals.

The embedded SDF data is now combined into a single map.  Embedding
files should be boring, ala the WIP std::embed specification.  It
should not include application-layer logic encoding upgrade paths.

This will also make it easier to avoid the "static destruction fiasco"
in future commits, due to fewer functions to repair.

Signed-off-by: Jeremy Nimmer <jeremy.nimmer@tri.global>
… level (#251)

SDFormat 9 requires the use of C++17 in its public headers, however it does not correctly expose this requirement
in its installed imported targets. In particular, at the moment the requirement of C++17 is only documented via adding the
-std=c++17 flag in the `SDFormat_CXX_FLAGS` variable, but this strategy has two problems:
* It does not work unless a user explicitly pass this flags to its compilation targets, and this is definitely not obvious if it is not using directly SDFormat, but he is linking sdformat transitively through Gazebo 11.
* If a different C++ version is set at the CMake level, it is possible that the `-std=c++17` flag is ignored (it depends what is
the order with which the flags are passed to the compiler).

For CMake consumers, a better strategy is to use the target_compile_features and explicitly mark that
that this library requires the `cxx_std_17` feature, as `PUBLIC` because it also required in the public headers.

As the minimum required version of CMake is 3.10, we can use cxx_std_17 as it is available in CMake 3.10, see https://cmake.org/cmake/help/v3.10/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html#prop_gbl:CMAKE_CXX_KNOWN_FEATURES .

Signed-off-by: Silvio Traversaro <silvio.traversaro@iit.it>
Signed-off-by: Steven Peters <scpeters@openrobotics.org>
Signed-off-by: Louise Poubel <louise@openrobotics.org>

[sdf9] Changelog links to BitBucket backup (#240)

* [sdf9] Changelog links to BitBucket backup

Signed-off-by: Louise Poubel <louise@openrobotics.org>

* [sdf8] Changelog links to BitBucket backup

Signed-off-by: Louise Poubel <louise@openrobotics.org>

* [sdf7] Changelog links to BitBucket backup (#238)

Signed-off-by: Louise Poubel <louise@openrobotics.org>

* Convert bitbucket links for sdf9

Signed-off-by: Steven Peters <scpeters@openrobotics.org>

* Fix link in API documentation

Signed-off-by: Steven Peters <scpeters@openrobotics.org>

Co-authored-by: Steven Peters <scpeters@openrobotics.org>
* Remove unused includes of parser_urdf.hh in tests
* mv include/sdf/parser_urdf.hh src, since the contents
  of this header were deprecated in 9.2
* parser_urdf.hh: remove deprecation macros and warning suppression
* parser_urdf.hh: remove visibility macro
* codecheck: helper functions public, use in test

Signed-off-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
…275)

Signed-off-by: Eric Cousineau <eric.cousineau@tri.global>
…rating an error (#244)

Currently, libsdformat silently ignores syntax errors when parsing values. For example, <pose>bad 0 0 0 0 0</pose> or <pose>0.1 0.2 0.3 0.4 0.5</pose> are both bad values for the <pose> tag, but the parsed values are <pose>0 0 0 0 0 0</pose> and <pose>0.1 0.2 0.3 0.4 0.5 0</pose> respectively. With this PR, libsdformat will generate an error for such values.
…s (Retry PR) (#303)

Currently, some SDFormat description files contain min and max values, but the parser does not enforce those values in any way. This PR adds a validation step in the parser that checks if scalar values are within the allowed range. Note that this PR addresses only element values, not attributes.
* Remove all deprecated *PoseFrame() APIs
* Remove deprecated Pose(), SetPose() APIs
* Migration guide: update per #244, #276
* Changelog for #308.

Signed-off-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
* Simplify and fix copy constructors, restructure tests and increase coverage
* Add joint and link tests
* Add changelog

Signed-off-by: Luca Della Vedova <luca@openrobotics.org>

Co-authored-by: Ian Chen <ichen@osrfoundation.org>
Co-authored-by: Steve Peters <scpeters@openrobotics.org>
For backward compatibility if it is not defined compile the tests

Signed-off-by: Silvio <silvio.traversaro@iit.it>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
nkoenig and others added 20 commits December 14, 2020 17:26
Signed-off-by: Nate Koenig <nate@openrobotics.org>

Co-authored-by: Nate Koenig <nate@openrobotics.org>
* add double sided materail param

Signed-off-by: Ian Chen <ichen@osrfoundation.org>

* fix loading param

Signed-off-by: Ian Chen <ichen@osrfoundation.org>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
…414)

Signed-off-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Louise Poubel <louise@openrobotics.org>
Currently there is a confusing error message if a file is
loaded that finds a folder matching the name of a model to
be included but the folder does not have a model.config file.
This improves the first error message and stops further loading
to prevent additional confusing messages.

Signed-off-by: Steve Peters <scpeters@openrobotics.org>
This reverts part of commit
0e77816.

Signed-off-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Ian Chen <ichen@osrfoundation.org>
Co-authored-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Nate Koenig <nate@openrobotics.org>

Co-authored-by: Nate Koenig <nate@openrobotics.org>
Merge forward sdf8 -> sdf9
Signed-off-by: ahcorde <ahcorde@gmail.com>
Signed-off-by: Louise Poubel <louise@openrobotics.org>

Co-authored-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Jose Luis Rivero <jrivero@osrfoundation.org>
Signed-off-by: Louise Poubel <louise@openrobotics.org>
Signed-off-by: Addisu Z. Taddese <addisu@openrobotics.org>
Signed-off-by: Addisu Z. Taddese <addisu@openrobotics.org>
Signed-off-by: Addisu Z. Taddese <addisu@openrobotics.org>
@azeey azeey requested a review from scpeters January 13, 2021 17:46
@azeey
Copy link
Collaborator Author

azeey commented Jan 13, 2021

#434 updated .github/workflows/linux-ubuntu-bionic.yml to use prereleases, but that workflow file was deleted in #452. Do we have a way to use prereleases in github actions with our new workflow file?

azeey added 2 commits January 13, 2021 12:02
Signed-off-by: Addisu Z. Taddese <addisu@openrobotics.org>
Signed-off-by: Addisu Z. Taddese <addisu@openrobotics.org>
@azeey
Copy link
Collaborator Author

azeey commented Jan 13, 2021

Do we have a way to use prereleases in github actions with our new workflow file?

Looks like it uses gzdev which has been updated to use prereleases in gazebo-tooling/gzdev#26. I just needed to remove .github/workflows/linux-ubuntu-bionic.yml.

@codecov-io
Copy link

codecov-io commented Jan 13, 2021

Codecov Report

Merging #462 (f87be50) into master (ed198a0) will increase coverage by 0.45%.
The diff coverage is 98.44%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #462      +/-   ##
==========================================
+ Coverage   87.56%   88.01%   +0.45%     
==========================================
  Files          64       66       +2     
  Lines        9704    10069     +365     
==========================================
+ Hits         8497     8862     +365     
  Misses       1207     1207              
Impacted Files Coverage Δ
include/sdf/Console.hh 100.00% <ø> (ø)
src/Console.cc 100.00% <ø> (ø)
src/Filesystem.cc 98.80% <ø> (ø)
src/Utils.hh 96.66% <ø> (ø)
src/Geometry.cc 88.48% <61.53%> (-2.79%) ⬇️
src/parser.cc 79.48% <95.83%> (+0.20%) ⬆️
src/Heightmap.cc 100.00% <100.00%> (ø)
src/JointAxis.cc 97.31% <100.00%> (+3.15%) ⬆️
src/Material.cc 98.17% <100.00%> (+0.32%) ⬆️
src/Pbr.cc 98.49% <100.00%> (+0.11%) ⬆️
... and 5 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ed198a0...f87be50. Read the comment docs.

Copy link
Contributor

@chapulina chapulina left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for opening the PR, @azeey ! I went over all files and don't see anything out of place. CI seems happy too.

Copy link
Contributor

@j-rivero j-rivero left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Compiles fine for me on Windows and fixed problems with lack of sky support on master.

@azeey azeey merged commit b061222 into master Jan 14, 2021
@azeey azeey deleted the 10_to_master_merge branch January 14, 2021 15:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.