All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.15.0 - 2024-12-03
- Add
#[actuate(path = "..")]
attribute toData
macro and use fully-qualified path to Actuate by default (b159478).- This allows for use of the
Data
macro without importing the fullprelude
.
- This allows for use of the
- Replace
DynCompose::new
withdyn_compose
constructor fn (9d65ec8). - Return
Rc
from use_contextfn use_context<T: 'static>(cx: ScopeState) -> Result<&Rc<T>, ContextError<T>> { .. }
- This allows for cloning context into
'static
environments.
- Use explicit imports internally to speed up compile times and exclude hidden
Data
traits from prelude (07bfd96).
0.14.2 - 2024-12-03
- Optimize empty composables by skipping creation of ScopeData
- Enable Tokio dependency with animation and ecs features (5263fe4)
0.14.1 - 2024-12-03
- Remove unused tokio read lock guard (0ad962f)
0.14.0 - 2024-12-03
- Remove unsound
Compose
impl forMap
and createMapUnchecked
struct- The original
Compose
impl forMap
would cause undefined behavior if multiple references to the same composable were used. The new unsafeMapUnchecked
keeps this functionality for low-level components, where the documented safety contract can be checked. However, for most composables I now seeCompose + Clone
being a typical pattern (which I think is fine given some composables only copy references when cloned, and references to composables can still be passed around).
- The original
- Impl re-composition when the type has changed in
DynCompose
(7d41100)
- Update docs for
Spawn
composable (205b88a) - Add example to showcase
DynCompose
(7d41100)
0.13.0 - 2024-12-02
- Use
PartialEq
inuse_memo
instead of theMemoize
trait (6539c95)- This is to memoize tuples and other groups of data.
To use pointer equality, you can still use
Signal::generation
orMemoize::memoize
to get the current generation.
- This is to memoize tuples and other groups of data.
To use pointer equality, you can still use
- Remove unused UseWorld struct (81615cd)
- Add more documentation to the
Catch
composable- Adds a quick explanation of using
Result
+Catch
, and links to thecatch
constructor function for more info.
- Adds a quick explanation of using
- Add explanation to
compose::from_iter
(dc6715d)
- Change release procedure and update CI (dd4be8d, fe23aad, 723fe6c)
0.12.0 - 2024-12-02
#![no_std]
support (#100)- Clean up and add internal docs
- Remove Sized bound in Compose trait
- Create
Catch
composable and implCompose
forResult
(#99) - Add getter and setter methods to ScopeData
- Update docs
- Remove is_empty from ScopeState in favor of checking for empty types
- Create README.md
0.11.0 - 2024-11-29
- Update to Bevy 0.15.0
- Disable observers after drop
- Add support for standard references in RefMap and Cow
- Fix formatting in README
0.10.2 - 2024-11-28
- Add specialized impl of SystemParamFunction for Triggers
- Export animation channel
- Impl Data for UseAnimated
- Impl Data for Pin
- Impl Data for Box<dyn Future<Output = ()>>
- Allow return values for Data fns
- Create
use_animated
hook (#88) - Fix tasks not running on the ecs
0.10.1 - 2024-11-26
- Apply system params in use_world_once
- Apply deferred system param updates
- Add SignalMut::set_if_neq and generation methods