Skip to content

Releases: redbadger/crux

crux_core-v0.10.0

23 Oct 09:31
Compare
Choose a tag to compare

Summary

crux_core

Several additional methods to help with testing Crux apps:

  • Adds a Clone bound on the Operation trait so that we can examine the operation and still resolve
    its owning request later on — this is a breaking change.
  • Adds a take_effects method on Update to allow you to take effects off the Update that match the predicate
  • Adds a take_effects_partitioned_by method on Update to allow you to take effects off the Update
    that match the predicate and also the remaining effects that don't match

crux_time

  • adds a new Clear variant to to the TimeRequest Operation and augments NotifyAt and NotifyAfter
    with a TimerId to facilitate cancelling requests. This is a breaking change.

What's Changed

New Contributors

Full Changelog: crux_core-v0.9.1...crux_core-v0.10.0

crux_core-v0.9.1

21 Oct 12:34
45adf89
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: crux_core-v0.9.0...crux_core-v0.9.1

crux_core-v0.9.0

16 Sep 10:35
Compare
Choose a tag to compare

The headline for this release is that Capabilities now have an opportunity to register their own types (specifically the types that serde-reflection cannot see, which are typically nested enums).

The built-in Capabilities now do this under the typegen feature, so you'll now need to add the Capability as a build dependency, with the typegen feature enabled, in your shared_types crate.

What's Changed

New Contributors

  • @mre made their first contribution in #251

Full Changelog: crux_core-v0.8.1...crux_core-v0.9.0

crux_core-v0.9.0-rc.1

15 Aug 16:50
Compare
Choose a tag to compare

What's Changed

New Contributors

  • @mre made their first contribution in #251

Full Changelog: crux_core-v0.8.1...crux_core-v0.9.0-rc.1

crux_core-0.8.1

12 Aug 09:59
Compare
Choose a tag to compare

Fix a crash when dropping the core caused by the drop order interacting with async channels - #263

crux_core-v0.8.0

23 May 07:40
Compare
Choose a tag to compare

Note: this is a breaking change release.

There are 2 main changes, both of which are breaking.

  1. Simplify construction of capabilities, so they don't require the app type.
    The Effect derive macro no longer requires the name of the type that
    implements the App trait in situations where its name is not also App.
    This simplifies user code. See #241 for
    more details.

  2. Requests now use EffectId(u32) instead of Uuid. This is the id that is
    used to identify the effect in the effect registry in order to match
    responses from the shell with their initial request. Ids are serialized as a
    plain integer of type u32 and they can be reused as effects are resolved.
    See #238 for more details.

What's Changed

Full Changelog: crux_core-v0.7.6...crux_core-v0.8.0

crux_core-v0.8.0-rc.2

21 May 08:19
20bb674
Compare
Choose a tag to compare

Fixes an issue with passing id across the BridgeWithSerializer.

What's Changed

Full Changelog: crux_core-v0.8.0-rc.1...crux_core-v0.8.0-rc.2

crux_core-v0.8.0-rc.1

20 May 16:48
05fd9e4
Compare
Choose a tag to compare

Updates all the crux_* crates to release candidates, so it can actually be tested :-) Sorry

What's Changed

Full Changelog: crux_core-v0.8.0-rc.0...crux_core-v0.8.0-rc.1

crux_core-v0.8.0-rc.0

20 May 15:54
Compare
Choose a tag to compare

Release candidate for 0.8.0

Note: this is a breaking change release.

There are 2 main changes, both of which are breaking.

  1. Simplify construction of capabilities, so they don't require the app type.
    The Effect derive macro no longer requires the name of the type that
    implements the App trait in situations where its name is not also App.
    This simplifies user code. See #241 for
    more details.

  2. Requests now use EffectId(u32) instead of Uuid. This is the id that is
    used to identify the effect in the effect registry in order to match
    responses from the shell with their initial request. Ids are serialized as a
    plain integer of type u32 and they can be reused as effects are resolved.
    See #238 for more details.

What's Changed

  • add Clone impl for ComposeContext by @adwhit in #237
  • Requests now use EffectId(u32) instead of Uuid by @StuartHarris in #238
  • Simplify construction of capabilities, so they don't require the app type by @charypar in #241

Full Changelog: crux_kv-v0.4.0...crux_core-v0.8.0-rc.0

crux_kv-v0.4.0

17 May 08:46
Compare
Choose a tag to compare

Introduces a Value enum, which can be None for a key that doesn't exist, or where there is no previous_value. See #235.

What's Changed

Full Changelog: crux_core-v0.7.6...crux_kv-v0.4.0