From f5cd5553831d96ed86d1cedf4b61a1e698a1200d Mon Sep 17 00:00:00 2001 From: Andrew Johnson Date: Mon, 8 Jan 2018 16:53:11 -0600 Subject: [PATCH] Describe recent 3.16-only fixes in Release Notes Preparing for Base-3.16.2 at some point. --- documentation/RELEASE_NOTES.html | 61 ++++++++++++++++++++++++++++++-- 1 file changed, 59 insertions(+), 2 deletions(-) diff --git a/documentation/RELEASE_NOTES.html b/documentation/RELEASE_NOTES.html index 3a3f0d3be..f5936bcc2 100644 --- a/documentation/RELEASE_NOTES.html +++ b/documentation/RELEASE_NOTES.html @@ -3,11 +3,11 @@ - EPICS Base R3.16.1 Release Notes + EPICS Base R3.16.2 Release Notes -

EPICS Base Release 3.16.1

+

EPICS Base Release 3.16.2

+

Restore use of ledlib for VxWorks command editing

+ +

The epicsReadline refactoring work described below unfortunately disabled the +VxWorks implementation of the osdReadline.c API that uses ledlib for command +editing and history. This functionality has now been restored, see Launchpad +bug #1741578.

+ +

Constant link types

+ +

Constant links can now hold 64-bit integer values, either as scalars or +arrays. Only base 10 is supported by the JSON parser though, the JSON standard +doesn't allow for hexadecimal numbers.

+ +

Upgraded the YAJL JSON Library

+ +

The third-party YAJL library that has been included in libCom for several +years has been upgraded to version 2.1.0 and several bugs fixed. This has an +updated API, requiring any code that uses it to parse its own JSON files to be +modified to match. The changes are mainly that it uses size_t instead +unsigned int for string lengths, but it also uses long long +instead of long for JSON integer values, which was the main motivation +for the upgrade.

+ +

The self-tests that YAJL comes with have been imported and are now run as an +EPICS Unit Test program, and the JSON syntax accepted by the parser was extended +to permit trailing commas in both arrays and maps. The difference between the +old and new YAJL APIs can be detected at compile time by looking for the macro +EPICS_YAJL_VERSION which is defined in the yajl_common.h header file +along with a brief description of the API changes.

+ +

Timestamp support for the calc link type

+ +

A new optional parameter can be given when specifying a calc JSON link. The +time parameter is a string containing a single letter A..L +that selects one of the input links to be used for the timestamp of calculation +if requested. The timestamp will be fetched atomically with the value from the +chosen input link (providing that input link type supports the readLocked() +method).

+ +

Silence errors from puts to constant link types

+ +

A soft channel output record with the OUT link unset uses the CONSTANT link +type. The new link type code was causing some soft channel device supports to +return an error status from the write method of that link type, which would +cause a ca_put() operation to such a record to generate an exception. This has +been silenced by giving the constant link types a dummy putValue method. A new +test program has been added to prevent regressions of this behaviour.

+ +

RSRV expanding large buffer causes crash

+ +

In the 3.16.1 release a crash can occur in the IOC's RSRV server when a large +array is made even larger; the previous array buffer was not being released +correctly. See Launchpad +bug +#1706703.

+ +

Changes made between 3.16.0.1 and 3.16.1

IOC Database Support for 64-bit integers