Warnings from pcds-envs test
Open
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 0
- Forks
- 9
- Avg merge
- 7d 6h
- Merged PRs (30d)
- 1
Description
This warning was repeated a few times:
tests/test_daq.py::test_basic_run
/home/travis/build/pcdshub/pcds-envs/pcdsdaq/pcdsdaq/daq.py:751: UserWarning: You have called obj.value on SynSignal(name='test', value=0, timestamp=1586559047.5122018) (test.) which is a non-monitored signal.
We are falling back to calling `.get` and interrogating the underlying control system, however this may cause several other problems:
1. This property access may take an arbitrarily long time
2. This property access, which you expect to be read only may change other state in the Signal.
Your options to fix this are:
- do not use obj.value.
- If you are using this is in a plan you like want to be using bps.read, bps.rd, bpp.reset_positions_decorator, bpp.reset_positions_wrapper, bpp.relative_set_decorator, or bpp.relative_set_wrapper
- if you are doing this in an ophyd method use `self.get`
- set up the Signal to monitor
This behavior will likely change in the future.
val = device.value
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with tests/test_daq.py::test_basic_run and pcdsdaq/pcdsdaq/daq.py around line 751, where the warning shows a device.value access. Inspect that access and the test setup to determine the intended handling. Done means the test still passes without emitting the repeated non-monitored-signal warning.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- testing-qa
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100