f5b40d7f63f4b173f3b87c85e762ff46a5bb8704
[ric-plt/lib/rmr.git] / docs / rel-notes.rst
1  
2 .. This work is licensed under a Creative Commons Attribution 4.0 International License. 
3 .. SPDX-License-Identifier: CC-BY-4.0 
4 .. CAUTION: this document is generated from source in doc/src/rtd. 
5 .. To make changes edit the source and recompile the document. 
6 .. Do NOT make changes directly to .rst or .md files. 
7  
8  
9 RMR Release Notes 
10 ============================================================================================ 
11  
12 The following is a list of release highlights for the core 
13 RMR library and wrappers which are housed in the same 
14 repository. These are extracted directly from the 
15 CHANGES_*.txt files at the repo root; please refer to those 
16 files for a completely up to date listing of API changes (as 
17 generated documents may lag). 
18  
19 The RMR repo houses two distinct release entities: the core 
20 RMR package and the python wrapper package. To avoid naming 
21 conflicts (tags mostly) The core package uses odd major 
22 version numbers (e.g. 3.2.1) and the wrapper package uses 
23 even major version numbers. The release notes are split into 
24 two sections; please be sure to scroll to the section that is 
25 appropriate. 
26  
27 Core RMR Changes 
28 -------------------------------------------------------------------------------------------- 
29  
30  
31 2020 April 6; version 3.6.6 
32 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
33  
34 Correct bug in SI95 address conversion module (RIC-327) 
35 Correct bug in SI initialisation module 
36  
37  
38 2020 April 2; version 3.6.5 
39 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
40  
41 Correct potential nil pointer use when examining interfaces 
42 for use as a listen target (RIC-307) 
43  
44  
45 2020 April 1; version 3.6.4 
46 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
47  
48 Correct potential nil pointer use in the NNG interface 
49 (RIC-303) Correct issue preventing CI build without a 
50 container 
51  
52  
53 2020 March 30; version 3.6.3 
54 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
55  
56 Correct the max receive message size constant in rmr.h 
57 (RIC-301) 
58  
59  
60 2020 March 23; version 3.6.2 
61 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
62  
63 Fix message initialisation bug when pulling a message from 
64 the pool (RIC-295) 
65  
66  
67 2020 March 19; version 3.6.1 
68 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
69  
70 Fix problem with RPM package install 
71  
72  
73 2020 March 18; version 3.6.0 
74 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
75  
76 Add message types to support traffic steering 
77  
78  
79 2020 March 16; version 3.5.2 
80 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
81  
82 Correct bug in the meid table parser that prevented the 
83 ack/nack of meid tables (RIC-273) 
84  
85  
86 2020 March 10; version 3.5.1 
87 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
88  
89 Add missing health check message types. 
90  
91  
92 2020 March 9; version 3.5.0 
93 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
94  
95 Added new wormhole send function: rmr_wh_call(). 
96  
97  
98 2020 March 6; version 3.4.0 
99 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
100  
101 Add new wormhole state function: rmr_wh_state(). 
102  
103  
104 2020 March 5; Version 3.3.1 
105 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
106  
107 Correct several "bugs" identified by automatic code analysis. 
108  
109  
110 2020 March 4; Version 3.3.0 
111 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
112  
113 Add SI95 based unit testing Health check support binary added 
114 (reason for minor bump) 
115  
116  
117 2020 February 26; version 3.2.5 
118 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
119  
120 Fix source address bug in SI95 receive/send funcitons. Fix 
121 threading issues involving session disconnection in SI95 
122 Remove unused SI95 status variable. 
123  
124  
125 2020 February 24; version 3.2.4 
126 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
127  
128 Fix meid bug (RIC-220) causing core dump. 
129  
130  
131 2020 February 21; version 3.2.3 
132 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
133  
134 Add meid routing support to the SI95 interface. 
135  
136  
137 2020 February 20; version 3.2.2 
138 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
139  
140 Fix receive thread related core dump (ring early unlock). 
141  
142  
143 2020 February 19; version 3.2.1 
144 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
145  
146 Added missing message types (E2-Setup) 
147  
148  
149 2020 February 18; version 3.2.0 
150 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
151  
152 Added support for new Route Manager and it's ability to 
153 accept a request for table update. 
154  
155  
156 2020 February 14; version 3.1.3 
157 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
158  
159 Fix bug in SIsend which was causing a core dump in some cases 
160 where the application attempted to send on a connection that 
161 had disconnected. (RIC-207). 
162  
163  
164 2020 February 6; version 3.1.2 
165 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
166  
167 Fix disconnection detection bug in interface to SI95. 
168  
169  
170 2020 January 31; verison 3.1.1 
171 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
172  
173 Allow route table thread logging to be completely disabled 
174 when logging is turned off. 
175  
176  
177 2020 January 26; verison 3.1.0 
178 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
179  
180 First step to allowing the user programme to control messages 
181 written to standard error. Introduces the rmr_set_vlevel() 
182 function, and related environment variable. 
183  
184  
185 2020 January 24; verison 3.0.5 
186 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
187  
188 Fix bug in SI95 with receive buffer allocation. 
189  
190  
191 2020 January 23; verison 3.0.4 
192 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
193  
194 Fix bug in SI95 causing excessive CPU usage on poll. 
195  
196  
197 2020 January 22; verison 3.0.3 
198 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
199  
200 Enable thread support for multiple receive threads. 
201  
202  
203 2020 January 21; verison 3.0.2 
204 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
205  
206 Fix bug in SI95 (missing reallocate payload function). 
207  
208  
209 2020 January 20; verison 3.0.1 
210 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
211  
212 Enable support for dynamic route table updates via RMR 
213 session. 
214  
215  
216 2020 January 16; version 3.0.0 
217 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
218  
219 Introduce support for SI95 transport library to replace NNG. 
220 (RMR library versions will use leading odd numbers to avoid 
221 tag collisions with the wrapper tags which will use even 
222 numbers.) 
223  
224  
225 2019 December 9; version 1.13.1 
226 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
227  
228 Correct documentation and missing rel-notes update for RTD. 
229  
230  
231 2019 December 6; version 1.13.0 
232 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
233  
234 Add ability to route messages based on the MEID in a message 
235 combined with the message type/subscription-ID. 
236  
237  
238 2019 November 14; version 1.11.1 (Amber) 
239 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
240  
241 Fix bug in payload reallocation function; correct length of 
242 payload was not always copied. 
243  
244  
245 2019 November 13; version 1.12.1 
246 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
247  
248 New message type constants added to support A1. 
249  
250  
251 2019 November 4; version 1.11.0 (Amber) 
252 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
253  
254 Version bump to move away from the 1.10.* to distinguish 
255 between release A and the trial. 
256  
257  
258 2019 November 7; version 1.12.0 
259 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
260  
261 Version cut to support continued development for next release 
262 preserving the 1.11.* versions for release 1 (Amber) and 
263 related fixes. 
264  
265  
266 2019 October 31; version 1.10.2 
267 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
268  
269 Provide the means to increase the payload size of a received 
270 message without losing the data needed to use the 
271 rmr_rts_msg() funciton. 
272  
273  
274 2019 October 21; version 1.10.1 
275 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
276  
277 Fix to prevent null message buffer from being returned by the 
278 timeout receive function if the function is passed one to 
279 reuse. 
280  
281  
282 2019 October 21; version 1.10.1 
283 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
284  
285 Add periodic dump of send count info to stderr. 
286  
287  
288 2019 September 27; version 1.9.0 
289 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
290  
291 Python bindings added receive all queued function and 
292 corrected a unit test 
293  
294  
295 2019 September 25; version 1.8.3 
296 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
297  
298 Correct application level test issue causing timing problems 
299 during jenkins verification testing at command and merge 
300  
301 Handle the NNG connection shutdown status which may now be 
302 generated when a connection throug a proxy is reset. 
303  
304  
305 2019 September 25; version 1.8.2 
306 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
307  
308 Correct bug in rmr_torcv_msg() when timeout set to zero (0). 
309  
310  
311 2019 September 19; version 1.8.1 
312 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
313  
314 Correct missing constant for wrappers. 
315  
316  
317 2019 September 19; version 1.8.0 
318 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
319  
320 New message types added: RAN_CONNECTED, RAN_RESTARTED, 
321 RAN_RECONFIGURED 
322  
323  
324 2019 September 17; version 1.7.0 
325 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
326  
327 Initial connection mode now defaults to asynchronous. Set 
328 RMR_ASYNC_CONN=0 in the environment before rmr_init() is 
329 invoked to revert to synchronous first TCP connections. 
330 (Recovery connection attempts have always been asynchronous). 
331  
332  
333 2019 September 3; version 1.6.0 
334 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
335  
336 Fix bug in the rmr_rts_msg() function. If a return to sender 
337 message failed, the source IP address was not correctly 
338 adjusted and could cause the message to be "reflected" back 
339 to the sender on a retry. 
340  
341 Added the ability to set the source "ID" via an environment 
342 var (RMR_SRC_ID). When present in the environment, the string 
343 will be placed in to the message header as the source and 
344 thus be used by an application calling rmr_rts_smg() to 
345 return a response to the sender. If this environment variable 
346 is not present, the host name (original behaviour) is used. 
347  
348  
349 2019 August 26; version 1.4.0 
350 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
351  
352 New message types were added. 
353  
354  
355 2019 August 16; version 1.3.0 
356 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
357  
358 New mesage types added. 
359  
360  
361 2019 August 13; version 1.2.0 (API change, non-breaking) 
362 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
363  
364 The function rmr_get_xact() was added to proide a convenient 
365 way to extract the transaction field from a message. 
366  
367  
368 2019 August 8; version 1.1.0 (API change) 
369 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
370  
371 This change should be backward compatable/non-breaking A new 
372 field has been added to the message buffer (rmr_mbuf_t). This 
373 field (tp_state) is used to communicate the errno value that 
374 the transport mechanism might set during send and/or receive 
375 operations. C programmes should continue to use errno 
376 directly, but in some environments wrappers may not be able 
377 to access errno and this provides the value to them. See the 
378 rmr_alloc_msg manual page for more details. 
379  
380  
381 2019 August 6; version 1.0.45 (build changes) 
382 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
383  
384 Support for the Nanomsg transport library has been dropped. 
385 The library librmr.* will no longer be included in packages. 
386  
387 Packages will install RMR libraries into the system preferred 
388 target directory. On some systems this is /usr/local/lib and 
389 on others it is /usr/local/lib64. The diretory is determined 
390 by the sytem on which the package is built and NOT by the 
391 system installing the package, so it's possible that the RMR 
392 libraries end up in a strange location if the .deb or .rpm 
393 file was generated on a Linux flavour that has a different 
394 preference than the one where the package is installed. 
395  
396  
397 2019 August 6; version 1.0.44 (API change) 
398 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
399  
400 Added a new message type constant. 
401  
402  
403 2019 July 15; Version 1.0.39 (bug fix) 
404 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
405  
406 Prevent unnecessary usleep in retry loop. 
407  
408  
409 2019 July 12; Version 1.0.38 (API change) 
410 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
411  
412 Added new message types to RIC_message_types.h. 
413  
414  
415 2019 July 11; Version 1.0.37 
416 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
417  
418  
419 librmr and librmr_nng - Add message buffer API function 
420 rmr_trace_ref() (see rmr_trace_ref.3 manual page in dev 
421 package). 
422  
423  
424 Wrapper Changes 
425 -------------------------------------------------------------------------------------------- 
426  
427  
428 2020 February 29; Version 2.4.0 
429 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
430  
431 Add consolidated testing under CMake Add support binary for 
432 health check (SI95 only) 
433  
434  
435 2020 February 28; Version 2.3.6 
436 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
437  
438 Fix bug in Rt. Mgr comm which prevented table ID from being 
439 sent on ack message (RIC-232).