All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
create("ClassName", { props })
andcreate(Instance, { props })
syntax.cleanup()
now acceptsthread
types.- Implicit effects to set children can now recursively create more implicit effects to set children.
spring()
returns a second value, a setter to set position, velocity and impulse.show()
now receives a source to its callback returning the current value of the condition.- Ignore
false
passed as a child.
- A scope can no longer be destroyed while it is active. Strict mode will check for this.
- Implicit effects to set children now unparent all children when the effect is destroyed.
- Error reporting should be improved with better formatting when effects invoke other effects and no more loss of stack traces.
- Aggregate construction when setting properties with
create()
.
- Context functions now also return results.
version
table with current version.
context()
.
root()
now returns its destructor as the first value by default.
- Error stack traces being lost.
root()
now destroys the scope automatically if an error occurs during call.
- Batched updates with
batch()
.
- Improved graph updating algorithm.
- Graph nodes when destroyed no longer destroy children; only owned.
- Graph edge case where a destroyed node can be readded if it was queued for rerun before being destroyed.
- Some properties not being applied when
create()
is used recursively.
cleanup()
accepts objects with aDestroy()
orDisconnect()
interface.read()
as a utility to read sources or passthrough a non-source value.
- Reactive scopes created within reactive scopes are now destroyed on rerun.
untrack()
can be called outside of reactive scopes.changed()
will also run its callback with the initial property value.
show()
andswitch()
not updating when in strict mode.
- Initial release