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