@@ -4,6 +4,65 @@ Here you can find a list of migration guides to handle breaking changes between
4
4
5
5
## 0.36.0
6
6
7
+ ### The gRPC ` cc.arduino.cli.commands.v1.MonitorRequest ` message has been changed.
8
+
9
+ Previously the ` MonitorRequest ` was a single message used to open the monitor, to stream data, and to change the port
10
+ configuration:
11
+
12
+ ``` proto
13
+ message MonitorRequest {
14
+ // Arduino Core Service instance from the `Init` response.
15
+ Instance instance = 1;
16
+ // Port to open, must be filled only on the first request
17
+ Port port = 2;
18
+ // The board FQBN we are trying to connect to. This is optional, and it's
19
+ // needed to disambiguate if more than one platform provides the pluggable
20
+ // monitor for a given port protocol.
21
+ string fqbn = 3;
22
+ // Data to send to the port
23
+ bytes tx_data = 4;
24
+ // Port configuration, optional, contains settings of the port to be applied
25
+ MonitorPortConfiguration port_configuration = 5;
26
+ }
27
+ ```
28
+
29
+ Now the meaning of the fields has been clarified with the ` oneof ` clause, making it more explicit:
30
+
31
+ ``` proto
32
+ message MonitorRequest {
33
+ oneof message {
34
+ // Open request, it must be the first incoming message
35
+ MonitorPortOpenRequest open_request = 1;
36
+ // Data to send to the port
37
+ bytes tx_data = 2;
38
+ // Port configuration, contains settings of the port to be changed
39
+ MonitorPortConfiguration updated_configuration = 3;
40
+ // Close message, set to true to gracefully close a port (this ensure
41
+ // that the gRPC streaming call is closed by the daemon AFTER the port
42
+ // has been successfully closed)
43
+ bool close = 4;
44
+ }
45
+ }
46
+
47
+ message MonitorPortOpenRequest {
48
+ // Arduino Core Service instance from the `Init` response.
49
+ Instance instance = 1;
50
+ // Port to open, must be filled only on the first request
51
+ Port port = 2;
52
+ // The board FQBN we are trying to connect to. This is optional, and it's
53
+ // needed to disambiguate if more than one platform provides the pluggable
54
+ // monitor for a given port protocol.
55
+ string fqbn = 3;
56
+ // Port configuration, optional, contains settings of the port to be applied
57
+ MonitorPortConfiguration port_configuration = 4;
58
+ }
59
+ ```
60
+
61
+ Now the message field ` MonitorPortOpenRequest.open_request ` must be sent in the first message after opening the
62
+ streaming gRPC call.
63
+
64
+ The identification number of the fields has been changed, this change is not binary compatible with old clients.
65
+
7
66
### Some golang modules from ` github.com/arduino/arduino-cli/* ` have been made private.
8
67
9
68
The following golang modules are no longer available as public API:
0 commit comments