Release Notes#
0.5.5#
Released: 2024-04-30
bugfix
QtWidgetElement
on_resize
event handler prop.
0.5.4#
Released: 2024-04-29
CommandType
non-private for writing customQtWidgetElement
classes.QtWidgetElement
on_resize
event handler prop.enable_mouse_scroll
prop forDropdown
.
0.5.3#
Released: 2024-04-22
0.5.2#
Released: 2024-04-01
New Hook
use_effect_final()
During
use_async()
CancelledError
, allow callinguse_state()
setter functions without causing re-render of an unmounting component.
0.5.1#
Released: 2024-03-27
Big reductions in memory leaking from
use_state()
Hook.Bugfix: After
App.stop()
, don’t run new renders, also don’t schedule newuse_async()
calls.
0.5.0#
Released: 2024-03-21
0.4.5#
Released: 2024-03-21
extra.PyQtPlot
instructions for disabling mouse interaction.
0.4.4#
Released: 2024-03-16
Inspector is working now with
use_state()
.Delete
StateManager
andStateValue
.Delete all state rollback features.
0.4.3#
Released: 2024-03-06
TextInput
bugfix don’tsetText
on every render.Clean up Python dependencies.
0.4.2#
Released: 2024-02-26
use_effect()
allways run whendependencies
isNone
.extra.PyQtPlot
disable mouse interaction.
0.4.1#
Released: 2024-02-17
Rending logic correctness and stability improvements.
use_async()
window close Task done bugfix.use_state()
will not re-render if state is__eq__
after update.
0.4.0#
Released: 2024-02-08
Major changes to App
and the Window
App
App.start_loop()
runs the event loop to completion. It no longer requires the user to run the loop. The user should never callloop.run_forever()
.- New method
App.stop()
Will unmount all Elements.
Will call all
use_effect()
cleanup functions.Will cancel all
use_async()
tasks and wait until they are cancelled.
- New method
Bugfixes:
use_effect()
runs after all the render prop updates.
0.3.7#
Released: 2024-02-06
Breaking change: Hook
use_async_call()
returns canceller function in a tuple.
0.3.6#
Released: 2024-02-06
Hooks
use_async()
anduse_async_call()
are manually cancellable.
0.3.5#
Released: 2024-02-03
use_async()
bugfix.
0.3.4#
Released: 2024-01-31
New Hook
use_async_call()
0.3.3#
Released: 2024-01-25
Internal improvements and typing-extensions requirement.
0.3.2#
Released: 2024-01-22
Hooks are preserved during hot-reload.
0.3.1#
Released: 2024-01-19
Hot-reload improvements and bugfixes.
TableGridView
improvements and bugfixes.
0.3.0#
Released: 2023-12-19
- New Base Elements:
QtWidgetElement
on_drop
event handler.- Extra Elements
Removed numpy dependency.
Bugfixes in child diffing and reconciliation.
use_effect()
cleanup function can beNone
.Bugfix
use_async()
cancellation of previous task.Base Element
Slider
only allows integer values.Merged Base Elements
Image
andImageAspect
Removed deprecated modules
forms
,plotting
.Hot-reload bugfixes.
0.2.1#
Released: 2023-11-14
0.2.0#
Released: 2023-11-13
This version has a lot of breaking changes. We have done essentially the same upgrade that React.js did when they upgraded to function components and Hooks in version 16.8.
component()
render function decorator instead ofComponent
subclass. Renamed oldComponent
toElement
. Deprecated the API for users to inherit fromElement
. Privatized most of theElement
API.Hooks instead of
StateValue
andStateManager
, which are deprecated.New
with
context manager syntax for declaring children instead of the Element__call__
syntax for declaring children.Moved
ButtonView
,FlowView
,ImageAspect
,TableGridView
to Base Elements.Deprecated all Higher-level Components.
Other miscellaneous improvements.
The old API for writing Elements
by inheriting from the Component
class, overriding the render()
function, and calling self.set_state()
has has been deprecated.
A new API
for writing Elements with the component()
decorator and Hooks has replaced the
old API. Most of the old API machinery still exists, but has been hidden
from the public API. If you want to upgrade
old code to this version but don’t want to completely re-write for the new
API, then you can make a few changes and run your old code.
Component
has been renamed toElement
.The
Element
render()
function has been renamed to_render_element()
. Most other methods ofElement
have also been renamed with a prefix underscore. The methodset_state()
is now_set_state()
.The
StateValue
andStateManager
can be imported from moduleedifice.state
.
0.1.2#
Released: 2023-10-06
PropsDict
type annotations.Documentation and metadata improvements.
0.1.1#
Released: 2023-09-15
Documentation and metadata improvements.
0.1.0#
Released: 2023-09-14
Upgrade to PySide6/PyQt6. Deprecate PySide2/PyQt5.
New Base Component
ImageSvg
.Component
Label
new propslink_open
.QtWidgetComponent
new propssize_policy
.Create the main
QEventLoop
before the firstApp
render.Component
Image
propssrc
can be aQtGui.QImage
.Deleted
setup.py
, added Poetrypyproject.toml
.App
new propsqapplication
.New Higher-level Component:
ImageAspect
.New Higher-level Component:
ButtonView
.New Higher-level Component:
FlowView
.New Higher-level Component:
TableGridView
.
0.0.10#
Released: 2021-07-15
Fix deletion from View and ScrollView.
Add alert and file dialog options.
0.0.9#
Released: 2021-06-20
Add grid view.
Bug fix with overriding default mouse events.
Add global stylesheets.
Fix label_map.
Add optional QApplication app name in the App constructor.
Fix prop comparison of np arrays.
Add support for keydown and keyup events.
Fix on_change event for textinput.
0.0.8#
Released: 2021-02-04
Bug fixes for dynamic loading, and clearer error messages for Dropdowns and Sliders.
0.0.7#
Released: 2021-02-02
Bug fixes for checkboxes and forms.
0.0.6#
Released: 2021-01-27
Support for asyncio.
0.0.5#
Released: 2021-01-26
First public release.