PraxisLIVE v5.7.0
This is the last scheduled release in the v5 series of PraxisCORE and PraxisLIVE as we concentrate on v6 for release later this year. There are some major updates to Ref types and handling, an Async.Queue for handling async calls, and various deprecations for things that will no longer be supported in v6.
PraxisCORE
- Major updates to
Ref, including reference ports and a publish / subscribe mechanism for sharing references from containers to child components.- Added
Ref::set,Ref::setAsync,Ref::orElseandRef::onChangemethods. The existing async support inRefis deprecated and rewritten to use the new method. - Added
@Ref.Publishand@Ref.Subscribeto be used on injectedReffields in parent and children respectively. References are automatically updated, and changes can be listened to usingRef::onChange. - Added support for reference ports -
@In(1) Ref.In<T> inand@Out(1) Ref<T> out. The input type allows to access the list of connected values, and automatically updates on connections or changes to the output reference. - Updated semantics for
Ref::bindwhich can now be configured prior to initialization, and will update on reference changes.
- Added
- Added an injectable queue for
Asyncvalues -@Inject Async.Queue<T> queue. Supports binding actions to happen on completion and limiting the queue size. For use with async returns fromask()andasync(). - Improvements to library support with a PackageURL parsing utility and better support for transient dependencies provided by the runtime itself.
- Added a
.supported-typesproperty to containers. This has minimal use in v5, but is important in development if some features in v6. - Various deprecations, including serializable properties,
Property::valuesandInput::valuesmethods, andPVector(from core types, but some supported will remain in video types).
PraxisLIVE
- No changes in the IDE in this release.