pw_rpc: Protocol updates for client streams

- Add a CLIENT_STREAM packet for messages in client streams.
- Rename CANCEL_SERVER_STREAM to CANCEL, since it applies to all RPC
  types.
- Remove server responses to CANCEL packets from protocol description.
- Document cancellation of unary RPCs.

Change-Id: I3b15beb2de94f318fac58fc3d682aefe41056676
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/48800
Commit-Queue: Wyatt Hepler <hepler@google.com>
Reviewed-by: Alexei Frolov <frolv@google.com>
9 files changed
tree: 589b6db24f5e05cee6cb0749e53b517e409604f2
  1. build_overrides/
  2. docker/
  3. docs/
  4. pw_allocator/
  5. pw_analog/
  6. pw_arduino_build/
  7. pw_assert/
  8. pw_assert_basic/
  9. pw_assert_log/
  10. pw_base64/
  11. pw_bloat/
  12. pw_blob_store/
  13. pw_boot_armv7m/
  14. pw_build/
  15. pw_bytes/
  16. pw_checksum/
  17. pw_chrono/
  18. pw_chrono_embos/
  19. pw_chrono_freertos/
  20. pw_chrono_stl/
  21. pw_chrono_threadx/
  22. pw_cli/
  23. pw_containers/
  24. pw_cpu_exception/
  25. pw_cpu_exception_cortex_m/
  26. pw_docgen/
  27. pw_doctor/
  28. pw_env_setup/
  29. pw_function/
  30. pw_fuzzer/
  31. pw_hdlc/
  32. pw_hex_dump/
  33. pw_i2c/
  34. pw_interrupt/
  35. pw_interrupt_cortex_m/
  36. pw_kvs/
  37. pw_libc/
  38. pw_log/
  39. pw_log_basic/
  40. pw_log_multisink/
  41. pw_log_null/
  42. pw_log_rpc/
  43. pw_log_sink/
  44. pw_log_tokenized/
  45. pw_malloc/
  46. pw_malloc_freelist/
  47. pw_metric/
  48. pw_minimal_cpp_stdlib/
  49. pw_module/
  50. pw_multisink/
  51. pw_package/
  52. pw_persistent_ram/
  53. pw_polyfill/
  54. pw_preprocessor/
  55. pw_presubmit/
  56. pw_protobuf/
  57. pw_protobuf_compiler/
  58. pw_random/
  59. pw_result/
  60. pw_ring_buffer/
  61. pw_router/
  62. pw_rpc/
  63. pw_snapshot/
  64. pw_span/
  65. pw_status/
  66. pw_stm32cube_build/
  67. pw_stream/
  68. pw_string/
  69. pw_sync/
  70. pw_sync_baremetal/
  71. pw_sync_embos/
  72. pw_sync_freertos/
  73. pw_sync_stl/
  74. pw_sync_threadx/
  75. pw_sys_io/
  76. pw_sys_io_arduino/
  77. pw_sys_io_baremetal_lm3s6965evb/
  78. pw_sys_io_baremetal_stm32f429/
  79. pw_sys_io_stdio/
  80. pw_target_runner/
  81. pw_thread/
  82. pw_thread_embos/
  83. pw_thread_freertos/
  84. pw_thread_stl/
  85. pw_thread_threadx/
  86. pw_tokenizer/
  87. pw_tool/
  88. pw_toolchain/
  89. pw_trace/
  90. pw_trace_tokenized/
  91. pw_transfer/
  92. pw_unit_test/
  93. pw_varint/
  94. pw_watch/
  95. pw_web_ui/
  96. targets/
  97. third_party/
  98. .bazelignore
  99. .bazelrc
  100. .clang-format
  101. .eslintrc.json
  102. .gitattributes
  103. .gitignore
  104. .gn
  105. .prettierrc.js
  106. .pylintrc
  107. activate.bat
  108. AUTHORS
  109. bootstrap.bat
  110. bootstrap.sh
  111. BUILD
  112. BUILD.gn
  113. BUILDCONFIG.gn
  114. CMakeLists.txt
  115. LICENSE
  116. modules.gni
  117. OWNERS
  118. package.json
  119. PW_PLUGINS
  120. README.md
  121. tsconfig.json
  122. WORKSPACE
  123. yarn.lock
README.md

See our website: http://pigweed.dev