Add RIC message types to header
[ric-plt/lib/rmr.git] / docs / rel-notes.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License. 
2 .. SPDX-License-Identifier: CC-BY-4.0 
3 .. CAUTION: this document is generated from source in doc/src/rtd. 
4 .. To make changes edit the source and recompile the document. 
5 .. Do NOT make changes directly to .rst or .md files. 
6  
7 ============================================================================================ 
8 RMR Release Notes 
9 ============================================================================================ 
10
11
12 RMR Release Notes
13 =================
14
15 The following is a list of release highlights for the RMR 
16 library. At one point in time the RMR repo also housed a 
17 wrapper library with a separate version and release cycle. 
18 This resulted in *leap frogging* versions for each package; 
19 the RMR core library was assigned odd major numbers (e.g. 
20 3.1.0). When the wrapper code was moved to a different repo 
21 the need to leap frog versions ceased, and beginning with 
22 version 4.0.0, the RMR versions should no longer skip. 
23
24
25 2020 June 22; version 4.1.1
26 ---------------------------
27
28 Add new message types to RIC header file for 
29     RIC_ALARM           (110)
30     RIC_ALARM_QUERY     (111)
31     RIC_METRICS         (120)
32     RAN_E2_RESET_REQ    (12008)
33     RAN_E2_RESET_RESP   (12009)
34  
35
36
37 2020 June 18; version 4.1.0
38 ---------------------------
39
40 Bump version minor to move away from 4.0.* which will bump 
41 for any patches applied back to bronze. 
42  
43 Add magic C++ goo to symtab header file allowing C++ xAPPs to 
44 use the symbol table directly. 
45  
46
47
48 Bronze Release
49 ==============
50
51
52
53 2020 May 06; version 4.0.5
54 --------------------------
55
56 Fix the bug in SI95 receive message management semaphore 
57 count issue. (RIC-355) 
58  
59
60
61 2020 April 29; version 4.0.4
62 ----------------------------
63
64 Fix the traffic steering message type constants (again) 
65 (RIC-342) 
66  
67
68
69 2020 April 28; version 4.0.3
70 ----------------------------
71
72 Fix sonar flagged bugs (RIC-78) 
73  
74
75
76 2020 April 24; version 4.0.2
77 ----------------------------
78
79 Correct bug in SI95 transport header length validation 
80 (RIC-341) 
81  
82
83
84 2020 April 22; version 4.0.1
85 ----------------------------
86
87 Correct message type constant for Traffic Steering 
88 predication (RIC-342) 
89  
90
91
92 2020 April 21; version 4.0.0
93 ----------------------------
94
95 The NNG based libraries are no longer included in the RMR 
96 packages. This is considered a breaking change as NNG will 
97 not be supported by default. It is still possible to build 
98 with RMR-NNG libraries, but that is the exception. The API 
99 between 3.8.2 and 4.0.0 is the SAME. Upgrading to 4.0.0 only 
100 means that the underlying transport mechanism is limited only 
101 to SI95. 
102  
103 The rmr_rcv_specific() function has been deprecated as it was 
104 necessary only for NNG and Nanomsg support. Its use should be 
105 discontinued. 
106  
107
108
109 2020 April 20; version 3.8.2
110 ----------------------------
111
112 Fix bug which was preventing an instance receiving dynamic 
113 route table updates. (RIC-336) 
114  
115
116
117 2020 April 20; version 3.8.1
118 ----------------------------
119
120 Add user guide which replaces the concatenation of man pages 
121 (RIC-328) 
122  
123
124
125 2020 April 17; version 3.8.0
126 ----------------------------
127
128 Add safe connect to avoid potential connect bug on Linux 
129 (RIC-332) 
130  
131 Change debugging in route table collector to avoid possible 
132 segment fault when in level 2 debug (RIC-335) 
133  
134
135
136 2020 April 15; version 3.7.4
137 ----------------------------
138
139 Add missing message type to header file (RIC-334) 
140  
141
142
143 2020 April 14; version 3.7.3
144 ----------------------------
145
146 Fix bug in rmr_call() when using SI95 (RIC-333) 
147  
148
149
150 2020 April 10; version 3.7.2
151 ----------------------------
152
153 Fix bug related to static route table only mode (RIC-331) 
154  
155
156
157 2020 April 9; version 3.7.1
158 ---------------------------
159
160 The max length restriction for receiving messages when using 
161 SI95 has been removed. The length supplied during 
162 initialisation is used as the "normal maximum" and default 
163 buffer allocation size, but messages arriving which are 
164 larger are accepted. (RIC-309) 
165  
166
167
168 2020 April 7; version 3.7.0
169 ---------------------------
170
171 The health check support programme was renamed to rmr_probe 
172 (RIC-308). 
173  
174
175
176 2020 April 6; version 3.6.6
177 ---------------------------
178
179 Correct bug in SI95 address conversion module (RIC-327) 
180 Correct bug in SI initialisation module 
181  
182
183
184 2020 April 2; version 3.6.5
185 ---------------------------
186
187 Correct potential nil pointer use when examining interfaces 
188 for use as a listen target (RIC-307) 
189  
190
191
192 2020 April 1; version 3.6.4
193 ---------------------------
194
195 Correct potential nil pointer use in the NNG interface 
196 (RIC-303) Correct issue preventing CI build without a 
197 container 
198  
199
200
201 2020 March 30; version 3.6.3
202 ----------------------------
203
204 Correct the max receive message size constant in rmr.h 
205 (RIC-301) 
206  
207
208
209 2020 March 23; version 3.6.2
210 ----------------------------
211
212 Fix message initialisation bug when pulling a message from 
213 the pool (RIC-295) 
214  
215
216
217 2020 March 19; version 3.6.1
218 ----------------------------
219
220 Fix problem with RPM package install 
221  
222
223
224 2020 March 18; version 3.6.0
225 ----------------------------
226
227 Add message types to support traffic steering 
228  
229
230
231 2020 March 16; version 3.5.2
232 ----------------------------
233
234 Correct bug in the meid table parser that prevented the 
235 ack/nack of meid tables (RIC-273) 
236  
237
238
239 2020 March 10; version 3.5.1
240 ----------------------------
241
242 Add missing health check message types. 
243  
244
245
246 2020 March 9; version 3.5.0
247 ---------------------------
248
249 Added new wormhole send function: rmr_wh_call(). 
250  
251
252
253 2020 March 6; version 3.4.0
254 ---------------------------
255
256 Add new wormhole state function: rmr_wh_state(). 
257  
258
259
260 2020 March 5; Version 3.3.1
261 ---------------------------
262
263 Correct several "bugs" identified by automatic code analysis. 
264  
265
266
267 2020 March 4; Version 3.3.0
268 ---------------------------
269
270 Add SI95 based unit testing Health check support binary added 
271 (reason for minor bump) 
272  
273
274
275 2020 February 26; version 3.2.5
276 -------------------------------
277
278 Fix source address bug in SI95 receive/send funcitons. Fix 
279 threading issues involving session disconnection in SI95 
280 Remove unused SI95 status variable. 
281  
282
283
284 2020 February 24; version 3.2.4
285 -------------------------------
286
287 Fix meid bug (RIC-220) causing core dump. 
288  
289
290
291 2020 February 21; version 3.2.3
292 -------------------------------
293
294 Add meid routing support to the SI95 interface. 
295  
296
297
298 2020 February 20; version 3.2.2
299 -------------------------------
300
301 Fix receive thread related core dump (ring early unlock). 
302  
303
304
305 2020 February 19; version 3.2.1
306 -------------------------------
307
308 Added missing message types (E2-Setup) 
309  
310
311
312 2020 February 18; version 3.2.0
313 -------------------------------
314
315 Added support for new Route Manager and it's ability to 
316 accept a request for table update. 
317  
318
319
320 2020 February 14; version 3.1.3
321 -------------------------------
322
323 Fix bug in SIsend which was causing a core dump in some cases 
324 where the application attempted to send on a connection that 
325 had disconnected. (RIC-207). 
326  
327
328
329 2020 February 6; version 3.1.2
330 ------------------------------
331
332 Fix disconnection detection bug in interface to SI95. 
333  
334
335
336 2020 January 31; verison 3.1.1
337 ------------------------------
338
339 Allow route table thread logging to be completely disabled 
340 when logging is turned off. 
341  
342
343
344 2020 January 26; verison 3.1.0
345 ------------------------------
346
347 First step to allowing the user programme to control messages 
348 written to standard error. Introduces the rmr_set_vlevel() 
349 function, and related environment variable. 
350  
351
352
353 2020 January 24; verison 3.0.5
354 ------------------------------
355
356 Fix bug in SI95 with receive buffer allocation. 
357  
358
359
360 2020 January 23; verison 3.0.4
361 ------------------------------
362
363 Fix bug in SI95 causing excessive CPU usage on poll. 
364  
365
366
367 2020 January 22; verison 3.0.3
368 ------------------------------
369
370 Enable thread support for multiple receive threads. 
371  
372
373
374 2020 January 21; verison 3.0.2
375 ------------------------------
376
377 Fix bug in SI95 (missing reallocate payload function). 
378  
379
380
381 2020 January 20; verison 3.0.1
382 ------------------------------
383
384 Enable support for dynamic route table updates via RMR 
385 session. 
386  
387
388
389 2020 January 16; version 3.0.0
390 ------------------------------
391
392 Introduce support for SI95 transport library to replace NNG. 
393 (RMR library versions will use leading odd numbers to avoid 
394 tag collisions with the wrapper tags which will use even 
395 numbers.) 
396  
397
398
399 2019 December 9; version 1.13.1
400 -------------------------------
401
402 Correct documentation and missing rel-notes update for RTD. 
403  
404
405
406 2019 December 6; version 1.13.0
407 -------------------------------
408
409 Add ability to route messages based on the MEID in a message 
410 combined with the message type/subscription-ID. 
411  
412
413
414 Amber Release
415 =============
416
417
418
419 2019 November 14; version 1.11.1
420 --------------------------------
421
422 Fix bug in payload reallocation function; correct length of 
423 payload was not always copied. 
424  
425
426
427 2019 November 13; version 1.12.1
428 --------------------------------
429
430 New message type constants added to support A1. 
431  
432
433
434 2019 November 4; version 1.11.0
435 -------------------------------
436
437 Version bump to move away from the 1.10.* to distinguish 
438 between release A and the trial. 
439  
440
441
442 2019 November 7; version 1.12.0
443 -------------------------------
444
445 Version cut to support continued development for next release 
446 preserving the 1.11.* versions for release 1 (Amber) and 
447 related fixes. 
448  
449
450
451 2019 October 31; version 1.10.2
452 -------------------------------
453
454 Provide the means to increase the payload size of a received 
455 message without losing the data needed to use the 
456 rmr_rts_msg() funciton. 
457  
458
459
460 2019 October 21; version 1.10.1
461 -------------------------------
462
463 Fix to prevent null message buffer from being returned by the 
464 timeout receive function if the function is passed one to 
465 reuse. 
466  
467
468
469 2019 October 21; version 1.10.1
470 -------------------------------
471
472 Add periodic dump of send count info to stderr. 
473  
474
475
476 2019 September 27; version 1.9.0
477 --------------------------------
478
479 Python bindings added receive all queued function and 
480 corrected a unit test 
481  
482
483
484 2019 September 25; version 1.8.3
485 --------------------------------
486
487 Correct application level test issue causing timing problems 
488 during jenkins verification testing at command and merge 
489  
490 Handle the NNG connection shutdown status which may now be 
491 generated when a connection throug a proxy is reset. 
492  
493
494
495 2019 September 25; version 1.8.2
496 --------------------------------
497
498 Correct bug in rmr_torcv_msg() when timeout set to zero (0). 
499  
500
501
502 2019 September 19; version 1.8.1
503 --------------------------------
504
505 Correct missing constant for wrappers. 
506  
507
508
509 2019 September 19; version 1.8.0
510 --------------------------------
511
512 New message types added: 
513     RAN_CONNECTED, RAN_RESTARTED, RAN_RECONFIGURED
514  
515
516
517 2019 September 17; version 1.7.0
518 --------------------------------
519
520 Initial connection mode now defaults to asynchronous. Set 
521 RMR_ASYNC_CONN=0 in the environment before rmr_init() is 
522 invoked to revert to synchronous first TCP connections. 
523 (Recovery connection attempts have always been asynchronous). 
524  
525
526
527 2019 September 3; version 1.6.0
528 -------------------------------
529
530 Fix bug in the rmr_rts_msg() function. If a return to sender 
531 message failed, the source IP address was not correctly 
532 adjusted and could cause the message to be "reflected" back 
533 to the sender on a retry. 
534  
535 Added the ability to set the source "ID" via an environment 
536 var (RMR_SRC_ID). When present in the environment, the string 
537 will be placed in to the message header as the source and 
538 thus be used by an application calling rmr_rts_smg() to 
539 return a response to the sender. If this environment variable 
540 is not present, the host name (original behaviour) is used. 
541  
542
543
544 2019 August 26; version 1.4.0
545 -----------------------------
546
547 New message types were added. 
548  
549
550
551 2019 August 16; version 1.3.0
552 -----------------------------
553
554 New mesage types added. 
555  
556
557
558 2019 August 13; version 1.2.0 (API change, non-breaking)
559 --------------------------------------------------------
560
561 The function rmr_get_xact() was added to proide a convenient 
562 way to extract the transaction field from a message. 
563  
564
565
566 2019 August 8; version 1.1.0 (API change)
567 -----------------------------------------
568
569 This change should be backward compatable/non-breaking A new 
570 field has been added to the message buffer (rmr_mbuf_t). This 
571 field (tp_state) is used to communicate the errno value that 
572 the transport mechanism might set during send and/or receive 
573 operations. C programmes should continue to use errno 
574 directly, but in some environments wrappers may not be able 
575 to access errno and this provides the value to them. See the 
576 rmr_alloc_msg manual page for more details. 
577  
578
579
580 2019 August 6; version 1.0.45 (build changes)
581 ---------------------------------------------
582
583 Support for the Nanomsg transport library has been dropped. 
584     The library librmr.* will no longer be included in packages.
585  
586 Packages will install RMR libraries into the system preferred 
587     target directory. On some systems this is /usr/local/lib
588     and on others it is /usr/local/lib64.  The diretory is
589     determined by the sytem on which the package is built and
590     NOT by the system installing the package, so it's possible
591     that the RMR libraries end up in a strange location if the
592     .deb or .rpm file was generated on a Linux flavour that
593     has a different preference than the one where the package
594     is installed.
595  
596
597
598 2019 August 6; version 1.0.44 (API change)
599 ------------------------------------------
600
601 Added a new message type constant. 
602  
603
604
605 2019 July 15; Version 1.0.39 (bug fix)
606 --------------------------------------
607
608 Prevent unnecessary usleep in retry loop. 
609  
610
611
612 2019 July 12; Version 1.0.38 (API change)
613 -----------------------------------------
614
615 Added new message types to RIC_message_types.h. 
616  
617
618
619 2019 July 11; Version 1.0.37
620 ----------------------------
621
622  
623 librmr and librmr_nng 
624     - Add message buffer API function rmr_trace_ref()
625       (see rmr_trace_ref.3 manual page in dev package).
626  
627
628
629 2020 April 8; Version n/a
630 -------------------------
631
632 RMR Python moved to Python Xapp Framework 
633 (https://gerrit.o-ran-sc.org/r/admin/repos/ric-plt/xapp-frame-py) 
634  
635
636
637 2020 February 29; Version 2.4.0
638 -------------------------------
639
640 Add consolidated testing under CMake Add support binary for 
641 health check (SI95 only) 
642  
643
644
645 2020 February 28; Version 2.3.6
646 -------------------------------
647
648 Fix bug in Rt. Mgr comm which prevented table ID from being 
649 sent on ack message (RIC-232).