Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoSign in
Socket

softioc

Package Overview
Dependencies
Maintainers
0
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

softioc - pypi Package Compare versions

Comparing version
4.1.0
to
4.2.0
+1
-1
PKG-INFO
Metadata-Version: 2.1
Name: softioc
Version: 4.1.0
Version: 4.2.0
Summary: Embed an EPICS IOC in a Python process

@@ -5,0 +5,0 @@ Home-page: https://github.com/dls-controls/pythonSoftIOC

[build-system]
requires = ["setuptools", "wheel", "setuptools_dso>=2.1", "epicscorelibs>=7.0.6.99.1.0"]
requires = ["setuptools", "wheel", "setuptools_dso>=2.1", "epicscorelibs>=7.0.7.99.0.0"]
build-backend = "setuptools.build_meta:__legacy__"
Metadata-Version: 2.1
Name: softioc
Version: 4.1.0
Version: 4.2.0
Summary: Embed an EPICS IOC in a Python process

@@ -5,0 +5,0 @@ Home-page: https://github.com/dls-controls/pythonSoftIOC

@@ -1,2 +0,2 @@

epicscorelibs<7.0.6.99.3,>=7.0.6.99.2.0
epicscorelibs<7.0.7.99.1,>=7.0.7.99.0.0
numpy

@@ -3,0 +3,0 @@ epicsdbbuilder>=1.4

@@ -11,4 +11,4 @@ # Compute a version number from a git repo or archive

# These will be filled in if git archive is run or by setup.py cmdclasses
GIT_REFS = 'tag: 4.1.0'
GIT_SHA1 = '77ec950'
GIT_REFS = 'tag: 4.2.0'
GIT_SHA1 = 'a2d4648'

@@ -15,0 +15,0 @@ # Git describe gives us sha1, last version-like tag, and commits since then

import os
import numpy
from .device_core import RecordLookup
from .softioc import dbLoadDatabase

@@ -27,2 +29,3 @@

fields.setdefault('DISP', 1)
_set_alarm(fields)

@@ -32,2 +35,10 @@ def _set_out_defaults(fields):

def _set_alarm(fields):
if 'status' in fields:
assert 'STAT' not in fields, 'Can\'t specify both status and STAT'
fields['STAT'] = _statStrings[fields.pop('status')]
if 'severity' in fields:
assert 'SEVR' not in fields, 'Can\'t specify both severity and SEVR'
fields['SEVR'] = _severityStrings[fields.pop('severity')]
# For longout and ao we want DRV{L,H} to match {L,H}OPR by default

@@ -81,2 +92,7 @@ def _set_scalar_out_defaults(fields, DRVL, DRVH):

_statStrings = [
'NO_ALARM', 'READ', 'WRITE', 'HIHI', 'HIGH', 'LOLO', 'LOW', 'STATE', 'COS',
'COMM', 'TIMEOUT', 'HWLIMIT', 'CALC', 'SCAN', 'LINK', 'SOFT', 'BAD_SUB',
'UDF', 'DISABLE', 'SIMM', 'READ_ACCESS', 'WRITE_ACCESS']
# Converts a list of (option [,severity]) values or tuples into field settings

@@ -264,5 +280,2 @@ # suitable for mbbi and mbbo records.

_DatabaseWritten = False
def LoadDatabase():

@@ -282,2 +295,10 @@ '''This should be called after all the builder records have been created,

def ClearRecords():
"""Delete all created record information, allowing new record creation"""
assert not pythonSoftIoc.RecordWrapper.is_builder_reset(), \
'Record database has already been loaded'
RecordLookup._RecordDirectory.clear()
ResetRecords()
# ----------------------------------------------------------------------------

@@ -310,3 +331,3 @@ # Record name configuration. A device name prefix must be specified.

# Other builder support functions
'LoadDatabase',
'LoadDatabase', 'ClearRecords',
'SetDeviceName', 'UnsetDevice',

@@ -313,0 +334,0 @@ # Device support functions

@@ -20,3 +20,3 @@ '''Device support files for pythonSoftIoc Python EPICS device support.

def __init__(self, builder, device, name, **fields):
assert not self.__builder_reset, \
assert not self.is_builder_reset(), \
'It\'s too late to create records'

@@ -51,3 +51,9 @@ # List of keyword arguments expected by the device constructor. The

@classmethod
def is_builder_reset(cls):
'''Returns True if it is too late to create records'''
return cls.__builder_reset
# Most attributes delegate directly to the builder instance until the

@@ -54,0 +60,0 @@ # database has been written. At this point the builder instance has been

@@ -7,4 +7,2 @@ import os

from epicsdbbuilder.recordset import recordset
from . import imports, device

@@ -11,0 +9,0 @@ from . import cothread_dispatcher