Uh oh!
There was an error while loading. Please reload this page.
Add int64in/out record support - #161
Conversation
Unit Test Results 8 files ± 0 8 suites ±0 10m 12s ⏱️ +18s Results for commit d38df9b. ± Comparison against base commit 4bbc933. This pull request removes 14 and adds 27 tests. Note that renamed tests count towards both.♻️ This comment has been updated with latest results. |
coretl
commented
Jun 6, 2024
|
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
It is necessary as ChannelAccess does not support int64 natively, instead transferring it using a double. This means the value returned from caget is actually a float, which is inconvenient. Fortunately p4p (using PVAccess) does support int64! I deleted some test cases as they were really testing the behaviour of caget/caput, and not pythonSoftIoc itself.
e5fa971 to
d38df9bCompareAlexanderWells-diamond
commented
Jun 7, 2024
Requested changes have been made. Tests are failing due to #158 still waiting for upstream dependencies for Python 3.12. |
Add support for the int64in and int64out record types.
There's two TODOs and some test failures that needs discussion:
DBR_*types we use come fromepicscorelibs, however its latest version does not define the (new)DBR_INT64andDBR_UINT64types. Is it worth trying to get a PR through that module that adds these codes before merging this?cagetnot being able to transport an int64, instead transporting it as a float. Should I special-case these tests to accept this, or is there a better mechanism to force what we want? I see thatcagetdoes NOT claim to supportdatatype=DBR_INT64.Various reference materials:
Changelog for introduction of the records: https://github.com/epics-base/epics-base/blob/7.0/documentation/RELEASE_NOTES.md#ioc-database-support-for-64-bit-integers
EPICS header file that defines both DBR_ and DBF_ codes: https://github.com/epics-base/epics-base/blob/7.0/modules/database/src/ioc/dbStatic/dbFldTypes.h
Closes#160Closes#118