-
Notifications
You must be signed in to change notification settings - Fork 113
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
Drop C++ server code #1016
Drop C++ server code #1016
Conversation
@ipetr0v @tiziano88 : purely an FYI at this point, to make sure no-one spends time doing duplicating something that's already done or in-progress. Please don't look at this yet. (Unless you're about to work on something similar, in which case it's worth checking the commit list to see if it's got anything relevant). |
This removes the C++ Runtime implementation, including: - the gRPC server pseudo-Node (replaced by Rust version) - the gRPC client pseudo-Node (replaced by Rust version) - the storage pseudo-Node (dropped) - the Roughtime client pseudo-Node (dropped).
No longer any need for a C++ compile-time switch to disable debugging features.
Now that cargo raze is not required, remove the pin on tonic version 0.1.1 and update to latest.
The gRPC server-side functionality is now configured as an available pseudo-Node type, so the top-level port is not used.
There is no longer any C++ code that builds ApplicationConfiguration messages so drop the helper functions for building them.
There is currently no C++ code that uses these definitions. If we ever add support (#744) for writing Nodes in C++ we'll need a more complete ABI definition anyway, so not worth keeping one constant and one type around in the meanwhile.
Changes required by commit 68fbbe3 ("Use Rust Loader for running examples (#993)"): - Add and use a config that doesn't include a translator node. - Add C++ code that is equivalent to oak::grpc::server::init(). Change required by commit 64d3f90 ("Use bytes to represent gRPC message body (#833)"): - Re-work hand-coded response message for current GrpcResponse proto message definition. For #1009
This is mostly a revert of commit 5f95a10 ("builds: drop support for MacOS (#940)"), but with conflicts resolved and scripts updated. The main changes from a revert are: - Reorder sections in the docs/INSTALL-OSX.md doc to reflect the primacy of Rust. - Add an OS conditional clause to avoid using a musl build for the server binary, because musl is Linux-specific (it is built on the Linux syscall layer). - Fiddle with one of the checks in check_formatting to get it working on both macOS and Linux.
Restore the commented out code, and fix the bug where the NodeStopper instance for a new Node was registered against the creating Node's ID rather than its own. Fixes #1002.
Probably easiest to review commit-by-commit – there are various preparatory commits to set things up so that the commit which removes the C++ server code is a pure deletion. One thing still to do: this disables the Fixes: #945, #936, #850, #916, #1002 |
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.
💯
Goodbye C++ |
Reproducibility index:
|
Checklist
cover any TODOs and/or unfinished work.
construction.