3b29e66b829e47b0deeeeffd780e2c4d72d003bd
[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
11 [1.0.0] - 10/24/2019
12 --------------------
13
14 ::
15
16     * It's been past due to bump this to 1.0.0 since people depend on it!
17     * Add the ability to set sbuf attributes in the same call that it is allocated
18     * (breaking) removes bytes2meid
19     * (breaking) rmr_set_meid now infers length
20     * (breaking) rmr_get_meid now returns bytes, to be symmetric with set_meid
21
22
23 [0.13.5] - 10/23/2019
24 --------------------
25
26 ::
27
28     * Add an exceptions module and raise a proper exception when an allocated buffer has a NULL pointer. Likely due to a bad rmr context.
29
30 [0.13.4] - 10/21/2019
31 --------------------
32
33 ::
34
35     * Correct cause of nil pointer exception in message summary.
36
37
38 [0.13.3] - 10/10/2019
39 --------------------
40
41 ::
42
43     * Add missing unit test for receive all.
44     * Correct bug in summary function.
45
46 [0.13.2] - 10/2/2019
47 --------------------
48
49 ::
50
51     * Fix a constant name (RMRFL_MT_CALL)
52
53 [0.13.1] - 10/1/2019
54 --------------------
55
56 ::
57
58     * 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.
59
60 [0.13.0] - 9/27/2019
61 --------------------
62
63 ::
64    * Add a helpers module to provide extensions and helper functions such as receive all queued messages.
65    * Enhance unit test to check only for RMR constants which are needed.
66    * Correct unprintable characters in documentation.
67
68
69 [0.12.0] - 8/23/2019
70 --------------------
71
72 ::
73    * 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
74    * 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.
75    * 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.
76
77
78 [0.11.0] - 8/21/2019
79 --------------------
80
81 ::
82    * 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.
83    * Adds an alias rmr_set_meid to rmr_bytes2meid for naming consistency.
84    * Found a possible inconsistency/bug that requires further investigation later; setting meid takes bytes, but getting it returns a string.
85
86
87 [0.10.8] - 8/20/2019
88 --------------------
89
90 ::
91    * Fix invocation of _rmr_alloc function
92
93
94 [0.10.7] - 8/14/2019
95 --------------------
96
97 ::
98    * Finish sphinx documentation
99    * Make public functions that wrap ctype declarions, allowing for docstrings
100    * Fix a bug where rmr_set_stimeout was pointing to the wrong function
101
102
103 [0.10.6] - 8/13/2019
104 --------------------
105
106 ::
107    * Moves Changelog.md to this file, to be consistent with rst-ification
108    * Sets up a Dockerfile to generate documentation for rmr-python using sphinx
109
110
111 [0.10.5] - 8/13/2019
112 --------------------
113
114 ::
115
116    * Make the PYPI page for rmr look nicer.
117
118 .. _section-1:
119
120 [0.10.4] - 8/08/2019
121 --------------------
122
123 ::
124
125    * Fix underlying problem getting errno from some environments; now references new RMR message field to get errno value.
126    * Add /usr/local/lib64 to tox environment variable to support systems where libraries natually install in lib64 rather than lib.
127
128 .. _section-2:
129
130 [0.10.3] - 7/31/2019
131 --------------------
132
133 ::
134
135    * (Correctly) Include license here per Jira RICPLT-1855
136
137 .. _section-3:
138
139 [0.10.2] - 7/31/2019
140 --------------------
141
142 ::
143
144    * Include license here per Jira RICPLT-1855
145
146 .. _section-4:
147
148 [0.10.0] - 5/15/2019
149 --------------------
150
151 ::
152
153    * Fix a bug in rmr mock that prevented it for being used for rmr_rcv (was only usable for rmr_torcv)
154    * Add more unit tests, esp for message summary
155    * Remove meid truncation in the case where a nil is present mid string
156    * Change the defaul mock of meid and get_src to something more useful
157
158 .. _section-5:
159
160 [0.9.0] - 5/13/2019
161 -------------------
162
163 ::
164
165    * Add a new module for mocking out rmr-python, useful for other packages that depend on rmr-python
166
167 .. _section-6:
168
169 [0.8.4] - 5/10/2019
170 -------------------
171
172 ::
173
174    * Add some unit tests; more to come
175
176 .. _section-7:
177
178 [0.8.3] - 5/8/2019
179 ------------------
180
181 ::
182
183    * Better loop indexing in meid string handling
184
185 .. _section-8:
186
187 [0.8.2] - 5/8/2019
188 ------------------
189
190 ::
191
192    * Fix examples bug
193    * add liscneses for LF push
194
195 .. _section-9:
196
197 [0.8.1] - 5/7/2019
198 ------------------
199
200 ::
201
202    * Better andling of meid in message summary
203
204 .. _section-10:
205
206 [0.8.0] - 5/7/2019
207 ------------------
208
209 ::
210
211    * Refactor some code to be more functional
212    * Put back RMR_MAX_RCV_BYTES as a constant
213    * Add tox.ini, although right now it only LINTs
214
215 .. _section-11:
216
217 [0.7.0] - 5/6/2019
218 ------------------
219
220 ::
221
222    * Add constant fetching from RMr library
223
224 .. _section-12:
225
226 [0.6.0] - 5/6/2019
227 ------------------
228
229 ::
230
231    * Add a new field to rmr_mbuf_t: sub_id
232    * Fix prior commits lint-ailing python style
233
234 .. _section-13:
235
236 [0.5.0] - 5/3/2019
237 ------------------
238
239 ::
240
241    * Add errno access via new function: rmr.errno()
242    * Add new functions to access new RMr header fields: get_src, get_meid, rmr_bytes2meid
243    * Add new RMr constants for error states
244
245 .. _section-14:
246
247 [0.4.1] - 4/8/2019
248 ------------------
249
250 ::
251
252    * Fix a non-ascii encoding issue
253
254 .. _section-15:
255
256 [0.4.0] - 3/28/2019
257 -------------------
258
259 ::
260
261    * Greatly imroved test sender/receiver
262    * Three new functions implemented (rmr_close, rmr_set_stimeout, rmr_payload_size)
263
264 .. _section-16:
265
266 [0.3.0] - 3/26/2019
267 -------------------
268
269 ::
270
271    * Support a new receive function that (hurray!) has a timeout
272
273 .. _section-17:
274
275 [0.2.1] - 3/25/2019
276 -------------------
277
278 ::
279
280    * Add two new MR states
281
282 .. _section-18:
283
284 [0.2.0] - 3/25/2019
285 -------------------
286
287 ::
288
289    * Switch to NNG from nanomessage
290
291 .. _section-19:
292
293 [0.1.0] - 3/14/2019
294 -------------------
295
296 ::
297
298    * Initial Creation