View Source Changelog

v0.8.1 (2023-12-22)

Improvements

  • returns an explicit error message when trying to run queries or create events and the Ecspanse server is not running.
  • documentation improvements.

v0.8.0 (2023-11-14)

Improvements

  • refactor the Ecspanse.Projection to include the state of the projection
    • the projection result is now wraped in a Ecspanse.Projection{} struct, together with the projection state.
    • the Ecspanse.Projection.project/1 callback returns now the projection state as well as the projection result.

Breaking

v0.7.3 (2023-11-13)

Improvements

  • implement the Projection.run?/2 optional callback to run projections conditionally.

v0.7.2 (2023-11-05)

Improvements

v0.7.1 (2023-10-07)

Improvements

v0.7.0 (2023-10-05)

Breaking

Improvements

  • updating projections after all frame systems have run to return a consistent state.

v0.6.0 (2023-10-02)

Features

v0.5.0 (2023-09-28)

Features

v0.4.0 (2023-09-17)

Breaking

  • removed the automatically generated events: Ecspanse.Event.{ComponentCreated, ComponentUpdated, ComponentDeleted, ResourceCreated, ResourceUpdated, ResourceDeleted}. Use custom emitted events or short-lived components instead.

Improvements

  • improves performance for tagged components. The system loop now runs faster when dealing with tagged components.

v0.3.1 (2023-08-30)

Fixes

  • fixes a bug where events could be scheduled after they were batched for the current frame, and before the current events are cleared. Causing some events to be lost. Thanks to @andzdroid for identifying and documenting the issue.
  • fixes a bug where temporary timers would crash. Thanks to @holykol for finding and fixing the issue.

Features

  • imports Ecspanse.Query and Ecspanse.Command in all systems, so all the queries and commands are available without needing the respective module prefix.
  • imports Ecspanse in the setup module that use Ecspanse so the system scheduling functions are available without needing the module prefix.

v0.3.0 (2023-08-21)

Features

v0.2.1 (2023-08-20)

Fixes

  • batch all events only by batch_key to avoid race conditions for different events processed by the same system.

v0.2.0 (2023-08-18)

Breaking

  • use Ecspanse.Component.Timer and use Ecspanse.Event.Timer are now deprecated. Use use Ecspanse.Template.Component.Timer and use Ecspanse.Template.Event.Timer instead.

Features

v0.1.2 (2023-08-14)

Fixes

  • removes unneeded dependency plug_crypto
  • upgrades dependencies: credo, ex_doc, jason

v0.1.1 (2023-08-12)

Fixes

  • adds the missing project :package