Skip to content

Releases: PlotPyStack/guidata

v3.1.1 - Maintenance release

25 Oct 16:05

Choose a tag to compare

Version 3.1.1

🛠️ Bug fixes:

  • 'Apply' button state is now correctly updated when modifying one of the following items:
    • dataset.MultipleChoiceItem
    • dataset.dataitems.DictItem
    • dataset.dataitems.FloatArrayItem
  • Fixed minor deprecation and other issues related to locale

💥 Changes:

  • Removed --unattended command line option for pytest:
    • Before: pytest --unattended guidata (to run tests without Qt event loop)
    • Now: pytest guidata (there is no use case for running tests with Qt event loop,
      so the --unattended option was removed and the unattended mode is now the default)
  • Removed CHM documentation (obsolete format)

Version 3.1.0

⚠ Exceptionally, this release contains the following API breaking changes:

  • Moved utils.update_dataset to dataset.conv.update_dataset
  • Moved utils.restore_dataset to dataset.conv.restore_dataset

✔ API simplification (backward compatible):

  • Dataset items may now be imported from guidata.dataset instead of guidata.dataset.dataitems
  • Dataset types may now be imported from guidata.dataset instead of guidata.dataset.datatypes
  • Examples:
    • from guidata.dataset.dataitems import FloatItem becomes from guidata.dataset import FloatItem

    • from guidata.dataset.datatypes import DataSet becomes from guidata.dataset import DataSet

    • Or you may now write:

      import guidata.dataset as gds
      
      class MyParameters(gds.DataSet):
          """My parameters"""
          freq = gds.FloatItem("Frequency", default=1.0, min=0.0, nonzero=True)
          amp = gds.FloatItem("Amplitude", default=1.0, min=0.0)

💥 New features:

  • New dataset.create_dataset_from_dict: create a dataset from a dictionary,
    using keys and values to create the dataset items
  • New dataset.create_dataset_from_func: create a dataset from a function signature,
    using type annotations and default values to create the dataset items
  • dataset.dataitems.StringItem:
    • Added argument password to hide text (useful for passwords)
    • Added argument regexp to validate text using a regular expression
  • dataset.dataitems.FileSaveItem, dataset.dataitems.FileOpenItem,
    dataset.dataitems.FilesOpenItem and dataset.dataitems.DirectoryItem:
    added argument regexp to validate file/dir name using a regular expression
  • dataset.dataitems.DictItem: added support for HDF5 and JSON serialization
  • dataset.io.h5fmt and dataset.io.jsonfmt: added support for lists and dictionnaries serialization

♻ New PlotPyStack internal features:

  • widgets.about: handle about dialog box informations (Python, Qt, Qt bindings, ...)
  • Renamed development environment variable GUIDATA_PYTHONEXE to PPSTACK_PYTHONEXE

🧹 Bug fixes:

  • Fixed Qt6 compatibility issue with QFontDatabase

Version 3.0

See full changelog here.

v3.1.0

13 Oct 15:43

Choose a tag to compare

guidata Releases

Version 3.1.0

⚠ Exceptionnally, this release contains the following API breaking changes:

  • Moved utils.update_dataset to dataset.conv.update_dataset
  • Moved utils.restore_dataset to dataset.conv.restore_dataset

✔ API simplification (backward compatible):

  • Dataset items may now be imported from guidata.dataset instead of guidata.dataset.dataitems
  • Dataset types may now be imported from guidata.dataset instead of guidata.dataset.datatypes
  • Examples:
    • from guidata.dataset.dataitems import FloatItem becomes from guidata.dataset import FloatItem

    • from guidata.dataset.datatypes import DataSet becomes from guidata.dataset import DataSet

    • Or you may now write:

      import guidata.dataset as gds
      
      class MyParameters(gds.DataSet):
          """My parameters"""
          freq = gds.FloatItem("Frequency", default=1.0, min=0.0, nonzero=True)
          amp = gds.FloatItem("Amplitude", default=1.0, min=0.0)

