-
Notifications
You must be signed in to change notification settings - Fork 197
[build] Update protobuf to 5.29.5 #2122
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
base: master
Are you sure you want to change the base?
Conversation
It's a big one. What I find a bit strange - though nice: it's only build system changes. So apparently nothing of the API parts which we used have been changed. Which is great, and unexpected. I am a bit confused though, especially regarding ftxui, since you downgraded the c++ standard there (mon_cli for example) - that it builds, because my understanding was that C++17 was a requirement there. Also, Protobuf is no longer a dependency of eCAL core. but I will take a proper look tomorrow. |
Thanks Kerstin. For protobuf the major version changes on the C++ API are nominal and scheduled yearly*, so going from 3.x -> 5.x hasn't required eCAL to change anything. Going to 6.x will require changes because they move signatures from Technically I can't speak for anyone except me, but protobuf is pretty much the only serializer I have used with eCAL, I consider it a "core" feature. Splitting off " That said if nothing is done, this change will, with great certainty, bite someone if the binaries continue to be supplied in the current methods. Personally I'm against including the SDK in the windows installer (just leave it as the app installer) and would direct people to Conan/vcpkg/others. I appreciate that's considerable extra effort, but am willing to help. On the Linux side Debian-based distros are stuck on the pre-abseil protobuf versions so not an imminent concern yet. I've taken up maintainership of eCAL for the AUR (where protobuf is updated) and am working through all the issues; but here there aren't exactly many users. * Some extra reading on Protobuf versions if you care: https://protobuf.dev/support/version-support/ |
f241845
to
4c9eea8
Compare
4c9eea8
to
1222c79
Compare
Description
Updates protobuf from 3.11.4 to 5.29.4.
Originally it would have been to 4.25.x but:
a. That major version just went out of maintenance support.
b. There is a regression in that version with msvc and
/permissive-
which impacts eCAL.c. Jumping to 5.x didn't seem to need any additional work...
d. 5.x gives a year of maintenance support
Unfortunately, updating protobuf has some knock on effects.
CMAKE_CXX_STANDARD
std::string_view
APIs but as protobuf was compiled with C++14 they would be missing and cause link failures.protobuf-protos
target so it is removed from the innosetup scriptprotobuf-headers
)See also:
WARNING I have not lent any attention to the Python or C# (beyond fixing an obvious bug) binding situation (but no CI job has started failing). If there's something that needs attention point me at it and I'll have a go 😄
Related issues
Related to #1187 (I'll let the team decide if this closes it or not)
Superceeds #1818
Plus a bunch of other open issues mainly relating to the Python situation.