Once all gRPC servers are migrated to the codegen introduced by #1950, we should be able to hide the tonic server implementations.
This may require some additional refactoring to move existing gRPC service configuration into the proto crate itself. This is because at the moment the tonic server service types are used directly, but in order to hide the type, we would likely have to return a generic tower service (I think).
Maybe this isn't required, or there are alternatives. We will have to experiment.
Once all gRPC servers are migrated to the codegen introduced by #1950, we should be able to hide the tonic server implementations.
This may require some additional refactoring to move existing gRPC service configuration into the proto crate itself. This is because at the moment the tonic server service types are used directly, but in order to hide the type, we would likely have to return a generic
towerservice (I think).Maybe this isn't required, or there are alternatives. We will have to experiment.