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

third_party headers shall be excluded from rerun_cpp_sdk #5133

Open
rgolovanov opened this issue Feb 8, 2024 · 3 comments
Open

third_party headers shall be excluded from rerun_cpp_sdk #5133

rgolovanov opened this issue Feb 8, 2024 · 3 comments
Labels
🪳 bug Something isn't working 🌊 C++ API C/C++ API specific dependencies concerning crates, pip packages etc 🏎️ Quick Issue Can be fixed in a few hours or less ⛴ release Related to shipping or publishing
Milestone

Comments

@rgolovanov
Copy link
Contributor

Describe the bug
The headers contains third_party folder with cxxopt.hpp which shan't be a part the SDK as it is external dependency and apparently isn't even needed in SDK. Could be added. If really needed, it could be added via CMake similarly to Arrow.

To Reproduce
Steps to reproduce the behavior:
Just check: https://github.com/rerun-io/rerun/tree/main/rerun_cpp/src/rerun/third_party

Expected behavior
No third_party folder

Rerun version
0.12.1

@rgolovanov rgolovanov added 👀 needs triage This issue needs to be triaged by the Rerun team 🪳 bug Something isn't working labels Feb 8, 2024
@Wumpf
Copy link
Member

Wumpf commented Feb 8, 2024

We added this one directly since it was a bit more convenient than grabbing it via cmake. Going forward we want to use it in more and more examples & demos and provide an opt-in cli utility as we already have in Python and Rust.

Is there any particular issue you have with this header-only library in the distribution zip?

@rgolovanov
Copy link
Contributor Author

rgolovanov commented Feb 8, 2024

Mainly, it makes difficult license and copyright management. It just messes up the things when 3rdparty libraries (even header only) are distributed along with your own library. Rerun is distributed with Apache-2.0 and MIT licenses but cxxopt is redistributed as part of your library and has MIT license. Thus, if one uses Rerun with Apache-2.0 then need to keep in mind that it also contains piece of code with MIT license.

@rgolovanov
Copy link
Contributor Author

btw, local workaround for us would be just to drop third_party folder at our side.

@Wumpf Wumpf added the dependencies concerning crates, pip packages etc label Feb 12, 2024
@Wumpf Wumpf added this to the Triage milestone Feb 12, 2024
@Wumpf Wumpf removed the 👀 needs triage This issue needs to be triaged by the Rerun team label Feb 12, 2024
@Wumpf Wumpf added 🌊 C++ API C/C++ API specific 🏎️ Quick Issue Can be fixed in a few hours or less ⛴ release Related to shipping or publishing labels Oct 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🪳 bug Something isn't working 🌊 C++ API C/C++ API specific dependencies concerning crates, pip packages etc 🏎️ Quick Issue Can be fixed in a few hours or less ⛴ release Related to shipping or publishing
Projects
None yet
Development

No branches or pull requests

2 participants