|
1 | 1 | Release Notes
|
2 | 2 | =============
|
3 | 3 |
|
| 4 | +2.0.0: 2024/01/30 |
| 5 | +----------------- |
| 6 | + |
| 7 | +This version of `silx` supports Python 3.7 to 3.12. |
| 8 | +This is the last version of `silx` supporting Python 3.7. |
| 9 | +The `silx.gui` package supports `PySide6`, `PyQt6` and `PyQt5` (`PySide2` is no longer supported). |
| 10 | + |
| 11 | +**Breaking API change**: `silx.gui.plot.PlotWidget`'s add methods (i.e., `addCurve`, `addImage`, ...) returns the plot item object instance instead of its legend (https://github.com/silx-kit/silx/pull/3996). |
| 12 | + |
| 13 | +silx applications |
| 14 | +................. |
| 15 | + |
| 16 | +* Added `silx compare`, a dedicated application to compare images (PR #3788, #3827, #3884, #3943, #3944) |
| 17 | +* `silx view`: |
| 18 | + |
| 19 | + * Added `--slices` option (PR #3860) |
| 20 | + * Added supports for data URL containing "**" to match multiple sub groups (PR #3795) |
| 21 | + * Added keyboard shortcuts for open/close all (PR #3863) |
| 22 | + * Improved: Stopped displaying a message box for each error (PR #3955) |
| 23 | + * Improved: Use matplotlib if OpenGL is not available (PR #3905) |
| 24 | + * Fixed support of NXData image with 0-length axis (PR #3768) |
| 25 | + * Fixed setting focus at startup when opening a dataset (PR #3953) |
| 26 | + |
| 27 | +* `silx.app.utils`: Refactored (PR #3811) |
| 28 | + |
| 29 | +silx.io |
| 30 | +....... |
| 31 | + |
| 32 | +* `silx.io.dictdump`: |
| 33 | + |
| 34 | + * Removed `dicttoh5`'s `overwrite_data` argument (PR #3806) |
| 35 | + * Improved error message for `dicttoh5` with non-serializable data (PR #3937) |
| 36 | + * Fixed `h5todict` errors argument issue (PR #3749) and fixed-length string issue (PR #3748) |
| 37 | + |
| 38 | +* `silx.io.h5py_utils`: |
| 39 | + |
| 40 | + * Fixed `retry` (PR #3775) |
| 41 | + * Fixed: Do not call multiprocessing module in frozen binaries (PR #3984) |
| 42 | + |
| 43 | +* `silx.io.nxdata.parser`: Fixed `NXdata` validation (PR #3782) |
| 44 | + |
| 45 | +* `silx.io.url`: |
| 46 | + |
| 47 | + * Added support of URLs with slices to `DataUrl` (PR #3821) |
| 48 | + * Added typings for `DataUrl` (PR #3968) |
| 49 | + * Fixed `DataUrl`: Allow `file_path` to be `None` (PR #4051) |
| 50 | + |
| 51 | +* `silx.io.utils`: |
| 52 | + |
| 53 | + * Added support of bare file to `get_data` with `check_schemas=True` argument (PR #3859) |
| 54 | + * Improved: `open` do not lock the file (PR #3939) |
| 55 | + * Fixed small/big endian support in test (PR #3873) |
| 56 | + * Fixed `h5py_read_dataset` support of empty arrays (PR #4052) |
| 57 | + |
| 58 | +silx.math |
| 59 | +......... |
| 60 | + |
| 61 | +* Fixed several function docstrings (PR #3774) |
| 62 | +* `silx.math.colormap`: Added `normalize` function to normalize to `uint8` (PR #3785) |
| 63 | +* `silx.math.fit`: Added split pseudo-voigt with split lorentzian fraction (PR #3902) |
| 64 | + |
| 65 | +silx.opencl |
| 66 | +........... |
| 67 | + |
| 68 | +* Fixed regression with PoCL and order of floating point operations (PR #3935) |
| 69 | +* Fixed: skip test on broken platform (PR #3809) |
| 70 | +* Fixed: prevent crash at init when loading silx with PortableCL + Cuda devices (PR #3924) |
| 71 | +* `silx.opencl.atomic`: Added new checking for atomic32 and atomic64 operation (PR #3855) |
| 72 | +* `silx.opencl.backprojection`: Removed deprecated `fourier_filter` function (PR #3816) |
| 73 | +* `silx.opencl.codec`: |
| 74 | + |
| 75 | + * Added `bitshuffle_lz4`` decompression (PR #3714) |
| 76 | + * Added support of pyopencl's `Buffer` and `Array` to `BitshuffleLz4.decompress` (PR #3787) |
| 77 | + |
| 78 | +* `silx.opencl.common``: |
| 79 | + |
| 80 | + * Removed `OpenCL.create_context` `useFp64` argument (PR #3801) |
| 81 | + * Reworked initialisation of the module (PR #3903) |
| 82 | + * Updated: Defer to pyopencl the interpretation of `PYOPENCL_CTX` (PR #3933) |
| 83 | + |
| 84 | +* `silx.opencl.convolution`: Removed Python 2 compatible code (PR #3818) |
| 85 | + |
| 86 | +silx.third_party |
| 87 | +................ |
| 88 | + |
| 89 | +* Removed copy of scipy's Delaunay from third_party (PR #3808) |
| 90 | +* Deprecated `EdfFile` and `TiffIO` (PR #3841) |
| 91 | + |
| 92 | +silx.gui |
| 93 | +........ |
| 94 | + |
| 95 | +* `silx.gui`: |
| 96 | + |
| 97 | + * Added support for `QT_API` environment variable (PR #3981) |
| 98 | + * Added a warning about pyOpenGL and Qt compatibility (PR #3738) |
| 99 | + * Added some Python typing (PR #3957) |
| 100 | + * Removed support of PySide6<6.4 (PR #3872) |
| 101 | + * Improved `qWidgetFactory` test fixture (PR #4009) |
| 102 | + * Fixed support of PySide 6.4 enums (PR #3737) |
| 103 | + * Fixed support of PyQt6 (PR #3960, #3966, #3989, #3999, #4003) |
| 104 | + * Fixed support of OpenGL with python3.12 and pyopengl <=3.1.7 (PR #3982) |
| 105 | + * Fixed OpenGL version parsing (PR #3733) |
| 106 | + |
| 107 | +* `silx.gui.colors`: |
| 108 | + |
| 109 | + * Added indexed color names support to `rgba` (PR #3836, #3861) |
| 110 | + * Added typing (PR #3974) |
| 111 | + * `silx.gui.colors.rgba`: Changed from `AssertionError` to `ValueError` (PR #3864) |
| 112 | + * Improved: `Colormap.setVRange` raises an exception if the range is not finite (PR #3794) |
| 113 | + |
| 114 | +* `silx.gui.constants`: Added: expose URI used to drag and drop `DataUrl` (PR #3796) |
| 115 | + |
| 116 | +* `silx.gui.data`: |
| 117 | + |
| 118 | + * Fixed issue with hdf5 attributes string formatting (PR #3790) |
| 119 | + * `silx.gui.data.DataView`: Removed patch for pymca <v5.3.0 support (PR #3800) |
| 120 | + * `silx.gui.data.HDF5TableView`: Fixed virtual and external dataset information (PR #3717) |
| 121 | + * `silx.gui.data.RecordTableView`: Fixed issue with datasets with many rows failing to load due to incorrect variable type (PR #3926) |
| 122 | + |
| 123 | +* `silx.gui.dialog`: |
| 124 | + |
| 125 | + * `silx.gui.dialog.ColormapDialog`: |
| 126 | + |
| 127 | + * Added `DisplayMode` to API by renaming `_DataInPlotMode` (PR #3964) |
| 128 | + * Fixed layout (PR #3792) |
| 129 | + * Fixed state when updating `Item` (PR #3833) |
| 130 | + * Fixed robustness of tools with item inheriting from `ImageBase` (PR #3858) |
| 131 | + |
| 132 | +* `silx.gui.hdf5`: |
| 133 | + |
| 134 | + * Added `NXnote` to the list of describable classes (PR #3832) |
| 135 | + * Added tests for `H5Node` soft link to an external link issue (PR #3220) |
| 136 | + |
| 137 | +* `silx.gui.qt`: |
| 138 | + |
| 139 | + * Updated PySide6 `loadUi` function (PR #3783) |
| 140 | + * Fixed Python>3.9 support (PR #3779) |
| 141 | + |
| 142 | +* `silx.gui.plot`: |
| 143 | + |
| 144 | + * `silx.gui.plot.actions`: Added typings for `PlotAction` (PR #3941) |
| 145 | + * `silx.gui.plot.items`: |
| 146 | + |
| 147 | + * Added `Marker` item font configuration (PR #3956) |
| 148 | + * Added background color for markers and removed automatic background color (PR #4012) |
| 149 | + * Added `get|setLineGapColor` methods to `Curve` and `Histogram` (PR #3973) |
| 150 | + * Renamed `Shape.get|setLineBgColor` to `get|setLineGapColor` (PR #4001) |
| 151 | + * Deprecated `Curve` and `Image` sequence-like access (PR #3803) |
| 152 | + * Improved handling of data ndim and shape for image items (PR #3976) |
| 153 | + * Fixed: Removed `ImageDataAggregated` all-NaN warning (PR #3786) |
| 154 | + * Fixed `Shape` display with dashes and a background color (PR #3906) |
| 155 | + * `silx.gui.plot.items.roi`: |
| 156 | + |
| 157 | + * Added `RegionOfInterest`'s `getText` and `setText` methods (PR #3847) |
| 158 | + * Added `populateContextMenu` method to ROIs (PR #3891) |
| 159 | + * Added `ArcROI.getPositionRole` method (PR #3894) |
| 160 | + * Added ROIs base classes to documentation (PR #3839) |
| 161 | + * Removed deprecated methods `RegionOfInterest.get|setLabel` (PR #3810) |
| 162 | + * Improved `ArcROI``: Hide the handler instead of hidding the symbol (PR #3887) |
| 163 | + * Improved: highlighted RegionOfInterest takes priority for interactions (PR #3975) |
| 164 | + * Fixed ROI initialisation with parent (PR #4053) |
| 165 | + |
| 166 | + * `silx.gui.plot.ColorBar`: Fixed division by zero issue (PR #4013) |
| 167 | + * `silx.gui.plot.CompareImages`: |
| 168 | + |
| 169 | + * Added profile to compare image (PR #3845) |
| 170 | + * Improved consistency of autoscale (PR #3823) |
| 171 | + * Fixed the A-B visualization mode (PR #3856) |
| 172 | + |
| 173 | + * `silx.gui.plot.ImageStack`: |
| 174 | + |
| 175 | + * Added URL removal feature if the list is editable (PR #3913) |
| 176 | + * Fixed `ImageStack` handling of visible state (PR #3834) |
| 177 | + * Fixed issue (PR #4050) |
| 178 | + |
| 179 | + * `silx.gui.plot.ImageView`: Fixed histogram visibility (PR #3742) |
| 180 | + * `silx.gui.plot.PlotWidget`: |
| 181 | + |
| 182 | + * Breaking changes: |
| 183 | + |
| 184 | + * Changed `add*` methods return value to return the item instead of its legend (PR #3996) |
| 185 | + * Refactored management of items (PR #3986, #3988) |
| 186 | + |
| 187 | + * Added `margins` argument to `PlotWidget.setLimits` (PR #3828) |
| 188 | + * Added `Plotwidget.get|setDefaultColors` and updated default colors behavior (PR #3835) |
| 189 | + * Added `PlotWidget.sigBackendChanged` (PR #3890) |
| 190 | + * Added per-axis zoom (PR #3842, #3843) |
| 191 | + * Added support for 'other' kind of plot items (PR #3908) |
| 192 | + * Added support of matplotlib tight layout as an experimental feature (PR #3865) |
| 193 | + * Added support of line style defined as `(offset, (dash pattern))` (PR #4020) |
| 194 | + * Added support for indexed color names support (PR #3836) |
| 195 | + * Added sample script to check and compare backend features (PR #4031) |
| 196 | + * Changed curve default colors to matchthe one from matplotlib >=2.0 (PR #3853) |
| 197 | + * Changed curve highlighting to use by default a linewidth of 2 (PR #3854) |
| 198 | + * Changed plot axes tick labels behavior to use offsets (PR #4007) |
| 199 | + * Changed: use the default font from mpl (PR #4025) |
| 200 | + * Changed font management (PR #4047) |
| 201 | + * Improved rendering for OpenGL backend (PR #4002, #4015, #4023, #4034, #4038) |
| 202 | + * Fixed documentation (PR #3773) |
| 203 | + * Fixed mouse cursor update (PR #3904) |
| 204 | + * Fixed: do not reset zoom when changing axes scales (PR #3862, #3869) |
| 205 | + * Fixed: use `PlotWidget.get|setActiveScatter` instead of private method (PR #3987) |
| 206 | + * Fixed tick display of time series (PR #4000) |
| 207 | + * Fixed matplotlib marker without background (PR #4028) |
| 208 | + |
| 209 | + * `silx.gui.plot.PlotWindow`: Fixed display of zoom in/out actions (PR #3837) |
| 210 | + * `silx.gui.plot.RulerToolButton`: Added interactive plot measurement tool (PR #3959, #4005) |
| 211 | + * `silx.gui.plot.StackView`: Removed `setColormap` `autoscale` argument (PR #3805) |
| 212 | + |
| 213 | + * `silx.gui.plot.tools`: |
| 214 | + |
| 215 | + * `silx.gui.plot.tools.PositionInfo`: Fixed support of dark theme (PR #3965) |
| 216 | + * `silx.gui.plot.tools.profile`: Fixed concurrency issue with RGB profiles (PR #3846) |
| 217 | + * `silx.gui.plot.tools.roi.RegionOfInterestManager`: |
| 218 | + |
| 219 | + * Changed interaction mode for ROI creation (PR #3978) |
| 220 | + * Fixed display glitch (PR #3954) |
| 221 | + |
| 222 | +* `silx.gui.plot3d`: |
| 223 | + |
| 224 | + * Updated font management (PR #4047) |
| 225 | + * Fixed deprecation warning (PR #4046) |
| 226 | + * `silx.gui.plot3d.ParamTreeView`: |
| 227 | + |
| 228 | + * Added typing and code cleanup (PR #3972) |
| 229 | + * Fixed Qt6 support (PR #3971) |
| 230 | + |
| 231 | +* `silx.gui.utils.image`: Added support of `QImage.Format_Grayscale8` to `convertQImageToArray` (PR #3958) |
| 232 | + |
| 233 | +* `silx.gui.widgets`: |
| 234 | + |
| 235 | + * `silx.gui.widgets.FloatEdit`: |
| 236 | + |
| 237 | + * Added `widgetResizable` feature (PR #4006) |
| 238 | + * Added typing and code cleanup (PR #3972) |
| 239 | + |
| 240 | + * `silx.gui.widgets.StackedProgressBar`: Added widget displaying more complex information progress information (PR #4008) |
| 241 | + * `silx.gui.plot.widgets.UrlList`: Added `UrlList` widget (PR #3913) |
| 242 | + * `silx.gui.widget.UrlSelectionTable`: |
| 243 | + |
| 244 | + * Improved look&feel and enabled drag&drop from `silx view` (PR #3797) |
| 245 | + * Updated: Split the URL column in 3 columns (PR #3822) |
| 246 | + * Fixed exception with interaction, renamed `get|setSelection` to `get|setUrlSelection` (PR #3791) |
| 247 | + |
| 248 | + * `silx.gui.widgets.WaiterOverlay`: Added a widget to display processing wheel on top of another widget (PR #3876) |
| 249 | + |
| 250 | +* `silx.utils`: |
| 251 | + |
| 252 | + * `silx.utils.launcher`: Improved error message (PR #3793) |
| 253 | + * `silx.utils.retry`: Fixed: Lazy-loading of multiprocessing module (PR #3979) |
| 254 | + |
| 255 | +Miscellaneous |
| 256 | +............. |
| 257 | + |
| 258 | +* Dependencies: |
| 259 | + |
| 260 | + * Removed support of Python 3.6 (PR #3712), `PySide2` (PR #3784) and `fabio`<0.9 (PR #3829) |
| 261 | + * Replaced `setuptools`'s `pkg_resources` with `packaging` as runtime dependency (PR #3910) |
| 262 | + * Fixed support of `pint` >= 0.20 (PR #3725), `cython` (PR #3770, #4033) and `PyInstaller` v6 (PR #4041) |
| 263 | + * Fixed deprecation warnings from `numpy`, `scipy`, `matplotlib` and `h5py` (PR #3741, #3777, #4045, #3980) |
| 264 | + |
| 265 | +* Clean-up: |
| 266 | + |
| 267 | + * Removed features deprecated since <1.0.0 (PR #3798, #3799, #3802, #3804) |
| 268 | + * Removed remaining Python2 support (PR #3815, #3840, #3952) |
| 269 | + * Removed unused imports (PR #3814) |
| 270 | + * Replaced `OrderedDict` by `dict` (PR #3830) |
| 271 | + * Updated: Using `black` to format the code (PR #3991) |
| 272 | + * Fixed typo: 4 `"` quotes instead of 3. (PR #3838) |
| 273 | + |
| 274 | +* Build: |
| 275 | + |
| 276 | + * Removed `setup.py` commands and options (PR #3831) |
| 277 | + * Removed constraint on `setuptools` version (PR #3909) |
| 278 | + * Updated build dependencies (PR #4035) |
| 279 | + * Fixed Windows fat binary filename and links (PR #4048) |
| 280 | + * Bump to 2.0.dev (PR #4014) |
| 281 | + |
| 282 | +* Debian packaging: |
| 283 | + |
| 284 | + * Removed Debian 10 and 11 packaging (PR #4017) |
| 285 | + * Added Debian 12 packaging (PR #3812) |
| 286 | + * Added `pytest-mock` to Debian build dependencies (PR #3740) |
| 287 | + * Updated `build-deb.sh` (PR #4022, #3772) and `rules` (PR #3732) |
| 288 | + |
| 289 | +* Updated documentation (PR #3765, #3899, #3970, #3994, #4037, #4036, #4039, #4042, #4055) |
| 290 | +* Updated continuous integration (PR #3727, #3967, #3983) |
| 291 | +* Fixed tests (PR #3722, #3723, #4043, #4044) |
| 292 | + |
| 293 | +1.1.2: 2022/12/16 |
| 294 | +----------------- |
| 295 | + |
| 296 | +This is a bug fix version: |
| 297 | + |
| 298 | +* `silx.gui`: |
| 299 | + |
| 300 | + * Fixed support of `PySide` 6.4 enums (PR #3737, #3738) |
| 301 | + * Fixed OpenGL version parsing (PR #3733, #3738) |
| 302 | + |
| 303 | + * `silx.gui.plot`: |
| 304 | + |
| 305 | + * Fixed issue when `PlotWidget` has a size of 0 (PR #3736, #3738) |
| 306 | + * Fixed reset of interaction when closing mask tool (PR #3735, #3738) |
| 307 | + |
| 308 | +* Miscellaneous: Updated Debian packaging (PR #3732, #3738) |
| 309 | + |
| 310 | +1.1.1: 2022/11/30 |
| 311 | +----------------- |
| 312 | + |
| 313 | +This is a bug fix version: |
| 314 | + |
| 315 | +* Fixed support of `pint` >= 0.20 (PR #3725, #3728) |
| 316 | +* Fixed continuous integration (PR #3727, #3728) |
| 317 | +* Updated changelog (PR #3729) |
| 318 | + |
4 | 319 | 1.1.0: 2022/10/27
|
5 | 320 | -----------------
|
6 | 321 |
|
|
0 commit comments