Pydm

Latest version: v1.25.2

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

Scan your dependencies

Page 9 of 12

1.6.1

======================
PyDM 1.6.1 fixes three small problems.

Bug Fixes
----------
* Remove the 'Checkbox' option from PyDMEnumButton, which didn't make any sense in the context of enums.
* In setup.py, always decode README.md as UTF-8. This should fix a crash when installing PyDM while using an obscure default text encoding.
* Stop putting the entire docstring for each widget into the 'whatsThis' property. This should considerably reduce .ui file sizes, and will also get rid of the laughably huge tooltips when hovering over PyDM widgets in Designer.

1.6

======================
PyDM 1.6 makes some architectural changes to how widgets get data, makes it slightly easier to write python-based displays, and adds a new widget for interacting with enum channels. See below for all the details.

New Features
--------------
* All connection between the PyDM widgets and data plugins are now handled in pydm.data_plugins. This means you can use the PyDM widget set without a PyDMApplication. (Thanks teddyrendahl)
* pydm.Display subclasses no longer need to include the 'ui_filepath' method.
* pydm.Display subclasses can now specify ui_filepath by setting 'self.ui_filepath' inside `__init__`, or also by supplying a `ui_filepath` keyword argument in the constructor.
* Management of PyDM external tools has now been extracted from PyDMApplication, into the pydm.tools module (Thanks hhslepicka )
* A new PyDMEnumButton widget has been added. This widget gives you new options for controlling enum channels, via a set of push buttons or radio buttons. (Thanks hhslepicka )
* PyDM should now be installable directly from pip: `pip install pydm` (Thanks hhslepicka, who not only made all this work, but went through the arduous process of securing the 'pydm' name in PyPI!)

Bug Fixes
----------
* Fix a bug that was causing a crash if a channel was specified with an invalid protocol. (Thanks fernandohds564 )
* Rename the PyDM designer plugin file so that it won't collide with other generically-named designer plugins (Thanks hhslepicka )
* Shell Command widget tests no longer try to ping Google. (Thanks hhslepicka )


Other Changes
---------------
* The tutorial info has been extracted out of the PyDM documentation and into the PyDM Tutorial: https://slaclab.github.io/pydm-tutorial/
* Command line argument text has been slightly tweaked for clarity.

1.6.0

1.5

======================
Today we're releasing PyDM 1.5. No huge user-facing features this time - this release is focused on the inner workings. The two most notable changes are enhancements to PyDMTimePlot, and the switch from our home-built PyQt compatibility layer (which has mostly been useless since we removed PyQt4 support) to [QtPy](https://github.com/spyder-ide/qtpy). Besides those, there are all the usual bug fixes and minor improvements to widgets.

New Features
--------------
* PyDM now uses [QtPy](https://github.com/spyder-ide/qtpy) as the compatibility layer, which lets us support both PyQt5, and PySide2. Note that right now, we are still only developing and testing using PyQt5, and so PySide2 should be considered experimental, and may be unstable. (Thanks tacaswell for the work on this - the process must have been incredibly tedious!)
* All Plot Widgets now support an optional right axis. For now, changing the scale of the right axis can only be done programmatically, but expect this to eventually be changeable in Designer. (Thanks hmbui)
* There have been many behind-the-scenes enhancements to the PyDMTimePlot widget to support [TimeChart](https://github.com/slaclab/timechart), our general purpose, standalone signal vs. time plotting tool. TimeChart hasn't had an official release yet, but expect to see one pretty soon. Many of these enhancements will eventually be exposed as properties in Designer, so stay tuned. (Thanks hmbui)
* Environment variables are now expanded when used to specify file paths (Thanks hhslepicka)
* Another EPICS data plugin has been added for the [caproto](https://nsls-ii.github.io/caproto/) client library. To use it, set the `PYDM_EPICS_LIB` environment variable: `export PYDM_EPICS_LIB=CAPROTO` (Thanks hhslepicka)

Bug Fixes
----------
* Macro replacement is now done in-memory, rather than in a temporary file. This reduces disk thrashing. (Thanks klauer)
* Fixed a crash in Designer due to the PyDM Extensions system (Thanks klauer)
* Macros now correctly propagate to files opened using related display buttons (Thanks klauer)
* The X and Y axes on PyDMScatterPlots are no longer reversed (Thanks klauer)
* PyDMByteIndicators now work with values with more than 8-bits (You guessed it: Thanks klauer)
* Fixed a bug that could prevent PyDMWaveformPlot from triggering (Thanks fernandohds564)
* Updated the list of PyDM contributors on the 'About' screen
* All plot widgets now only redraw if the data has changed, significantly reducing CPU usage
* Minor errors corrected in docstrings for widgets, like parameters being listed as 'returns' (Thanks KurtJacobson)
* Fixed PyDMLineEdit's handling of PVs without units (Thanks teddyrendahl)
* Fix default stylesheet problem with pen width definition (Thanks hhslepicka)

1.5.0

1.4.2

Someone once told me that it is a good practice to do frequent releases...
Read on for more details...

Bug Fixes
----------
* PyDM Waveform Plot and PyDM Scatter Plot were not respecting the AutoRange as well as the Range Limits defined by users. (387)

Page 9 of 12

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.