v0.12.5
Version 0.12.5
- Add support for NumPy 2.0:
- Use
numpy.asarrayinstead ofnumpy.array(..., copy=False) - Update requirements to remove the NumPy version upper bound constraint
- Use
Version 0.12.4
- Fixed segmentation fault issue reported in the
PlotPyproject:- See PlotPy's Issue #13 for the
original issue. - The issue was caused by the
QwtSymbolclass constructor, and more specifically
by its private data object, which instanciated an emptyQtPainterPathobject,
causing a segmentation fault on Linux, Python 3.12 and PyQt5.
- See PlotPy's Issue #13 for the
Version 0.12.3
- Fixed
Fatal Python errorissue reported in thePlotPyproject:- 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
QwtAbstractScaleDrawcache mechanism, which was
keeping references toQSizeFobjects that were deleted by the garbage collector
at some point. This was causing a segmentation fault, but only on Linux, and
only when executing thePlotPytest suite in a specific order. - Thanks to @yuzibo for helping to reproduce the issue and providing a test case,
that is thePlotPyDebian package build process.
- See PlotPy's Issue #11 for the
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 raisingAttributeError) - Removed unnecessary dependencies (pytest-qt, pytest-cov)
- Moved
conftest.pyto project root - Project code formatting: using
ruffinstead ofblackandisort
Version 0.12.1
- Fixed
ColorStops.stopsmethod (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
theQwtAbstractScaleDraw.tickLabelmethod:- Suppressed an unnecessary call to
QFont.textSize(which can be quite slow) - Cached the text size with the label
QwtTextobject
- Suppressed an unnecessary call to
- 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.axisMarginto 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.colorStopsnow returns a list ofColorStop
objects instead of the list of stop values