Refactor definition of method restype & argtypes
[ric-plt/xapp-frame-py.git] / docs / release-notes.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. SPDX-License-Identifier: CC-BY-4.0
3 .. Copyright (C) 2020 AT&T Intellectual Property
4
5 Release Notes
6 =============
7
8 All notable changes to this project will be documented in this file.
9
10 The format is based on `Keep a Changelog <http://keepachangelog.com/>`__
11 and this project adheres to `Semantic Versioning <http://semver.org/>`__.
12
13 .. contents::
14    :depth: 3
15    :local:
16
17 [1.0.1] - 2020-04-10
18 --------------------
19
20 * Publish API documentation using Sphinx autodoc, which required
21   changes so Sphinx can run when the RMR .so file is not available,
22   such as during a ReadTheDocs build.
23 * Create new subpackage rmr/rmrclib with the C library loaded via
24   ctypes.
25 * Extend sphinx configuration to mock the new rmrclib subpackage
26 * Add method to get constants from RMR library and detect mock
27   objects to work around a bug in Sphinx 3.0.0.
28 * Split test files into test_rmr and test_rmrclib.
29 * Add function to define argtype and restype values for library functions
30 * Configure intersphinx link for RMR man pages at ReadTheDocs.io
31
32
33 [1.0.0] - 4/6/2020
34 ------------------
35
36 * Python rmr has been moved into this repo. The module name has NOT
37   changed in order to make the transition for repos very easy. The
38   only transition needed should be prefixing rmr with ricxappframe in
39   import statements, and to include this rather than rmr in setup.
40
41
42 [0.7.0] - 4/2/2020
43 ------------------
44
45 * RMRXapps by default now implement the rmr healthcheck probe;
46   users can also override it with a more complex handler if they
47   wish
48 * Fix a bug in the unit tests where a payload mismatch wouldn't
49   actually fail the test (would now)
50
51
52 [0.6.0] - 3/23/2020
53 -------------------
54
55 * Switch to SI95 for rmr
56
57
58
59 [0.5.0] - 3/18/2020
60 -------------------
61
62 * All xapps (via the base class) now have a logger attribute that can
63   be invoked to provide mdc logging. It is a passthrough to the RIC
64   mdc logger for python (untouched, no value in an API on top at the
65   current time).
66
67
68 [0.4.1] - 3/17/2020
69 -------------------
70
71 * Switch tox to use py38
72 * switch to latest builders
73
74
75 [0.4.0] - 3/13/2020
76 -------------------
77
78 * Minor breaking change; switches the default behavior RE
79   threading for RMRXapps. The default is not to return execution,
80   but the caller (in `run`) can choose to loop in a thread.
81 * Add Dockerized examples
82
83
84 [0.3.0] - 3/10/2020
85 -------------------
86
87 * Large change to the "feel" of this framework: rather than subclass
88   instantiation, xapps now use initialization and registration
89   functions to register handlers
90 * rmr xapps can now register handlers for specific message types (and
91   they must prodive a default callback); if the user does this then
92   "message to function routing" is now handled by the framework itself
93 * RMRXapp now runs the polling loop in a thread, and returns execution
94   back to the caller. The user is then free to loop, or do nothing,
95   and call stop() when they want.
96 * Raises tox coverage minimum to 70 from 50 (currently at 86)
97
98 [0.2.0] - 3/3/2020
99 ------------------
100
101 * now allows for RMRXapps to call code before entering the infinite
102   loop
103 * stop is now called before throwing NotImplemented in the case where
104   the client fails to provide a must have callback; this ensures there
105   is no dangling rmr thread
106 * stop now calls rmr_close to correctly free up any port(s)
107 * (breaking) renames `loop` to `entrypoint` since the function does
108   not have to contain a loop (though it most likely does)
109 * Changes wording around the two types of xapps (docs only)
110 * Uses a new version of rmr python that crashes when the rmr mrc fails
111   to init, which prevents an xapp trying to use an unusable rmr
112 * more unit test code coverage
113 * Adds more fields to setup like long_desc and classifiers so the pypi
114   page looks nicer
115 * Removes a bad release file (will be added back in subseq. commit)
116
117 [0.1.0] - 2/27/2020
118 -------------------
119
120 * Initial commit