- Create 'DAMA Software' logbook in beamline Olog.
- Run
conda list -n collection > /tmp/conda-list-before-upgrade.txtand include it in an Olog entry as an attachment. - Commit any uncomitted code in the IPython profile, which should be located (or linked to) at
~/.ipython/profile_colllection. - Create a new directory inside the IPython profile,
~/.ipython/profile_collection/acceptance_tests. - Write acceptance tests as short, standalone scripts that can be executed like
ipython --profile=collection -i 01-some-test.py. See examples from XPD or CSX. - Run acceptance tests successfully, and commit repo.
- Install packages. Use
--no-depsto keep conda from installing things you don't want.- event_model>=1.0.2
- bluesky==0.5.1
- databroker==0.4.1
- metadatastore==0.5.2
- ophyd (latest on nsls2-dev)
- pyepics (latest on nsls2-dev)
- doct==1.0.2
- historydict==1.1.0
- filestore==0.3.0
- As above, create a text file and attach it to the same log entry.
- Commit IPython profile and sync with github.
- Standardize
00-startup.pyaround the documented standard. Put olog code (farther down the page in that same link) in a separate file,01-olog-configuration.py, where it can be easily removed when the Olog is acting up. - Adjust for API Changes in beamline config:
- Remove imports of
bluesky.broker_callbacks,bluesky.hardware_checklist,bluesky.standard_config. - If
gswas being imported fromstandard_config, import it frombluesky.global_stateinstead. gs.RE.subscribe_lossless('all', metadatastore.commands.insert)(This line is in the linked example config already.)- To avoid an annoying warning, import
install_qt_kickerfrombluesky.utilsinstead of (deprecated)bluesky.qt_kicker. - Cleanup unneeded code that turns asyncio debugging off. (It's off my default now.)
- Do not bulk import
from bluesky.plans import *. (There is a lot of stuff in there now, and some names likesleepshadow common imports.)
- Remove imports of
- Check the order of Components in Device class definitions. To be safe: in
PVPositionerdefinitions, readback (not setpoint) should be first because that is the value that will be used to restore motors to their original positions if.positiondoes not exist. - Customize names, read_attrs, and configuration_attrs in accordance with beamline scientists' preferences.
- Run user acceptance tests.
- Commit IPython profile and upload to github.
- Ask what new hardware beamline will use this cycle.
Last active
May 17, 2016 18:36
-
-
Save danielballan/02c4db5d5d5c8660c3c0da0e00979676 to your computer and use it in GitHub Desktop.
Upgrade checklist, May 2016
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Wish I could give thumbs ups on gists. 👍