Skip to content

Commit b7227b9

Browse files
committed
Updated docs
1 parent b18caf7 commit b7227b9

File tree

1 file changed

+59
-0
lines changed

1 file changed

+59
-0
lines changed

docs/UPGRADING.md

+59
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,65 @@ To address all the inconsistencies/inaccuracies we introduced two messages:
167167
- `PlatformMetadata` contains generic information about a platform (not correlated to a specific release).
168168
- `PlatformRelease` contains information about a specific release of a platform.
169169

170+
### The gRPC `cc.arduino.cli.commands.v1.MonitorRequest` message has been changed.
171+
172+
Previously the `MonitorRequest` was a single message used to open the monitor, to stream data, and to change the port
173+
configuration:
174+
175+
```proto
176+
message MonitorRequest {
177+
// Arduino Core Service instance from the `Init` response.
178+
Instance instance = 1;
179+
// Port to open, must be filled only on the first request
180+
Port port = 2;
181+
// The board FQBN we are trying to connect to. This is optional, and it's
182+
// needed to disambiguate if more than one platform provides the pluggable
183+
// monitor for a given port protocol.
184+
string fqbn = 3;
185+
// Data to send to the port
186+
bytes tx_data = 4;
187+
// Port configuration, optional, contains settings of the port to be applied
188+
MonitorPortConfiguration port_configuration = 5;
189+
}
190+
```
191+
192+
Now the meaning of the fields has been clarified with the `oneof` clause, making it more explicit:
193+
194+
```proto
195+
message MonitorRequest {
196+
oneof message {
197+
// Open request, it must be the first incoming message
198+
MonitorPortOpenRequest open_request = 1;
199+
// Data to send to the port
200+
bytes tx_data = 2;
201+
// Port configuration, contains settings of the port to be changed
202+
MonitorPortConfiguration updated_configuration = 3;
203+
// Close message, set to true to gracefully close a port (this ensure
204+
// that the gRPC streaming call is closed by the daemon AFTER the port
205+
// has been successfully closed)
206+
bool close = 4;
207+
}
208+
}
209+
210+
message MonitorPortOpenRequest {
211+
// Arduino Core Service instance from the `Init` response.
212+
Instance instance = 1;
213+
// Port to open, must be filled only on the first request
214+
Port port = 2;
215+
// The board FQBN we are trying to connect to. This is optional, and it's
216+
// needed to disambiguate if more than one platform provides the pluggable
217+
// monitor for a given port protocol.
218+
string fqbn = 3;
219+
// Port configuration, optional, contains settings of the port to be applied
220+
MonitorPortConfiguration port_configuration = 4;
221+
}
222+
```
223+
224+
Now the message field `MonitorPortOpenRequest.open_request` must be sent in the first message after opening the
225+
streaming gRPC call.
226+
227+
The identification number of the fields has been changed, this change is not binary compatible with old clients.
228+
170229
## 0.35.0
171230

172231
### CLI `debug --info` changed JSON output.

0 commit comments

Comments
 (0)