Skip to content

Releases: pcdshub/pcdsdevices

v2.5.0

15 Apr 21:28
e58d664
Compare
Choose a tag to compare

Features

  • Add classes for Goniometers, Von Hamos spectrometers, Beckhoff liquid jets, TimeTools, and PFLSs
  • Add UnrelatedComponent as a helper for writing devices with many prefixes

Bugfixes

  • Fix TwinCAT states enum states
  • Add missing packages to requirements file
  • Compatibility with newest ophyd

Misc

  • Add pre-commit hooks to help with development flow
  • Add license file to manifest
  • Eliminate m2r docs dependency

v2.4.0

13 Mar 02:15
b826196
Compare
Choose a tag to compare

Features

  • Add PytmcSignal
  • Add PPM, XPIM, XOffsetMirror, and Kmono classes
  • Update IPM and PIM modules to better match physical devices
  • Add various helper classes for TwinCAT devices
  • Stubs created for attenuators, RTD, and PowerSlit
  • Make cmd_err_reset in BeckhoffAxisPLC accessible in Typhos

API Changes

  • Changed set_point_relay to pump_on_status, at_vac_sp to
    at_vac_setpoint and added pump_state to PIPPLC

  • Changed at_vac_sp to at_vac_setpoint, at_vac_hysterisis
    to setpoint_hysterisis, and added mps_state to VGC

Bugfixes

  • Make protection_setpoint writeable in GCCPLC
  • Make state writeable in VCN

Misc

  • Allow build docs failure to speed up overall CI
  • Specify old working conda version as temporary solution for
    build failures

v2.3.0

05 Feb 22:22
892dbb5
Compare
Choose a tag to compare
  • Upgrade to ophyd 1.4.0rc4
  • Add belens calculations from legacy python code

v2.2.0

23 Jan 02:12
89194c3
Compare
Choose a tag to compare

Features

  • Add a bunch vacuum-related classes for L2SI

Misc

  • Fix an issue with the doctr deploy key

v2.1.1

14 Jan 01:00
63105f4
Compare
Choose a tag to compare

Same as v2.1.0, except it will correctly upload itself to the conda channel

v2.1.0

10 Jan 19:50
c51ba14
Compare
Choose a tag to compare

Features

  • Add screen method to PCDSMotorBase to open the motor expert screen
  • Add tab completion filtering via whitelists as the first feature of the
    engineering_mode switch. This was implemented because the tab
    completion on ophyd devices is extremely overwhelming.
    Use set_engineering_mode(bool) to turn engineering_mode on or off.
    The default is "on", which means "everything is normal".
    Turning engineering_mode off enables the whitelist filtering,
    and in the future may also have other effects on the user interface.
  • Add dc_devices module for components from the new DC power system.
    This currently contains the ICT and related classes.

Misc

  • Fixed a race condition in the tests
  • Clean up the Travis CI configuration
  • Pin pyepics to >=3.4.1 due to a breaking change from python 3.7.6

v2.0.0

29 Jun 00:18
6a16611
Compare
Choose a tag to compare

Features

  • Add gauge and pump modules
  • Add Acromag and Mesh classes
  • Add motor subdevice to state record devices
  • Add status string to BeckhoffAxis

API Breaks

  • State devices no longer have the readback signal, as it is redundant
    with the new motor subdevice
  • PCDSDetector has been renamed to PCDSAreaDetector for clarity.
    PCDSDetectorBase is also renamed to PCDSAreaDetectorBase.

Bugfixes

  • Fix PVs in BeckhoffAxis

Misc

  • Officially build for python=3.7

v1.2.0

08 Mar 22:34
be22097
Compare
Choose a tag to compare

Features

  • Add all common plugins to PCDSDetector
  • EventSequencer now accepts human-readable sequences

Fixes

  • Fix debug PV names in BeckhoffAxis

Misc

  • Add a py37 build to the CI
  • Remove outdated hotfix for FakeEpicsSignal in tests
  • Fix misc testing errors

v1.1.0

27 Oct 00:25
ed80e84
Compare
Choose a tag to compare

Features

  • Support for reading and writing sequences to and from the EventSequencer
  • Add Motor factory function for choosing which motor class to use based
    on the text in the prefix.

Bugfixes

  • IMS class will no longer get its .SPG field stuck on paused or
    stopped when a scan is interrupted. Scans will start even if these
    fields are blocked.
  • Update out-of-date requirements.txt file for pip
  • Pin matplotlib to <3 to avoid import incompatibility pitfalls, and
    confine the matplotlib imports to function scope instead of module scope
    to avoid having a backend be set on import.

v1.0.0

12 Oct 23:58
ab94ace
Compare
Choose a tag to compare

Features

  • Display current position in umv progress bars
  • Added ophyd Kind specification to every device in the library
  • Added .DESC field to standard motor interface
  • Added trigger to event sequencer and other changes to make it more
    useful in scans
  • Added CCM class
  • Added BeckhoffAxis class for the Beckhoff ADS-based motor record
  • Added evr Trigger class for configuring evr triggers
  • Added FeeAtt class for the wonky FEE attenuator
  • Clean up Reflaser classes
  • Added LensStack class python2 port for the xyz focusing assembly
    (not fully complete)
  • Added DelayStage class for laser delay stages
  • Added SyncAxes class for synchronizing axes e.g. tables, ccm
  • Added keypress utilities python2 port
  • Added wm_update python2 port to FltMvInterface. This is essentially a
    camonitor.
  • Added mv_ginput python2 port to FltMvInterface
  • Added per-class icons to be picked up by lightpath and other
    applications

Bugfixes

  • Use IMAGE2 instead of IMAGE1 as the area detector default, because
    this is the low rate or binned image. Avoid sending huge images quickly
    through python processes.
  • Prevent issue where presets from same-named device would interfere with
    eachother.
  • Attenuator subclasses now have sane names
    (previously Attenuator1234567, for example).
  • Split the XPP and XCS lodcm foils (they are different).
  • Warn the user about using certain classes directly when they need to be
    subclassed.
  • Raise errors for any invalid state in a state positioner, not just the
    Unknown state.
  • Add SUB_STATE subscription types for OffsetMirror and Attenuator
  • Valve interlock had inverted logic

Maintenance

  • Standardize component imports as import Component as Cpt
  • Move some interlocks into check_value instead of ad-hoc locations
  • Misc travis fixes and improvements
  • State devices are more forgiving with certain inputs
  • Clean up the Slit interface for lightpath

API Breaks

  • Rework and improve various simulated hardware, removing old sim modules.
  • Require some newer modules