- Fix build on Linux/macOS when only shared epics libraries exist. Although epics base always builds the static libraries along with shared libraries on Linux/macOS, some epics base packges (conda/pypi) choose to exclude static libraries to reduce package size.
- Change :py
ca.create_context
optional argument to keyword argument. The new method signature is compatible with caffi. This change is backwards compatible. - Support Python limited API 3.11. It is not enabled by default.
- Fix :py
ca.put
and :pyca.get
to accept numpy scalar number as count argument via number protocol. - Remove deprecated function calls of PyEval_ThreadsInitialized and PyEval_InitThreads for Python 3.9+.
- Fix various places where conversion exceptions are not handled.
- Improve Python 3 compatibility according to PEP 384.
- Fix epicsPV defaults to wait for connection completion.
- Fix compilation error on Python 3.7.
- Fix compilation error on epics base > 3.14.
- Change to use buffer object instead of numpy/c api to create numpy array.
- Added class methods :py
CaChannel.CaChannel.add_exception_event
and :pyCaChannel.CaChannel.replace_printf_handler
. They are just thin wrapper over the low level functions :pyca.add_exception_event
and :pyca.replace_printf_handler
respectively.
- Change to link EPICS dynamic libraries if environment variable
EPICS_SHARED
is defined.
- Fix :py
ca.put
with non-ascii input string. - Change that it returns a :py
bytes
object from non-utf8 C string. It fails with an obscure exception message before. - Change TravisCI to use conda-forge/linux-anvil docker image, but give the defaults channel higher priority.
- Fix conda build on Linux by pinning conda-build to version 2.
- Allow count=0 in :py
ca.get
if callback is provided. - Dereference user supplied callbacks
- get/put callbacks after being called.
- event callback in :py
CaChannel.CaChannel.clear_event
.
- Rewrite low level :py
ca
module with the same API as in package caffi. - Added method :py
CaChannel.CaChannel.replace_access_rights_event
- Added method :py
CaChannel.CaChannel.change_connection_event
- Added
ca.ECA
,ca.DBF
,ca.DBR
,ca.ChannelState
to represent their C macrosca.ECA_XXX
,ca.DBF_XXX
,ca.DBR_XXX
,ca.cs_xxx
. For Python < 3.4, this requires module enum34. - Changed method :py
CaChannel.CaChannel.getw
to return string if req_type is DBR_STRING for a char waveform. - Configure continous integration/deployment on Travis/AppVeyor.
- Drop Python 2.4 and 2.5 support.
- Fix chid crash on 64bit windows
- Add epics libs for python 3.5 on windows
- All modules are compatible with Python 2.4+ including Python 3.
- conda build recipe bundle caRepeater program in the package
- Add often used 3rd party module, ca_util, epicsPV and epicsMotor
- Add Anaconda build recipe
- Remove dependency of readline from Com library
- Support Python 3