diff --git a/.github/workflows/ci-scripts-build.yml b/.github/workflows/ci-scripts-build.yml index e8dd9c85b..65384d23b 100644 --- a/.github/workflows/ci-scripts-build.yml +++ b/.github/workflows/ci-scripts-build.yml @@ -29,6 +29,7 @@ on: - '.gitattributes' - '**/*.html' - '**/*.md' + workflow_dispatch: env: SETUP_PATH: .ci-local:.ci diff --git a/configure/CONFIG_BASE_VERSION b/configure/CONFIG_BASE_VERSION index 12120cddb..7972433a1 100644 --- a/configure/CONFIG_BASE_VERSION +++ b/configure/CONFIG_BASE_VERSION @@ -48,7 +48,7 @@ EPICS_VERSION = 7 EPICS_REVISION = 0 # EPICS_MODIFICATION must be a number >=0 and <256 -EPICS_MODIFICATION = 7 +EPICS_MODIFICATION = 8 # EPICS_PATCH_LEVEL must be a number (win32 resource file requirement) # Not included in the official EPICS version number if zero diff --git a/configure/CONFIG_CA_VERSION b/configure/CONFIG_CA_VERSION index 1fe4f1c25..2cff78816 100644 --- a/configure/CONFIG_CA_VERSION +++ b/configure/CONFIG_CA_VERSION @@ -2,7 +2,7 @@ EPICS_CA_MAJOR_VERSION = 4 EPICS_CA_MINOR_VERSION = 14 -EPICS_CA_MAINTENANCE_VERSION = 3 +EPICS_CA_MAINTENANCE_VERSION = 4 # Development flag, set to zero for release versions diff --git a/configure/CONFIG_DATABASE_VERSION b/configure/CONFIG_DATABASE_VERSION index 8b4002ae6..8815d2d1e 100644 --- a/configure/CONFIG_DATABASE_VERSION +++ b/configure/CONFIG_DATABASE_VERSION @@ -1,7 +1,7 @@ # Version number for the database APIs and shared library EPICS_DATABASE_MAJOR_VERSION = 3 -EPICS_DATABASE_MINOR_VERSION = 22 +EPICS_DATABASE_MINOR_VERSION = 23 EPICS_DATABASE_MAINTENANCE_VERSION = 1 # Development flag, set to zero for release versions diff --git a/configure/CONFIG_LIBCOM_VERSION b/configure/CONFIG_LIBCOM_VERSION index 898df2c67..4aab82a17 100644 --- a/configure/CONFIG_LIBCOM_VERSION +++ b/configure/CONFIG_LIBCOM_VERSION @@ -1,7 +1,7 @@ # Version number for the libcom APIs and shared library EPICS_LIBCOM_MAJOR_VERSION = 3 -EPICS_LIBCOM_MINOR_VERSION = 22 +EPICS_LIBCOM_MINOR_VERSION = 23 EPICS_LIBCOM_MAINTENANCE_VERSION = 1 # Development flag, set to zero for release versions diff --git a/configure/RULES_BUILD b/configure/RULES_BUILD index d49ea0e84..f4b2e9229 100644 --- a/configure/RULES_BUILD +++ b/configure/RULES_BUILD @@ -552,11 +552,11 @@ endif # LOADABLE_SHRLIB_SUFFIX ifneq ($(INSTALL_CONFIGS),) $(INSTALL_CONFIG)/%: % $(ECHO) "Installing config file $@" - @$(INSTALL) -d -m $(INSTALL_PERMISSIONS) $< $(@D) + @$(INSTALL) -d -m $(INSTALL_PERMISSIONS) $(abspath $< $(@D)) $(INSTALL_CONFIG)/%: ../% $(ECHO) "Installing config file $@" - @$(INSTALL) -d -m $(INSTALL_PERMISSIONS) $< $(@D) + @$(INSTALL) -d -m $(INSTALL_PERMISSIONS) $(abspath $< $(@D)) endif $(INSTALL_INCLUDE)/%: $(COMMON_DIR)/% diff --git a/documentation/RELEASE_NOTES.md b/documentation/RELEASE_NOTES.md index 862369125..ae98cae5a 100644 --- a/documentation/RELEASE_NOTES.md +++ b/documentation/RELEASE_NOTES.md @@ -20,7 +20,62 @@ should also be read to understand what has changed since earlier releases: **This version of EPICS has not been released yet.** -## Changes made on the 7.0 branch since 7.0.7 +## Changes made on the 7.0 branch since 7.0.8 + + +----- + +## EPICS Release 7.0.8 + +### bi "Raw Soft Channel" use MASK + +If MASK is non-zero, The raw device support will now apply MASK to the +value read into RVAL. +eg. allows extraction of a bit from an input integer. + +``` +record(longin, "integer") { + field(VAL, "0xff") +} +record(bi, "bit1") { + field(DESC, "extract bit 1") + field(DTYP, "Raw Soft Channel") + field(INP , "integer") + field(MASK, "0x2") + field(ZNAM, "Clear") + field(ONAM, "Set") +} +``` + +### ANSI escapes in stderr + +ANSI escape charactor sequences may now be printed to the stderr stream. +These escapes will appear in logs captured from that stream. +Tools which parse and/or render these logs may need to be adjusted to +either strip out the escapes, or to translate them into markup. +(see [ansi2html](https://pypi.org/project/ansi2html/) for example) + +### Allow explicit append with `dbRecordsOnceOnly!=0` + +Previously setting `dbRecordsOnceOnly!=0` prevented any further changes to a record via a .db file. eg. + +``` +record(ai, "myrec") {} +``` + +`dbRecordsOnceOnly!=0` previously disallowed appending fields with either form: + +``` +record("*", "myrec") {} # error +record(ai, "myrec") {} # error +``` + +Beginning with this release, `dbRecordsOnceOnly!=0` allows appending when explicitly intended (when record type is `"*"`). + +``` +record("*", "myrec") {} # allowed +record(ai, "myrec") {} # error +``` ### PROC field changed to ASL0 diff --git a/documentation/ReleaseChecklist.html b/documentation/ReleaseChecklist.html index ac65fef3b..0db98a818 100644 --- a/documentation/ReleaseChecklist.html +++ b/documentation/ReleaseChecklist.html @@ -48,14 +48,14 @@ everything that has to be done since it's so easy to miss steps.
The following roles are used below: