Skip to content

Releases: PlotPyStack/PythonQwt

v0.12.3

19 Jun 12:56
Compare
Choose a tag to compare

Version 0.12.3

  • Fixed Fatal Python error issue reported in the PlotPy project:
    • See PlotPy's Issue #11 for the
      original issue, even if the problem is not directly pointed out in the issue
      comments.
    • The issue was caused by the QwtAbstractScaleDraw cache mechanism, which was
      keeping references to QSizeF objects that were deleted by the garbage collector
      at some point. This was causing a segmentation fault, but only on Linux, and
      only when executing the PlotPy test suite in a specific order.
    • Thanks to @yuzibo for helping to reproduce the issue and providing a test case,
      that is the PlotPy Debian package build process.

Version 0.12.2

For this release, test coverage is 72%.

  • Preparing for NumPy V2 compatibility: this is a work in progress, as NumPy V2 is not
    yet released. In the meantime, requirements have been updated to exclude NumPy V2.
  • Fix QwtPlot.axisInterval (was raising AttributeError)
  • Removed unnecessary dependencies (pytest-qt, pytest-cov)
  • Moved conftest.py to project root
  • Project code formatting: using ruff instead of black and isort

Version 0.12.1

  • Fixed ColorStops.stops method (was returning a copy of the list of stops instead
    of the list itself)