💥 New features:

  • New dataset.create_dataset_from_dict: create a dataset from a dictionary,
    using keys and values to create the dataset items
  • New dataset.create_dataset_from_func: create a dataset from a function signature,
    using type annotations and default values to create the dataset items
  • dataset.dataitems.StringItem:
    • Added argument password to hide text (useful for passwords)
    • Added argument regexp to validate text using a regular expression
  • dataset.dataitems.FileSaveItem, dataset.dataitems.FileOpenItem,
    dataset.dataitems.FilesOpenItem and dataset.dataitems.DirectoryItem:
    added argument regexp to validate file/dir name using a regular expression
  • dataset.dataitems.DictItem: added support for HDF5 and JSON serialization
  • dataset.io.h5fmt and dataset.io.jsonfmt: added support for lists and dictionnaries serialization

♻ New PlotPyStack internal features:

  • widgets.about: handle about dialog box informations (Python, Qt, Qt bindings, ...)
  • Renamed development environment variable GUIDATA_PYTHONEXE to PPSTACK_PYTHONEXE

🧹 Bug fixes:

  • Fixed Qt6 compatibility issue with QFontDatabase

Version 3.0

See full changelog here.

v3.0.6 - Maintenance release

08 Oct 16:43

Choose a tag to compare

Version 3.0.6

Bug fixes:

  • widgets.console.interpreter: replaced threading.Thread.isAlive (deprecated since Python 3.8)

Other changes:

  • DataSet.edit, DataSet.view and DataSetGroup.edit: added missing arguments size and wordwrap

  • Documentation: added check-list before submitting a patch (see contribute.rst file)

  • Fixed some typing annotations and docstrings, as well as Pylint false positives

  • Removed unused functions from guidata.utils.encoding module:

    • transcode
    • getfilesystemencoding
  • Added missing docstrings and typing annotations in modules:

    • guidata.dataset.qtitemwidgets
    • guidata.dataset.qtwidgets
    • guidata.utils.encoding
    • guidata.utils.misc

Version 3.0

See full changelog here.

v3.0.5 - Fixed compatibility with PySide6

26 Sep 16:20

Choose a tag to compare

Version 3.0.5

Bug fixes:

  • Issue #65 - QVariant import erroneously used in typing annotations

Other changes:

  • tests.test_callbacks: added an example of a callback function for dynamically changing the list of choices of a ChoiceItem object

Version 3.0

See full changelog here.

v3.0.4 - New major release

26 Jul 11:44

Choose a tag to compare

New major release:

  • New BSD 3-Clause License
  • Black code formatting on all Python files
  • New automated test suite:
    • Added module guidata.env to handle execution environment
    • Added support for an "unattended" execution mode (Qt loop is bypassed)
    • Added support for pytest fixtures
    • Added support for coverage testing: 70% coverage to date
  • Documentation was entirely rewritten using Sphinx
  • Reorganized modules:
    • Moved guidata.hd5io to guidata.dataset.hdf5io
    • Moved guidata.jsonio to guidata.dataset.jsonio
    • Renamed guidata.userconfigio to guidata.dataset.iniio
    • New package guidata.utils for utility functions:
      • Removed deprecated or unused functions in old guidata.utils module
      • Moved old guidata.utils module to guidata.utils.misc, except the
        functions update_dataset and restore_dataset which are still in
        guidata.utils (root module)
      • Moved guidata.encoding to guidata.utils.encoding
      • Moved guidata.gettext_helpers to guidata.utils.gettext_helpers
    • Splitted guidata.qtwidgets in two modules:
      • guidata.widgets.dockable for dockable widgets
      • guidata.widgets.rotatedlabel for rotated label
  • Other changes:
    • guidata.guitest:
      • Added support for subpackages
      • New comment directive (# guitest: show) to add test module to test suite or
        to show test module in test launcher (this replaces the old SHOW = True line)
    • guidata.dataset.datatypes.DataSet: new create class method for concise
      dataset creation, allowing to create a dataset with a single line of code by
      passing default item values as keyword arguments

v2.3.1: Fixed compatibility with Python 3.11

15 Nov 09:48

Choose a tag to compare

Updated CHANGELOG.md and version

v2.2.1

05 Jun 13:42

Choose a tag to compare

Updated CHANGELOG

Hotfix v2.0.4

11 Mar 09:53

Choose a tag to compare

updated changelog

Added Python 3.10, QtPy 2.0 support (dropped Python 2 support)

27 Dec 11:20

Choose a tag to compare

PySide2 support

23 Aug 12:36

Choose a tag to compare

This release adds PySide2 support.