Changes ======= 2.3.7 ----- - Replaced deprecated `distutils` package. 2.3.6 ----- - Corrected Windows pathname accidently resulting in illegal escapes. - Replaced f-strings, to restore Python 3.5 compatibility. 2.3.5 ----- - Added `requires` attribute for rmi_properties. - Added `shell_folder(...)` function. 2.3.4 ----- - Fix Enerplot 1.0.0 legacy communication issue. 2.3.3 ----- - Optimized communication memory buffer usage. 2.3.2 ----- - Python server kept awake one additional task cycle, to improve responsiveness. 2.3.1 ----- - Removed Python 3.9 specific typehint syntax from `LibraryZipper`. 2.3.0 ----- - Added `mhi.common.zipper.LibraryZipper` to support updating embedded libraries with versions downloaded from PyPI. 2.2.1 ----- - Added type-hints for mypy type checking. - Allow `Remotable` objects to override their persistent id module name. - Clear the linecache after each program execution, to avoid tracebacks from showing old file contents. 2.2.0 ----- - Renamed from `mhi.*.common` namespace submodules to `mhi.common`. 2.1.3 ----- - Input to BooleanCodec restricted to booleans, integers `0` and `1`, and the strings `"true"`, `"false"`, `"0"`, `"1"`, `"yes"`, `"no"`. Additionally, emits a warning if the input is not a boolean. - Update rmi_property to work with newer versions of Sphinx 2.1.2 ----- - Added ``repr`` to MapCodec 2.1.1 ----- 2.1.0 ----- - Added ``minimum``, ``maximum``, ``allow_alpha`` and ``allow_beta`` to ``find_exe``. - Added user configuration readers 2.0.1 ----- - Added Application.minimum_version(version) and Application.requires(version) methods - Added @requires(version) and @deprecated decorators - Increased socket throughput (disable Nagling, use MSG_WAITALL flag with recv())