Commit Graph

184 Commits

Author SHA1 Message Date
Michael Davidsaver 9237bb4d95 try to ensure cleanupPy() is run early on shutdown.
Add in registrar happens early in startup, and
will be run near the end of shutdown.
Even if iocInit() isn't run.

Also use an initHook to add cleanupPy(), which
happens late in startup, and will be run early
on shutdown.  Though only if iocInit() is run.
2019-05-06 11:26:43 -07:00
Michael Davidsaver ae755cd069 increment to 1.1 2019-03-12 17:29:55 -07:00
Michael Davidsaver 1b95827718 Merge remote-tracking branch 'origin/devel'
* origin/devel:
  Python init: don't install sig handlers. Fix #5
  Fix pyIocApp's Makefile
  testing cleanup
  cleanup and inithook
  minor
  update doc
  Base 3.14
  py3
  travis-ci update
  test field access and dset
  start PDB unittest
  rework to separate out python module
  separate softIocPy build
  Makefile updates from p4p

# Conflicts:
#	devsupApp/src/dbapi.c
#	devsupApp/src/pydevsup.h
2019-03-12 17:18:05 -07:00
Bruno Martins 15dfe2aa92 Python init: don't install sig handlers. Fix #5
Py_InitializeEx(0)  tells the embedded interpreter to not install signal handlers. This fix is ignored by Python <3.7. See https://bugs.python.org/issue35233.
2019-03-12 14:00:08 -07:00
Bruno Martins 6e3c3d6aed Fix pyIocApp's Makefile
`PYDIR` was being set to the wrong value
2019-03-12 13:59:12 -07:00
Sebastian Marsching f18bdb7b56 Fix build on macOS.
This changeset consists of two changes:

The declaration of the pyInitLastState global variable is moved from
pydevsup.h to setup.c. This is needed to avoid an "duplicate symbols"
error when linking. As this variable is only used in setup.c anyway,
there is no downside in moving its declaration there.

The log example application is now only built on Linux. As it depends
on the inotify API, which is Linux-specific, it cannot be reasonably
built on other platforms. As it is not needed for the pyDevSup to work,
it is OK to built it without this application.
2019-02-25 08:37:52 -08:00
Daron Chabot 0d7e92ef80 MNT: py2/3 compatible dict methods 2019-02-24 07:29:06 -08:00
Bruno Martins 68c4c92e28 Debian: build for all supported python3 versions 2018-12-19 11:29:31 -08:00
Michael Davidsaver 93a4d05866 testing cleanup 2018-11-04 17:05:03 -08:00
Michael Davidsaver 574ca20bdb cleanup and inithook 2018-11-04 16:47:23 -08:00
Michael Davidsaver 6b8d7ff7c5 minor 2018-11-04 16:30:39 -08:00
Michael Davidsaver dcf81c3744 update doc 2018-11-04 16:26:46 -08:00
Michael Davidsaver 4b05477417 Base 3.14 2018-11-04 16:26:46 -08:00
Michael Davidsaver 2c34d9df52 py3 2018-11-04 15:42:34 -08:00
Michael Davidsaver 1abc792516 travis-ci update 2018-11-04 15:31:19 -08:00
Michael Davidsaver 11a93fce21 test field access and dset 2018-11-04 13:04:40 -08:00
Michael Davidsaver a3524c5aa0 start PDB unittest 2018-11-04 11:38:18 -08:00
Michael Davidsaver f428d2a4e4 rework to separate out python module
Remove the magic from the magic _db* modules.
Combine as one 'devsup._dbapi'.

libpyDevSup exists only to bootstrap python
interpreter in IOCs.
2018-11-03 13:33:36 -07:00
Michael Davidsaver 662b518338 separate softIocPy build 2018-11-02 17:12:31 -07:00
Michael Davidsaver 1d8c6ab7b5 Makefile updates from p4p 2018-11-02 16:47:57 -07:00
Philipp 62b4a046bc VAL asignment for waveforms 2018-10-31 22:13:27 +01:00
Philipp 54fabd3a9d Handle string waveforms 2018-10-31 21:23:33 +01:00
Michael Davidsaver 44e5bd98b9 add setTime to test IOC 2018-04-17 10:52:51 -07:00
Philipp Niedermayer 4269c69c23 Use datetime.timestamp()
Includes nanoseconds and is timezone independend
Available from python 3.3 (older versions will still use timetuple)
2018-04-17 10:50:51 -07:00
Philipp Niedermayer 2e51578ec8 Fixes #6 2018-04-17 10:50:51 -07:00
Michael Davidsaver 8c15d97ace more RELEASE.local 2018-01-24 16:29:19 -08:00
Michael Davidsaver 867dd87095 travis-ci 2018-01-24 16:21:08 -08:00
Michael Davidsaver e0a3ecb768 fix realclean hack 2018-01-24 16:20:58 -08:00
Michael Davidsaver 6de2538c1d enable RELEASE.local 2018-01-24 16:01:31 -08:00
Michael Davidsaver d6685b49b9 use inspect 2018-01-24 15:48:56 -08:00
Michael Davidsaver ab867e3bee add SKIP_DB_INSTALL for package build 2017-05-12 15:29:57 -04:00
Michael Davidsaver 2fbe91c884 debianize 2016-04-22 12:31:37 -04:00
Michael Davidsaver ca85bb1cb8 shared lib deps 2016-04-22 12:08:03 -04:00
Michael Davidsaver 9be6038aab simpler unicode to char* 2015-08-04 10:10:16 -04:00
Michael Davidsaver 7959e54ff9 nsls2 FPM 2015-06-19 14:12:13 -04:00
Michael Davidsaver 9d735107a4 add AsyncOffload
device support helper for async. (eg. aSub)
2015-06-16 10:50:34 -04:00
Michael Davidsaver 0f2768fe2c update Field doc 2015-06-12 16:44:58 -04:00
Michael Davidsaver 7ac846141f Field get/put of arrays
Adjust Field.getval() and Field.putval() to work
with numpy.ndarray.

putval() handle assign scalar to array

Field.getarray() for DBF_STRING returns 2d array
returns N by MAX_STRING_SIZE
2015-06-12 16:44:56 -04:00
Michael Davidsaver 3b227ec7fd add aSub support 2015-06-12 16:44:56 -04:00
Michael Davidsaver e7510fa315 update ptable dset 2015-03-24 14:31:52 -04:00
Michael Davidsaver 3f9bb84706 logApp: reference leak in inotify_wrap.c 2015-01-04 12:54:41 -05:00
Michael Davidsaver b93aee9496 disect: track types by name string 2015-01-04 12:37:43 -05:00
Michael Davidsaver 8564630595 weatherApp: error handling 2015-01-04 12:25:59 -05:00
Michael Davidsaver 89b411990a Reference counter debugging 2015-01-04 12:09:10 -05:00
Michael Davidsaver 7d527103bf dbrec: improper use of DBENTRY
use of DBENTRY after free and leak of same
2015-01-04 09:20:44 -05:00
Michael Davidsaver 325fb87496 more archiver appliance 2014-12-24 09:00:51 -05:00
Michael Davidsaver 0d8690d5b7 archApp: archiver appliance monitoring 2014-12-09 11:50:23 -05:00
Michael Davidsaver 46bc99a57d devsup.db: Record.setTime() accept float 2014-12-09 11:12:50 -05:00
Michael Davidsaver 79cf57d748 devsup.db: add initHook() dectorator 2014-12-09 11:12:24 -05:00
Michael Davidsaver 32b8145fc7 fix ref count mistake 2014-06-20 14:51:52 -04:00