Pcdsdevices

Latest version: v8.7.0

Safety actively analyzes 706267 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 12

4.6.1

Maintenance
----------
- Fix various issues with packaging, including outdated pypi requirements, errors in manifest files, and versioneer/gitattributes errors related to bad version data when checked with pip.

Contributors
-----------
- klauer
- zllentz

4.6.0

Features
--------
- Add pmgr support to the `IMS` class! There are three new methods on IMS
for interacting with pmgr: ``configure``, ``get_configuration``, and
``find_configuration``.

Device Updates
--------------
- User changes to offset/dir on python or UI level to MRCO motion have been disabled.
- Add the veto_device signal (:VETO_DEVICE_RBV) to the VFS class.
- `XYGridStage` now uses one file per sample instead of
one giant file for all samples, and it writes to these files less often.
This speeds up operations. Various additional improvements to the class.

New Devices
-----------
- Add special IM2K0 device for the new configuration of IM2K0, where we
swapped its XTES style camera setup for a L2SI style camera setup.

Bugfixes
--------
- Fix an issue where DelayBase subclasses could spam the terminal at
startup if we load too many devices at once.
- Fix a typo in the KBO DS Bender RMS PV.
- Fix issue where motor presets would not load until the first access of the
presets object.
- Fix an issue where an epics motor could get stuck with a bad state of its
set_use_switch after a call to set_current_position with a bad value.

Contributors
------------
- cristinasewell
- jsheppard95
- jyotiphy
- Mbosum
- mcb64
- zllentz

4.5.0

Features
--------
- Add UpdateComponent, a component class to update component args
in subclasses.

Device Updates
--------------
- Update kmono threshold for showing beam passing in lightpath
- Rename PPSStopperL2SI to PPSStopper2PV and generalize to all PPS stoppers
whose states are determined by the combination of two PVs. The old name and
old defaults are retained for backcompatibility and have not yet been
deprecated. This was done to support the PVs for ST1K2 which do not follow
any existing pattern.
- Set various beamline component motor offset signals to read-only, using the
new BeckhoffAxisNoOffset class, to prevent accidental changes.
These are static components that have no need for this level of
customization, which tends to just cause confusion.

New Devices
-----------
- MRCO motion class for MRCO IP1 endstation in TMO.
- Added a class for the RIX ladder-style solid attenuator ``AT2K2``.
- Add BeckhoffAxisNoOffset, a varition on BeckhoffAxis that uses
UpdateComponent to remove write access on the user offset signals.

Bugfixes
--------
- Fix issue where BeckhoffSlits devices could show metadata errors on startup
by cleaning up the done moving handling. This would typically spam the
terminal in cases where we were making large numbers of PV connections in
the session at once, such as at the start of a hutch-python load.

Contributors
------------
- Mbosum
- ZLLentz
- jsheppard95
- klauer

4.4.0

API Changes
-----------
- Move stoppers into stopper.py, but keep reverse imports for
backwards compatibility. This will be deprecated and then removed
at a later date.

Device Updates
--------------
- Add "confirm" variety metadata tag to ``EpicsMotorInterface`` and
``BeckhoffAxisPLC`` home commands, requiring user confirmation prior to
performing the homing motion in auto-generated Typhos screens.
- Slits objects now have vo, vg, ho, and hg aliases.
- Motor objects now print out values with a precision of 3 places.
- Remove mpa3 and mpa4 from rtdsk0, they do not have filters and are always
in invalid states that confuse the lightpath.
- Update the mono spectrometer class to provide status to lightpath.
- Make sim devices hinted by default so they show up in the
best-effort callback in bluesky.

New Devices
-----------
- Add PPSStopperL2SI for having readbacks of the new PPS stoppers inside
of lightpath.

Bugfixes
--------
- Fix issue where the mirror coating states were expecting the default
'OUT' position, which does not exist on the real device.
- Fix an issue where ``ObjectComponent`` instances did not have proper class
information.
- Increase the retry delay in lightpath state updater to avoid issue where
long lightpaths would fail to update the first few devices in the path.
- Fix issue where LICMirror would appear blocking in the mirror states on
lightpath.
- Fix issue where PowerSlits would appear blocking on lightpath for some
positions reached by fulfilling normal PMPS requests.
- Fix issue where SxtTestAbsorber would report no status on lightpath.

Contributors
------------
- ZryletTC
- klauer
- zllentz

4.3.2

Bugfixes
--------
- Fix an issue where pcdsdevices would break pyepics and ophyd in such a
way to cause thousands of lines of teardown spam at exit.

Contributors
------------
- zllentz

4.3.1

Features
--------
- New functions have been added to the LODCM object: `tweak_x`, `tweak_parallel`, `set_energy`, `wait_energy`.
- Custom status print has been added for the 3 towers as well as the energy classes.
- Added the `OffsetIMSWithPreset` subclass of `OffsetMotorBase` that has an additional `_SET` offset pv, and puts to this pv during `set_current_position`.

Maintenance
-----------
- Have cleaned up some docstring and changed the naming for the offset motors to the old style.

Contributors
------------
- cristinasewell

Page 6 of 12

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.