Version 0.12.0

  • 30% performance improvement (measured by qwt.tests.test_loadtest) by optimizing
    the QwtAbstractScaleDraw.tickLabel method:
    • Suppressed an unnecessary call to QFont.textSize (which can be quite slow)
    • Cached the text size with the label QwtText object
  • Added support for margins in QwtPlot (see Issue #82):
    • Default margins are set to 0.05 (5% of the plot area) at each side of the plot
    • Margins are adjustable for each plot axis using QwtPlot.setAxisMargin (and
      QwtPlot.axisMargin to get the current value)
  • Added an additional margin to the left of ticks labels: this margin is set to one
    character width, to avoid the labels to be truncated while keeping a tight layout
  • Slighly improved the new flat style (see V0.7.0) by selecting default fonts
  • API breaking change: QwtLinearColorMap.colorStops now returns a list of ColorStop
    objects instead of the list of stop values

v0.12.2

13 Jun 08:41
Compare
Choose a tag to compare

Version 0.12.2

For this release, test coverage is 72%.

  • Preparing for NumPy V2 compatibility: this is a work in progress, as NumPy V2 is not
    yet released. In the meantime, requirements have been updated to exclude NumPy V2.
  • Fix QwtPlot.axisInterval (was raising AttributeError)
  • Removed unnecessary dependencies (pytest-qt, pytest-cov)
  • Moved conftest.py to project root
  • Project code formatting: using ruff instead of black and isort

v0.12.1

29 Feb 16:44
Compare
Choose a tag to compare

Version 0.12.1

  • Fixed ColorStops.stops method (was returning a copy of the list of stops instead of the list itself)

v0.12.0

16 Feb 10:26
Compare
Choose a tag to compare

Version 0.12.0

  • 30% performance improvement (measured by qwt.tests.test_loadtest) by optimizing
    the QwtAbstractScaleDraw.tickLabel method:
    • Suppressed an unnecessary call to QFont.textSize (which can be quite slow)
    • Cached the text size with the label QwtText object
  • Added support for margins in QwtPlot (see Issue #82):
    • Default margins are set to 0.05 (5% of the plot area) at each side of the plot
    • Margins are adjustable for each plot axis using QwtPlot.setAxisMargin (and
      QwtPlot.axisMargin to get the current value)
  • Added an additional margin to the left of ticks labels: this margin is set to one
    character width, to avoid the labels to be truncated while keeping a tight layout
  • Slighly improved the new flat style (see V0.7.0) by selecting default fonts
  • API breaking change: QwtLinearColorMap.colorStops now returns a list of ColorStop
    objects instead of the list of stop values

v0.11.2

24 Nov 14:46
Compare
Choose a tag to compare

Version 0.11.2

  • Fixed TypeError on QwtPlotLayout.minimumSizeHint

Version 0.11.1

  • Fixed remaining QwtPainter.drawPixmap call

Version 0.11.0

  • Dropped support for Python 3.7 and earlier
  • Dropped support for PyQt4 and PySide2
  • Removed unnecessary argument numPoints in QwtSymbol.drawSymbols and QwtSymbol.renderSymbols methods
  • QwtPlotCanvas: fixed BackingStore feature (paintAttribute)

v0.11.1

30 Oct 21:13
Compare
Choose a tag to compare

Version 0.11.1

  • Fixed remaining QwtPainter.drawPixmap call

Version 0.11.0

  • Dropped support for Python 3.7 and earlier
  • Dropped support for PyQt4 and PySide2
  • Removed unnecessary argument numPoints in QwtSymbol.drawSymbols and QwtSymbol.renderSymbols methods
  • QwtPlotCanvas: fixed BackingStore feature (paintAttribute)

v0.11.0

30 Oct 20:09
Compare
Choose a tag to compare

Version 0.11.0

  • Dropped support for Python 3.7 and earlier
  • Dropped support for PyQt4 and PySide2
  • Removed unnecessary argument numPoints in QwtSymbol.drawSymbols and QwtSymbol.renderSymbols methods
  • QwtPlotCanvas: fixed BackingStore feature (paintAttribute)

Hotfix v0.10.6

21 Oct 16:07
Compare
Choose a tag to compare

Version 0.10.6

  • Qt6 support:
    • Handled all occurences of deprecated QWidget.getContentsMargins method.
    • Removed references to NonCosmeticDefaultPen
    • Fixed QApplication.desktop AttributeError
    • Fixed QPrinter.HighResolution AttributeError on Linux
    • Fixed QPrinter.setColorMode AttributeError on PyQt6/Linux
    • Fixed QPrinter.setOrientation deprecation issue
    • Fixed QPrinter.setPaperSize deprecation issue
  • Improved unit tests:
    • Ensure that tests are entirely executed before quitting (in unattended mode)
    • Added more tests on qwt.symbols
    • Added tests on qwt.plot_renderer
  • qwt.plot_renderer: fixed resolution type
  • qwt.symbols: fixed QPointF type mismatch
  • Removed CHM help file generation (obsolete)

Hotfix v0.10.5

10 Oct 07:20
Compare
Choose a tag to compare

Version 0.10.5

  • Issue #81 - Signal disconnection issue with PySide 6.5.3

Version 0.10.4

  • Issue #80 - Print to PDF: AttributeError: 'NoneType' object has no attribute 'getContentsMargins'

Version 0.10.3

  • Issue #79 - TypeError: unexpected type 'QSize' (thanks to @luc-j-bourhis)

  • Moved project to the PlotPyStack organization.

  • Unit tests: added support for pytest and coverage (60% coverage as of today)

  • Issue #74 - TypeError: QwtPlotDict.init() [...] with PySide 6.5.0

  • Issue #77 - AttributeError: 'XXX' object has no attribute '_QwtPlot__data'

  • Issue #72 - AttributeError: 'QwtScaleWidget' object has no attribute 'maxMajor' / 'maxMinor' / 'stepSize'

  • Issue #76 - [PySide] AttributeError: 'QwtPlotCanvas' object has no attribute 'Sunken'

  • Issue #63 - TypeError: 'PySide2.QtCore.QRect' object is not subscriptable

Hotfix v0.10.4

08 Oct 16:06
Compare
Choose a tag to compare

Version 0.10.4

  • Issue #80 - Print to PDF: AttributeError: 'NoneType' object has no attribute 'getContentsMargins'

Version 0.10.3

  • Issue #79 - TypeError: unexpected type 'QSize' (thanks to @luc-j-bourhis)

  • Moved project to the PlotPyStack organization.

  • Unit tests: added support for pytest and coverage (60% coverage as of today)

  • Issue #74 - TypeError: QwtPlotDict.init() [...] with PySide 6.5.0

  • Issue #77 - AttributeError: 'XXX' object has no attribute '_QwtPlot__data'

  • Issue #72 - AttributeError: 'QwtScaleWidget' object has no attribute 'maxMajor' / 'maxMinor' / 'stepSize'

  • Issue #76 - [PySide] AttributeError: 'QwtPlotCanvas' object has no attribute 'Sunken'

  • Issue #63 - TypeError: 'PySide2.QtCore.QRect' object is not subscriptable