3abf384ec13d013e59d0b4912b8f1abadd2d0aa1
[ric-plt/lib/rmr.git] / CHANGES_CORE.txt
1 # this file should contain ONLY the changes related to the
2 # core RMR code and doc.  Other change files exist for other
3 # things.
4
5 # API and build change  and fix summaries. Doc correctsions
6 # and/or changes are not mentioned here; see the commit messages.
7
8 2020 April 10; version 3.7.2
9         Fix bug related to static route table only mode (RIC-331)
10
11 2020 April 9; version 3.7.1
12         The max length restriction for receiving messages when using SI95 has
13         been removed.  The length supplied during initialisation is used as
14         the "normal maximum" and default buffer allocation size, but messages
15         arriving which are larger are accepted. (RIC-309)
16
17 2020 April 7; version 3.7.0
18         The health check support programme was renamed to rmr_probe (RIC-308).
19
20 2020 April 6; version 3.6.6
21         Correct bug in SI95 address conversion module (RIC-327)
22         Correct bug in SI initialisation module
23
24 2020 April 2; version 3.6.5
25         Correct potential nil pointer use when examining interfaces for
26         use as a listen target (RIC-307)
27
28 2020 April 1; version 3.6.4
29         Correct potential nil pointer use in the NNG interface (RIC-303)
30         Correct issue preventing CI build without a container
31
32 2020 March 30; version 3.6.3
33         Correct the max receive message size constant in rmr.h (RIC-301)
34
35 2020 March 23; version 3.6.2
36         Fix message initialisation bug when pulling a message from
37         the pool (RIC-295)
38
39 2020 March 19; version 3.6.1
40         Fix problem with RPM package install
41
42 2020 March 18; version 3.6.0
43         Add message types to support traffic steering
44
45 2020 March 16; version 3.5.2
46         Correct bug in the meid table parser that prevented the
47         ack/nack of meid tables (RIC-273)
48
49 2020 March 10; version 3.5.1
50         Add missing health check message types.
51
52 2020 March 9; version 3.5.0
53         Added new wormhole send function: rmr_wh_call().
54
55 2020 March 6; version 3.4.0
56         Add new wormhole state function: rmr_wh_state().
57
58 2020 March 5; Version 3.3.1
59         Correct several "bugs" identified by automatic code analysis.
60
61 2020 March 4; Version 3.3.0
62         Add SI95 based unit testing
63         Health check support binary added (reason for minor bump)
64
65 2020 February 26; version 3.2.5
66         Fix source address bug in SI95 receive/send funcitons.
67         Fix threading issues involving session disconnection in SI95
68         Remove unused SI95 status variable.
69
70 2020 February 24; version 3.2.4
71         Fix meid bug (RIC-220) causing core dump.
72
73 2020 February 21; version 3.2.3
74         Add meid routing support to the SI95 interface.
75
76 2020 February 20; version 3.2.2
77         Fix receive thread related core dump (ring early unlock).
78
79 2020 February 19; version 3.2.1
80         Added missing message types (E2-Setup)
81
82 2020 February 18; version 3.2.0
83         Added support for new Route Manager and it's ability to accept
84         a request for table update.
85
86 2020 February 14; version 3.1.3
87         Fix bug in SIsend which was causing a core dump in some cases
88         where the application attempted to send on a connection that
89         had disconnected. (RIC-207).
90
91 2020 February 6; version 3.1.2
92         Fix disconnection detection bug in interface to SI95.
93
94 2020 January 31; verison 3.1.1
95         Allow route table thread logging to be completely disabled
96         when logging is turned off.
97
98 2020 January 26; verison 3.1.0
99         First step to allowing the user programme to control messages
100         written to standard error. Introduces the rmr_set_vlevel()
101         function, and related environment variable.
102
103 2020 January 24; verison 3.0.5
104         Fix bug in SI95 with receive buffer allocation.
105
106 2020 January 23; verison 3.0.4
107         Fix bug in SI95 causing excessive CPU usage on poll.
108
109 2020 January 22; verison 3.0.3
110         Enable thread support for multiple receive threads.
111
112 2020 January 21; verison 3.0.2
113         Fix bug in SI95 (missing reallocate payload function).
114
115 2020 January 20; verison 3.0.1
116         Enable support for dynamic route table updates via RMR session.
117
118 2020 January 16; version 3.0.0
119         Introduce support for SI95 transport library to replace NNG.
120         (RMR library versions will use leading odd numbers to avoid tag collisions
121          with the wrapper tags which will use even numbers.)
122
123 2019 December 9; version 1.13.1
124         Correct documentation and missing rel-notes update for RTD.
125
126 2019 December 6; version 1.13.0
127         Add ability to route messages based on the MEID in a message combined
128         with the message type/subscription-ID.
129
130 2019 November 14; version 1.11.1 (Amber)
131         Fix bug in payload reallocation function; correct length of payload
132         was not always copied.
133
134 2019 November 13; version 1.12.1
135         New message type constants added to support A1.
136
137 2019 November 4; version 1.11.0 (Amber)
138         Version bump to move away from the 1.10.* to distinguish between
139         release A and the trial.
140
141 2019 November 7; version 1.12.0
142         Version cut to support continued development for next release
143         preserving the 1.11.* versions for release 1 (Amber) and
144         related fixes.
145
146 2019 October 31; version 1.10.2
147         Provide the means to increase the payload size of a received message
148         without losing the data needed to use the rmr_rts_msg() funciton.
149
150 2019 October 21; version 1.10.1
151         Fix to prevent null message buffer from being returned by the timeout
152         receive function if the function is passed one to reuse.
153
154 2019 October 21; version 1.10.1
155         Add periodic dump of send count info to stderr.
156
157 2019 September 27; version 1.9.0
158         Python bindings added receive all queued function and corrected a unit test
159
160 2019 September 25; version 1.8.3
161         Correct application level test issue causing timing problems during
162         jenkins verification testing at command and merge
163
164         Handle the NNG connection shutdown status which may now be
165         generated when a connection throug a proxy is reset.
166
167 2019 September 25; version 1.8.2
168         Correct bug in rmr_torcv_msg() when timeout set to zero (0).
169
170 2019 September 19; version 1.8.1
171         Correct missing constant for wrappers.
172
173 2019 September 19; version 1.8.0
174         New message types added:
175                 RAN_CONNECTED, RAN_RESTARTED, RAN_RECONFIGURED
176
177 2019 September 17; version 1.7.0
178         Initial connection mode now defaults to asynchronous. Set RMR_ASYNC_CONN=0
179         in the environment before rmr_init() is invoked to revert to
180         synchronous first TCP connections. (Recovery connection attempts
181         have always been asynchronous).
182
183 2019 September 3; version 1.6.0
184         Fix bug in the rmr_rts_msg() function. If a return to sender message
185         failed, the source IP address was not correctly adjusted and could
186         cause the message to be "reflected" back to the sender on a retry.
187
188         Added the ability to set the source "ID" via an environment var
189         (RMR_SRC_ID).  When present in the environment, the string will
190         be placed in to the message header as the source and thus be used
191         by an application calling rmr_rts_smg() to return a response to
192         the sender.  If this environment variable is not present, the host
193         name (original behaviour) is used.
194
195 2019 August 26; version 1.4.0
196         New message types were added.
197
198 2019 August 16; version 1.3.0
199         New mesage types added.
200
201 2019 August 13; version 1.2.0 (API change, non-breaking)
202         The function rmr_get_xact() was added to proide a convenient
203         way to extract the transaction field from a message.
204
205 2019 August 8; version 1.1.0 (API change)
206         This change should be backward compatable/non-breaking
207         A new field has been added to the message buffer (rmr_mbuf_t).
208         This field (tp_state) is used to communicate the errno value
209         that the transport mechanism might set during send and/or
210         receive operations.  C programmes should continue to use
211         errno directly, but in some environments wrappers may not be
212         able to access errno and this provides the value to them.
213         See the rmr_alloc_msg manual page for more details.
214
215 2019 August 6; version 1.0.45 (build changes)
216         Support for the Nanomsg transport library has been dropped.
217                 The library librmr.* will no longer be included in packages.
218
219         Packages will install RMR libraries into the system preferred
220                 target directory. On some systems this is /usr/local/lib
221                 and on others it is /usr/local/lib64.  The diretory is
222                 determined by the sytem on which the package is built and
223                 NOT by the system installing the package, so it's possible
224                 that the RMR libraries end up in a strange location if the
225                 .deb or .rpm file was generated on a Linux flavour that
226                 has a different preference than the one where the package
227                 is installed.
228
229 2019 August 6; version 1.0.44 (API change)
230         Added a new message type constant.
231
232 2019 July 15; Version 1.0.39 (bug fix)
233         Prevent unnecessary usleep in retry loop.
234
235 2019 July 12; Version 1.0.38 (API change)
236         Added new message types to RIC_message_types.h.
237
238 2019 July 11; Version 1.0.37
239
240         librmr and librmr_nng
241                 - Add message buffer API function rmr_trace_ref()
242                   (see rmr_trace_ref.3 manual page in dev package).
243