Skip to content

Releases: slaclab/pydm

v1.27.0

01 Apr 18:26
17cc05b
Compare
Choose a tag to compare

What's Changed

This patch adds a few new features to Base Plot and Archive Time Plot along with some bug fixes. We added labels on crosshairs for Time Plots, Archive Time Plots and Waveform Plots and fixed how crosshairs were working. We addressed an issue with dynamically switching a channel on a PyDMWidget.

This update also adds another slew of changes that are needed for PySide6 support in PyDM. (Note that Pyside6 support is currently still in progress and will be fully enabled in a future release. Using Pyside6 will also be an optional feature and should not effect how PyDM currently uses PyQt5.)

Enhancements

  • ENH: Adds Labels to Timeplot Crosshair by @YektaY in #1173
  • ENH: Infinite line extension for PyDMArchiverTimePlot by @YektaY in #1167
  • ENH: ArchiveTimePlot Fetch Data on X-Axis Change by @zdomke in #1172

Bug Fixes

  • BUG: properly remove error bars in time plot's clearCurves by @shilorigins in #1217
  • FIX: Don't attempt a disconnect on the value signal if the widget is being destroyed by @jbellister-slac in #1218
  • FIX: Ensure previous instance of display class is fully cleaned up after reloading it by @jbellister-slac in #1209
  • FIX: Fixing bug with updateXAxis def by @zdomke in #1216
  • BUG: connect BasePlotAxisItem auto-range methods to the linked ViewBox auto-range methods by @shilorigins in #1212
  • FIX: Disconnect the value signal when removing a listener from a connection by @jbellister-slac in #1208

Maintenance:

