Skip to content

asLib: fix ValueError when a channel maps to ASG with no ASG(DEFAULT)#214

Open
jacquelinegarrahan wants to merge 1 commit into
epics-base:masterfrom
jacquelinegarrahan:fix/aslib-default-asg-unpack
Open

asLib: fix ValueError when a channel maps to ASG with no ASG(DEFAULT)#214
jacquelinegarrahan wants to merge 1 commit into
epics-base:masterfrom
jacquelinegarrahan:fix/aslib-default-asg-unpack

Conversation

@jacquelinegarrahan

Copy link
Copy Markdown

self._asg values are (rules, inputs) 2-tuples, but the DEFAULT fallback was a
bare list: self._asg_DEFAULT = asg.get('DEFAULT', []). In create(),
rules, inputs = self._asg.get(group, self._asg_DEFAULT) then executed
rules, inputs = [] -> ValueError whenever a PV's ASG was absent and no
ASG(DEFAULT) block was defined. This runs outside the try/except in create(),
so the channel was left restrictive (or the error surfaced through asTest),
wrongly denying access to every default-group channel.

Use an unpackable empty ruleset ([], {}) as the fallback.

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

self._asg values are (rules, inputs) 2-tuples, but the DEFAULT fallback was a
bare list: self._asg_DEFAULT = asg.get('DEFAULT', []). In create(),
`rules, inputs = self._asg.get(group, self._asg_DEFAULT)` then executed
`rules, inputs = []` -> ValueError whenever a PV's ASG was absent and no
ASG(DEFAULT) block was defined. This runs outside the try/except in create(),
so the channel was left restrictive (or the error surfaced through asTest),
wrongly denying access to every default-group channel.

Use an unpackable empty ruleset ([], {}) as the fallback.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant