commit | 06e830d98e6593e08d95884294f59d9e14a920a8 | [log] [tgz] |
---|---|---|
author | Nigel Tao <nigeltao@chromium.org> | Fri Dec 09 11:14:46 2022 +1100 |
committer | Copybara-Service <copybara-worker@google.com> | Tue Dec 13 05:47:10 2022 -0800 |
tree | 0564f65ca1cd3da9091678075c5e31fff4ba0dbd | |
parent | fc4f25a24905b745450e97f10c061b9e6eb9d1a5 [diff] |
system_api: add fusebox Rename-related protos BUG=b:255520194 TEST=manual Change-Id: Idbad3e9836713adfd6d3d58d4244577a65cd1f47 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform2/+/4091183 Commit-Queue: Nigel Tao <nigeltao@chromium.org> Auto-Submit: Nigel Tao <nigeltao@chromium.org> Reviewed-by: Eric Caruso <ejcaruso@chromium.org> Tested-by: Nigel Tao <nigeltao@chromium.org> NOKEYCHECK=True GitOrigin-RevId: e5370cd2ce5b092f3eaaee584125bff99f700a04
This directory (platform2/system_api
) contains constants and definitions like D-Bus service names that are shared between Chromium and Chromium OS.
This directory is only for things like headers and .proto files. No implementation should be added.
When writting a .proto file make sure to use:
option optimize_for = LITE_RUNTIME;
This will force usage of a lite protobuf instead of a full/heavy weight protobuf. The browser only links against the light version, so you will get cryptic link errors about missing parts of Message if you define a protobuf here and then try to use it in Chrome. Currently CrOS links against the full protobuffer library, but that might change in the future.
When declaring a protobuf, avoid use of required unless it is exactly what you mean. "Required is Forever" and very rarely should actually be used. Consult Protocol Buffer Basics: C++ for a detailed of this issue.