PySide6 Changes:

  • MNT: make sure we pass a weak ref of the current object to widget_destroyed by @nstelter-slac in #1189
  • MNT: update enum-button widget's button-group to use proper clicked signal, avoid pyside6 error by @nstelter-slac in #1196
  • MNT: stop high-dpi setting warning on pyside6(qt6) by @nstelter-slac in #1198
  • MNT: pyside6 just throws an IndexError instead when connecting to value_signals not overloaded with the specified type by @nstelter-slac in #1197
  • MNT: On pyside6 use == for signal comparison (can't use .signal like in pyqt5) by @nstelter-slac in #1199
  • MNT: Move some calls to children classes to stop pyside6 throwing an error about init in classes that use multiple inheritence. by @nstelter-slac in #1181
  • TST: fix error during tests on pyside6 with c++ internal object deletion by @nstelter-slac in #1215

Full Changelog: v1.26.0...v1.27.0

v1.26.0

18 Mar 23:49
0806a50
Compare
Choose a tag to compare

What's Changed

This patch adds some bug fixes related to the ErrorBarItems of ArchiverPlotCurveItem widgets, and the added ability to reference start angle and span angles of PyDMDrawingArc based widgets with their widget-rules (for example, they can now be set by PVs). This update also adds some general maintenance patches to PyDM's setup and GitHub, a highlight being the switch from setup.py to pyproject.toml.

This update also adds a slew of changes that are needed for PySide6 support in PyDM. (Note that Pyside6 support is currently still in progress and will be fully enabled in a future release. Using Pyside6 will also be an optional feature and should not effect how PyDM currently uses PyQt5.)

Maintenance:

  • Migrate to pyproject.toml by @jbellister-slac in #1184
  • MNT: update issues and feature request page on github, make it apply a tag to the issues automatically by @nstelter-slac in #1170
  • MNT: stop install wrong pyca package through pip, and enabled psp test which uses pyca's psp library by @nstelter-slac in #1136
  • FIX: changes to publish-to-pypi.yml by @YektaY in #1165
  • MNT: fix github actions windows tests from failing randomly: maybe windows is slow, try waiting a few seconds longer by @nstelter-slac in #1201
  • STY: fix minor spelling mistakes by @nstelter-slac in #1182

Bug Fixes:

  • FIX: Set log mode and link/unlink ArchivePlotCurveItem.ErrorBarItems by @zdomke in #1168

Enhancements:

  • ENH: add two rules to PyDMDrawingPie widget by @jjanice in #1185

PySide6 Changes:

  • MNT: remove widget classes inheritance from enum, as preperation for qt6 enum support by @nstelter-slac in #1154
  • Support both pyqt5 pyside6 enums by @nstelter-slac in #1155
  • ENH: Add Pyside6 compatible UI file compilation by @nstelter-slac in #1163
  • MNT: make RULE_PROPERTIES work with pyside6 by @nstelter-slac in #1161
  • MNT: switch signal type overloading to use syntax that works for both pyqt5 and pyside6 by @nstelter-slac in #1164
  • TST: some changes to tests for pyside6, also set about page font width to bold (which is same as having 75) by @nstelter-slac in #1176
  • MNT: in tests, access style pixmaps using StandardPixmap by @nstelter-slac in #1187
  • TST: fix segfault issue during symbol editor test on pyside6 by @nstelter-slac in #1190
  • MNT: '|' is only supported way to combine macros in qt6, and still works also for qt5 by @nstelter-slac in #1175
  • MNT: Be sure we use Qt.PenStyle enums for setting pen style, not ints. by @nstelter-slac in #1188
  • MNT: use the correct signal for comboboxes in the camviewer example, stops error on pyside6 by @nstelter-slac in #1192
  • TST: use QSlider.TickPosition values in slider tests (errors when use ints on pyside6) by @nstelter-slac in #1191

New Contributors

Full Changelog: v1.25.2...v1.25.3

v1.25.2

29 Jan 00:15
4a10536
Compare
Choose a tag to compare

What's Changed

This update adds a host of bug fixes and maintenance work to PyDM. Included is a fix for loading widgets in QtDesigner when PyDM is installed from PyPI, a fix for indexing into a NTTable's array of np.integer types, a fix for using a PyDMSlider with floating point values, and an improved doc page on setup and contributing for developers.

This update also adds new options for stdout and stderr output from subprocesses launched by PyDMShellCommand widgets, and fixes the issue of these subprocess temporarily freezing when outputting a large amount.

New Features

  • ENH/FIX: shell command output options by @ZLLentz in #1138
  • ENH: make main window menubar action for 'Enter Fullscreen' toggle to 'Exit Fullscreen' when in fullscreen view. by @nstelter-slac in #1128

Docs

Maintenance

Bug Fixes

  • BUG: fix issue where designer doesn't load pydm widgets when pydm is installed from PyPI using pip by @nstelter-slac in #1132
  • FIX: Store Data for FormulaCurveItem with Constant Value by @zdomke in #1124
  • FIX: Check Validity of QAbstractTableModel Classes by @zdomke in #1122
  • FIX: maintain reference to related displays to avoid gc by @ZLLentz in #1137
  • FIX: Small change to addess a valueError in PyDMSlider when they are being dragged by @YektaY in #1147
  • BUG: Add a case in p4p_plugin_component.py for Numpy integers. by @slactjohnson in #1120

New Contributors

Full Changelog: v1.25.1...v1.25.2

v1.25.1

08 Oct 22:11
13200f5
Compare
Choose a tag to compare

What's Changed

A small release to update publish-to-pypi.yml file

Bug Fix

Full Changelog: v1.25.0...v1.25.1

v1.25.0

08 Oct 18:08
cb1dd3a
Compare
Choose a tag to compare

What's Changed

This update provides a slew of changes to the pydm plots including updates to the PyDMArchiverTimePlot. This update also fixes a couple bugs in the PyDMSlider, so now the slider handle is draggable.

New Features

Maintenance

  • Bump actions/download-artifact from 3 to 4.1.7 in /.github/workflows by @dependabot in #1109

Bug Fixes

  • FIX: Unlinking a curve from an axis now removes it from the legend by @aksharsarvesh in #1112
  • FIX: Addressed two bugs on the slider. Middle click to see PV name and click and drag on the slider handle by @YektaY in #1115

New Contributors

Full Changelog: v1.24.1...v1.25.0

v1.24.1

19 Aug 21:44
8b27429
Compare
Choose a tag to compare

What's Changed

This update provides a new option to specify to PyDM the order in which dimensions of a PVA image are being sent. Also added are new stepMode options for drawing graphs, and the PyDMByteIndicator now displays negative numbers by the bits of their two's complement representation. Also included are bug fixes and maintenance work related to using PyDM with Python 3.10

New Features

Maintenance

  • FIX: in analong_indicator, explicitly cast to int for py310+ compat by @ZLLentz in #1080
  • Fix Container class move for python 3.10 by @mattgibbs in #1104

Bug Fixes

New Contributors

Full Changelog: v1.24.0...v1.24.1

v1.24.0

23 May 21:13
ae70a5e
Compare
Choose a tag to compare

What's Changed

This update adds EPICS 7 RPC support along with updates and fixes to the PyDMSlider. Please refer to the P4P Plugin documentation page for instructions on how to use the new RPC functionality if interested!

New Features

Bug Fixes

  • FIX: Fix to clicking on PyDMSilder running on MacOS by @YektaY in #1079

Full Changelog: v1.23.0...v1.24.0

v1.23.0

09 May 18:27
9315bca
Compare
Choose a tag to compare

What's Changed

This update adds a slew of changes. Most notably to the Archiver Time Plot and Time Plot widgets as well as changes to the base plot. This release also has a few improvements to the pydm drawing widgets, adding new rules and giving users the ability to change the size of arrows on lines.

New Features

  • ENH: Add option to change size of arrows on drawn lines by @nstelter-slac in #1072
  • ENH: Archiver Timeplot address setters by @zdomke in #1061
  • ENH: Archived Data Mode for the Archiver Time Plot Widget by @YektaY in #1062
  • ENH: Add checkable columns to Archiver Plot Model by @zdomke in #1074
  • ENH: Base Plot Axis log mode setter by @zdomke in #1075
  • ENH: Base Plot Axis range values by @zdomke in #1077
  • ENH: Timeplot auto scrolling by @zdomke in #1076
  • ENH: added new pydm drawing rules for all drawing widgets that allow for p… by @phys-cgarnier in #1066

Maintenance

Bug Fixes

New Contributors

Full Changelog: v1.22.1...v1.23.0

v1.22.1

10 Apr 20:03
56f94b4
Compare
Choose a tag to compare

What's Changed

This is a minor bug fix release, primarily to ensure PyDM remains compatible with the most recent version of pyqtgraph used for PyDM plots. All plot widgets should now function correctly when installing PyDM alongside the most recent versions of all its dependencies.

Bug Fixes

Full Changelog: v1.22.0...v1.22.1

v1.22.0

20 Feb 17:41
aebd231
Compare
Choose a tag to compare

What's Changed

This update adds new rules for the drawing-line widget for dynamically adjusting its color, style, and thickness, a new LED indicator widget, and a way to pause drawing updates to an image in a PyDMImageView. Also included are bug fixes and an update to the tutorial documentation.

New Features

Docs

Maintenance

Bug Fixes

New Contributors

Full Changelog: v1.21.0...v1.22.0