pvaPy
pvaPy copied to clipboard
Possibility of supporting epicscorelibs for PyPI uploaded wheels
We're in the process of writing Ophyd.v2: https://github.com/bluesky/ophyd/pull/1078
The main aims are:
- Write Devices using asyncio logic
- Allow use of both CA and PVA in the same process
- Allow use of Ophyd.v1 and Ophyd.v2 in the same process
This gives me a bit of an issue. For asyncio compatible CA, I use aioca, which loads the libCom provided by epicscorelibs using ctypes. I can make the pyepics used by Ophyd.v1 use the same libCom with an environment variable. I can also use p4p (which is asyncio compatible) as it is compiled against epicscorelibs, but I can't use pvaPy because it bundles and compiles against its own libCom and friends. I can run pvaPy in a threadpool to make it asyncio compatible, although if you have plans to support asyncio natively that would be even better.
Would it be possible to make pvaPy compile against epicscorelibs when uploading to PyPI? Happy to have a zoom on this topic if this is helpful.