Skip to content
This repository has been archived by the owner on Dec 16, 2022. It is now read-only.

re-install latest production release of ophyd #123

Closed
prjemian opened this issue Jan 6, 2020 · 6 comments
Closed

re-install latest production release of ophyd #123

prjemian opened this issue Jan 6, 2020 · 6 comments
Assignees
Labels
high priority maintenance something needs to be changed

Comments

@prjemian
Copy link
Collaborator

prjemian commented Jan 6, 2020

During user operations in November and December, we encountered problems (#114) such that the instrument had to stop using the bluesky software. Through various discussions and testing (prjemian/ipython-vm7#1, #114, bluesky/ophyd#776, bluesky/ophyd#776, bluesky/ophyd#782, bluesky/ophyd#783), some of our problems were likely due to use of a non-production release of ophyd.

To take advantage of various changes since the latest production release (1.3.3), we used 1.4.0rc3 (and then with additional modifications). The master branch of the ophyd repository is well past the 1.3.3 release but the additional changes are not fully tested.

We should re-install the 1.3.3 release locally, then apply any additional modifications locally to regain the changes we hoped to see from the 1.4.0rc3 release.

@prjemian prjemian added the maintenance something needs to be changed label Jan 6, 2020
@prjemian prjemian added this to the 2020-01-24 shutdown milestone Jan 6, 2020
@prjemian prjemian self-assigned this Jan 6, 2020
@prjemian
Copy link
Collaborator Author

prjemian commented Jan 6, 2020

Current ophyd version points to local development directory.

(bluesky) 8idiuser@snow ~/.../profile_bluesky/startup $ conda list ophyd
# packages in environment at /home/beams/8IDIUSER/.conda/envs/bluesky:
#
# Name                    Version                   Build  Channel
ophyd                     1.4.0rc3.post14+g3cbf73b           dev_0    <develop>
(bluesky) 8idiuser@snow ~/.../profile_bluesky/startup $ conda install ophyd=1.3.3 -c nsls2forge
Collecting package metadata (current_repodata.json): done
Solving environment: -
The environment is inconsistent, please check the package plan carefully
The following packages are causing the inconsistency:

  - aps-anl-tag/noarch::apstools==1.1.16=py_0                                                                                        done


==> WARNING: A newer version of conda exists. <==
  current version: 4.8.0
  latest version: 4.8.1

Please update conda by running

    $ conda update -n base -c defaults conda



## Package Plan ##

  environment location: /home/beams/8IDIUSER/.conda/envs/bluesky

  added / updated specs:
    - ophyd=1.3.3


The following NEW packages will be INSTALLED:

  ophyd              nsls2forge/noarch::ophyd-1.3.3-py_1

@prjemian
Copy link
Collaborator Author

prjemian commented Jan 6, 2020

Now, start bluesky session and look for startup problems.

(bluesky) 8idiuser@snow ~/.../profile_bluesky/startup $ bluesky8IDI
Python 3.7.3 (default, Mar 27 2019, 22:11:17)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.6.0 -- An enhanced Interactive Python. Type '?' for help.

IPython profile: bluesky
/home/beams/8IDIUSER/.ipython-bluesky/profile_bluesky/startup/00-0-checks.py
BlueSky version: 1.5.4
Ophyd version: 1.3.3
/home/beams/8IDIUSER/.ipython-bluesky/profile_bluesky/startup/00-logging.py
Activating auto-logging. Current session state plus future input saved.
Filename       : /home/beams10/8IDIUSER/.ipython-bluesky/profile_bluesky/startup/.logs/ipython_console.log
Mode           : rotate
Output logging : True
...
~/.ipython-bluesky/profile_bluesky/startup/09-imports.py in <module>
     37 from ophyd.areadetector.plugins import PluginBase
     38 # new in ophyd 1.4.0rc1
---> 39 from ophyd.areadetector.plugins import GatherPlugin
     40 from ophyd.areadetector.plugins import ScatterPlugin
     41

ImportError: cannot import name 'GatherPlugin' from 'ophyd.areadetector.plugins' (/home/beams/8IDIUSER/.conda/envs/bluesky/lib/python3.7/site-packages/ophyd/areadetector/plugins.py)

In [1]:

@prjemian
Copy link
Collaborator Author

prjemian commented Jan 6, 2020

@prjemian
Copy link
Collaborator Author

prjemian commented Jan 6, 2020

Looks like the GatherPlugin is not necessary now since the code that calls it (from __25-areadetector-lambda.py__) is not loaded:

(bluesky) 8idiuser@snow ~/.../profile_bluesky/startup $ git grep GatherPlugin
09-imports.py:from ophyd.areadetector.plugins import GatherPlugin
__25-areadetector-lambda.py__:# class GatherPlugin(PluginBase):
__25-areadetector-lambda.py__:#     gather = Component(GatherPlugin, "Gather1:")

@prjemian
Copy link
Collaborator Author

prjemian commented Jan 6, 2020

The changes in ophyd to implement timeout and retry are fundamental to PV connections throughout the ophyd code (EpicsSignal, EpicsMotor, area detector) and would require massive duplication. Not the best place, or even a good place. Better to implement in an ophyd branch.

prjemian pushed a commit that referenced this issue Jan 6, 2020
@prjemian
Copy link
Collaborator Author

prjemian commented Jan 6, 2020

@danielballan : Can you help with this ophyd branch?

Ophyd release 1.3.3 installed at beam line and bluesky session starts. This issue is done. Will open a new one once the new ophyd branch with timeout and retry are implemented.

@prjemian prjemian closed this as completed Jan 6, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
high priority maintenance something needs to be changed
Projects
None yet
Development

No branches or pull requests

1 participant