Raise an exception on bad buffer allocations
[ric-plt/lib/rmr.git] / src / bindings / rmr-python / docs / Changelog.rst
1 Change Log
2 ==========
3
4 All notable changes to this project will be documented in this file.
5
6 The format is based on `Keep a Changelog <http://keepachangelog.com/>`__
7 and this project adheres to `Semantic
8 Versioning <http://semver.org/>`__.
9
10 [0.13.5] - 10/23/2019
11 --------------------
12
13 ::
14
15     * Add an exceptions module and raise a proper exception when an allocated buffer has a NULL pointer. Likely due to a bad rmr context.
16
17 [0.13.4] - 10/21/2019
18 --------------------
19
20 ::
21
22     * Correct cause of nil pointer exception in message summary.
23
24
25 [0.13.3] - 10/10/2019
26 --------------------
27
28 ::
29
30     * Add missing unit test for receive all.
31     * Correct bug in summary function.
32
33 [0.13.2] - 10/2/2019
34 --------------------
35
36 ::
37
38     * Fix a constant name (RMRFL_MT_CALL)
39
40 [0.13.1] - 10/1/2019
41 --------------------
42
43 ::
44
45     * Correct unit test bug in rmr-python. With RMR 1.8.x connections are forced to be asynch by default to prevent kubernetes blocking the attempt for minutes. However, the asynch nature of connections makes unit tests concerned with the ability to send and receive messages non-deterministic as some connections are established before the first message is sent, and others are not. This change ensures that unit tests establish connections in a synchronous manner which ensures that the first send will not be rejected by NNG due to a pending connection.
46
47 [0.13.0] - 9/27/2019
48 --------------------
49
50 ::
51    * Add a helpers module to provide extensions and helper functions such as receive all queued messages.
52    * Enhance unit test to check only for RMR constants which are needed.
53    * Correct unprintable characters in documentation.
54
55
56 [0.12.0] - 8/23/2019
57 --------------------
58
59 ::
60    * Add final unit tests for rmr.py; unit test coverage for rmr python is about 95%. The remaining functions are dangerous to unit test directly, e.g., rcv which may block forever
61    * Fix a bug where meid was being intepreted as bytes (but then cast into a string); the correct interpretation is a string, so now it will truncate after a null byte.
62    * Removes access to the raw function rmr_get_meid(ptr, dest) in favor of just rmr_get_meid(ptr). Also get_meid is now rmr_get_meid since it wasn't consistent with the naming.
63
64
65 [0.11.0] - 8/21/2019
66 --------------------
67
68 ::
69    * Overhaul unit tests to remove mocking from the rmr tests, which gives much greater confidence in changing the code. More is still needed however, specifically test sends and test receives.
70    * Adds an alias rmr_set_meid to rmr_bytes2meid for naming consistency.
71    * Found a possible inconsistency/bug that requires further investigation later; setting meid takes bytes, but getting it returns a string.
72
73
74 [0.10.8] - 8/20/2019
75 --------------------
76
77 ::
78    * Fix invocation of _rmr_alloc function
79
80
81 [0.10.7] - 8/14/2019
82 --------------------
83
84 ::
85    * Finish sphinx documentation
86    * Make public functions that wrap ctype declarions, allowing for docstrings
87    * Fix a bug where rmr_set_stimeout was pointing to the wrong function
88
89
90 [0.10.6] - 8/13/2019
91 --------------------
92
93 ::
94    * Moves Changelog.md to this file, to be consistent with rst-ification
95    * Sets up a Dockerfile to generate documentation for rmr-python using sphinx
96
97
98 [0.10.5] - 8/13/2019
99 --------------------
100
101 ::
102
103    * Make the PYPI page for rmr look nicer.
104
105 .. _section-1:
106
107 [0.10.4] - 8/08/2019
108 --------------------
109
110 ::
111
112    * Fix underlying problem getting errno from some environments; now references new RMR message field to get errno value.
113    * Add /usr/local/lib64 to tox environment variable to support systems where libraries natually install in lib64 rather than lib.
114
115 .. _section-2:
116
117 [0.10.3] - 7/31/2019
118 --------------------
119
120 ::
121
122    * (Correctly) Include license here per Jira RICPLT-1855
123
124 .. _section-3:
125
126 [0.10.2] - 7/31/2019
127 --------------------
128
129 ::
130
131    * Include license here per Jira RICPLT-1855
132
133 .. _section-4:
134
135 [0.10.0] - 5/15/2019
136 --------------------
137
138 ::
139
140    * Fix a bug in rmr mock that prevented it for being used for rmr_rcv (was only usable for rmr_torcv)
141    * Add more unit tests, esp for message summary
142    * Remove meid truncation in the case where a nil is present mid string
143    * Change the defaul mock of meid and get_src to something more useful
144
145 .. _section-5:
146
147 [0.9.0] - 5/13/2019
148 -------------------
149
150 ::
151
152    * Add a new module for mocking out rmr-python, useful for other packages that depend on rmr-python
153
154 .. _section-6:
155
156 [0.8.4] - 5/10/2019
157 -------------------
158
159 ::
160
161    * Add some unit tests; more to come
162
163 .. _section-7:
164
165 [0.8.3] - 5/8/2019
166 ------------------
167
168 ::
169
170    * Better loop indexing in meid string handling
171
172 .. _section-8:
173
174 [0.8.2] - 5/8/2019
175 ------------------
176
177 ::
178
179    * Fix examples bug
180    * add liscneses for LF push
181
182 .. _section-9:
183
184 [0.8.1] - 5/7/2019
185 ------------------
186
187 ::
188
189    * Better andling of meid in message summary
190
191 .. _section-10:
192
193 [0.8.0] - 5/7/2019
194 ------------------
195
196 ::
197
198    * Refactor some code to be more functional
199    * Put back RMR_MAX_RCV_BYTES as a constant
200    * Add tox.ini, although right now it only LINTs
201
202 .. _section-11:
203
204 [0.7.0] - 5/6/2019
205 ------------------
206
207 ::
208
209    * Add constant fetching from RMr library
210
211 .. _section-12:
212
213 [0.6.0] - 5/6/2019
214 ------------------
215
216 ::
217
218    * Add a new field to rmr_mbuf_t: sub_id
219    * Fix prior commits lint-ailing python style
220
221 .. _section-13:
222
223 [0.5.0] - 5/3/2019
224 ------------------
225
226 ::
227
228    * Add errno access via new function: rmr.errno()
229    * Add new functions to access new RMr header fields: get_src, get_meid, rmr_bytes2meid
230    * Add new RMr constants for error states
231
232 .. _section-14:
233
234 [0.4.1] - 4/8/2019
235 ------------------
236
237 ::
238
239    * Fix a non-ascii encoding issue
240
241 .. _section-15:
242
243 [0.4.0] - 3/28/2019
244 -------------------
245
246 ::
247
248    * Greatly imroved test sender/receiver
249    * Three new functions implemented (rmr_close, rmr_set_stimeout, rmr_payload_size)
250
251 .. _section-16:
252
253 [0.3.0] - 3/26/2019
254 -------------------
255
256 ::
257
258    * Support a new receive function that (hurray!) has a timeout
259
260 .. _section-17:
261
262 [0.2.1] - 3/25/2019
263 -------------------
264
265 ::
266
267    * Add two new MR states
268
269 .. _section-18:
270
271 [0.2.0] - 3/25/2019
272 -------------------
273
274 ::
275
276    * Switch to NNG from nanomessage
277
278 .. _section-19:
279
280 [0.1.0] - 3/14/2019
281 -------------------
282
283 ::
284
285    * Initial Creation