Releases: iacobson/ecspanse
Releases · iacobson/ecspanse
v0.10.1
v0.10.0
Features
- introduces
Ecspanse.Snapshotto enable custom save and load functionalities.use Ecspanseaccepts now the:versionoption to ensure backwards compatibility when restoring entities and resources.use Ecspanse.Componentanduse Ecspanse.Resourceaccept now the:export_filteroption.
- new guides section for save and load.
v0.9.0
Breaking
- removes
Ecspanse.Resource.Statein favor ofEcspanse.Statefunctionality.
Features
- allows inserting resources at startup with
Ecspanse.insert_resource/2 - allows state init at startup with
Ecspanse.init_state/2 - introduces
Ecspanse.Statestate functionalities. See the breaking changes for more details. - new library built-in
Ecspanse.Event.StateTransitionevent - new library built-in
Ecspanse.Component.Namecomponent
Improvements
Ecspanse.Query.entity_exists?/1to check if an entity still existsEcspanse.Command.add_and_fetch_component!/2wrapper to return a component after creationEcspanse.Command.update_and_fetch_component!/2wrapper to return a component after update
v0.8.1
v0.8.0
Improvements
- refactor the
Ecspanse.Projectionto include the state of the projection- the projection result is now wraped in a
Ecspanse.Projection{}struct, together with the projection state. - the
c:Ecspanse.Projection.project/1callback returns now the projection state as well as the projection result.
- the projection result is now wraped in a
Breaking
- the
Projection.run?/2callback has been removed. The functionality is now handled by thec:Ecspanse.Projection.project/1callback, by returning:halt. - the
c:Ecspanse.Projection.project/1callback should now return also the state of the projection. See the documentation for more details. - the
c:Ecspanse.Projection.on_change/3callback takes as second and third argument thet:Ecspanse.Projection.t/0. - the
c:Ecspanse.Projection.get!/1callback now returns at:Ecspanse.Projection.t/0.
v0.7.3
v0.7.2
v0.7.1
v0.7.0
Breaking
Ecspanse.Projection.on_change/3replaces theon_change/2callback and now takes both the new projection as well as the previous projection as arguments.
Improvements
- updating projections after all frame systems have run to return a consistent state.