Guidata

Latest version: v3.7.1

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

Scan your dependencies

Page 2 of 10

3.5.3

In this release, test coverage is 74%.

🛠ī¸ Bug fixes:

* Configuration initialization on Windows:
* For various reasons, a `PermissionError` exception may be raised when trying to remove the configuration file on Windows, just after having created it for the first time. This is due to the fact that the file is still locked by the file system, even if the file has been closed. This is a known issue with Windows file system, and the solution is to wait a little bit before trying to remove the file.
* To fix this issue, a new `try_remove_file` function has been added to the `userconfig` module, which tries multiple times to remove the file before raising an exception.

* Moved back `conftest.py` to the `tests` folder (was in the root folder), so that `pytest` can be executed with proper configuration when running the test suite from the installed package

3.5.2

In this release, test coverage is 74%.

🛠ī¸ Bug fixes:

* Add support for NumPy 2.0:
* Use `numpy.asarray` instead of `numpy.array(..., copy=False)`
* Remove deprecated `numpy.core.multiarray` module import

3.5.1

In this release, test coverage is 74%.

🛠ī¸ Bug fixes:

* [PR 74](https://github.com/PlotPyStack/guidata/pull/74) - `configtools.font_is_installed`: fix PySide2 compat. issue (thanks to xiaodaxia-2008)
* Creating a dataset using the `create` class method:
* Before, passing unknown keyword arguments failed silently (e.g. `MyParameters.create(unknown=42)`).
* Now, an `AttributeError` exception is raised when passing unknown keyword arguments, as expected.
* Processing Qt event loop in unattended mode before closing widgets and quitting the
application, so that all pending events are processed before quitting: this includes
for instance the drawing events of widgets, which may be necessary to avoid a crash
when closing the application (e.g. if drawing the widget is required for some
reason before closing it) or at least to ensure that test coverage includes all
possible code paths.

ℹī¸ Other changes:

* 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.
* Internal package reorganization: moved icons to `guidata/data/icons` folder
* The `delay` command line option for environment execution object `execenv` is now
expressed in milliseconds (before it was in seconds), for practical reasons
* Explicitely exclude NumPy V2 from the dependencies (not compatible yet)

3.5.0

In this release, test coverage is 74%.

đŸ’Ĩ New features:

* New Sphinx autodoc extension:
* Allows to document dataset classes and functions using Sphinx directives, thus generating a comprehensive documentation for datasets with labels, descriptions, default values, etc.
* The extension is available in the `guidata.dataset.autodoc` module
* Directives:
* `autodataset`: document a dataset class
* `autodataset_create`: document a dataset creation function
* `datasetnote`: add a note explaining how to use a dataset
* `BoolItem`/`TextItem`: add support for callbacks when the item value changes

🛠ī¸ Bug fixes:

* Documentation generation: automatic requirement table generation feature was failing
when using version conditions in the `pyproject.toml` file (e.g. `pyqt5 >= 5.15`).
* [Issue 72](https://github.com/PlotPyStack/guidata/issues/72) - unit test leave files during the build usr/lib/python3/dist-packages/test.json
* [Issue 73](https://github.com/PlotPyStack/guidata/issues/73) - `ChoiceItem` radio buttons are duplicated when using callbacks

3.4.1

In this release, test coverage is 76%.

🛠ī¸ Bug fixes:

* [Issue 71](https://github.com/PlotPyStack/guidata/issues/71) - Random segmentation faults with applications embedding `CodeEditor`
* [Issue 70](https://github.com/PlotPyStack/guidata/issues/70) - PermissionError: [Errno 13] Permission denied: '/usr/lib/python3/dist-packages/guidata/tests/data/genreqs/requirements.rst'

3.4.0

In this release, test coverage is 76%.

đŸ’Ĩ New features:

* `dataset.io.h5fmt.HDF5Reader.read` method: added new `default` argument to set
default value for missing data in the HDF5 file (backward compatible). The default
value of `default` is `NoDefault` (a special value to indicate that no default value
should be used, and that an exception should be raised if the data is missing).
* `widgets.codeeditor.CodeEditor`: added new `inactivity_timeout` argument to set
the time (in milliseconds) to wait after the user has stopped typing before
emitting the `CodeEditor.SIG_EDIT_STOPPED` signal.
* Added `execenv.accept_dialogs` attribute to control whether dialogs should be
automatically accepted or not (default is `None`, meaning no automatic acceptance):
this allows more coverage of the test suite. For now, this attribute has only been
proven useful in `tests/dataset/test_all_features.py`.
* Added unit tests for HDF5 and JSON serialization/deserialization:
* Testing an arbitrary data model saved/loaded to/from HDF5 and JSON files,
with various data sets and other data types.
* Testing for backward compatibility with previous versions of the data model
(e.g. new attributes, removed attributes, etc.)

⚠ī¸ API breaking changes:

* `guidata.dataset.io` module is now deprecated and will be removed in a future
release. Please use `guidata.io` instead. This change is backward compatible
(the old module is still available and will be removed in a future release).
The motivation for this change is to simplify the module structure and to help
understand that the scope of the `io` module is not limited to `dataset.DataSet`
objects, but may be used for any kind of data serialization/deserialization.

📖 Documentation:

* Added missing `DataSetEditDialog` and `DataSetEditLayout` classes
* Added missing inheritance/member details on some classes
* Reduced table of contents depth in left sidebar for better readability

Page 2 of 10

Š 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.