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