Skip to content

Releases: redbadger/crux

crux_kv-v0.1.4

25 Oct 08:48
Compare
Choose a tag to compare

Other

  • versions for compatibility with semver checks
  • implement derive macro for Capability trait

crux_http-v0.4.2

25 Oct 08:47
Compare
Choose a tag to compare

Other

  • versions for compatibility with semver checks
  • update deps
  • deps + tweaks
  • deps
  • deps
  • deps
  • capability doc tests
  • deps

crux_core-v0.6.4

25 Oct 08:46
Compare
Choose a tag to compare

Other

  • update deps
  • update leptos examples to remove Scope
  • deps + tweaks
  • avoid unnecessary coercion
  • Remove existing generated java files before generating the new set
  • deps
  • deps

v0.6.3

26 Jul 16:09
Compare
Choose a tag to compare

Very minor release of crux_core (v0.6.3) that corrects (and tests) more of the examples in the docs.

The examples in the repo have been overhauled and improved.

What's Changed

Full Changelog: v0.6.2...v0.6.3

crux_http v0.4.0

05 Jul 08:36
Compare
Choose a tag to compare

Published v0.4.0 of crux_http Crux HTTP Capability, which adds response headers to the capability's protocol. It also adds builders for HttpRequest and HttpResponse.

This is a breaking change as the HttpResponse struct now has an extra field.

For more details see #119

v0.6.2

13 Jun 13:29
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.6.1...v0.6.2

v0.6.1

10 Jun 21:04
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.6.0...v0.6.1

v0.6.0

18 May 14:57
Compare
Choose a tag to compare

This release of Crux uses Bincode instead of Bcs for serialization. See #106 for rationale.

What's Changed

Full Changelog: v0.5.0...v0.6.0

v0.5.0

18 May 12:38
Compare
Choose a tag to compare

Introduces register_app() that generates all the foreign types (in Swift, Kotlin, TypeScript) used by your app. Enables the following pattern in shared_types/build.rs:

let mut gen = TypeGen::new();
gen.register_app::<App>().expect("register");

This comes at the cost of deriving crux_macros::Export for your capabilities, like below (or implementing the Export trait manually):

#[cfg_attr(feature = "typegen", derive(crux_macros::Export))]
#[derive(Effect)]
pub struct Capabilities {
    pub http: Http<Event>,
    pub render: Render<Event>,
    pub sse: ServerSentEvents<Event>,
}

(see https://redbadger.github.io/crux/getting_started/core.html#create-the-shared-types-crate for more details)

What's Changed

  • Make event argument of Capability trait Send by @charypar in #101
  • Add a typegen interface for registering a type with samples by @wasnotrice in #104
  • Add autodiscovery for type generation by @charypar in #105
  • enable windows users to build the android project by @DominicD in #103

New Contributors

Full Changelog: v0.4.0...v0.5.0

v0.4.0

17 Apr 11:37
Compare
Choose a tag to compare

Note: Version 0.4.0 of crux_core includes breaking changes that affect shells that are written in Rust (foreign language shells are unaffected).

Rust shells can now call the core directly (i.e. without serialization), but effects now carry requests instead of just operations. Requests can be passed directly back to the core for resolution. See the web-yew Counter example to see how this now works (https://github.com/redbadger/crux/blob/master/examples/counter/web-yew/src/main.rs).

Also the AppTester API has changed. The TestEffect is no longer needed and has been removed. The effects can be resolved in the same way as a Rust shell would do it (e.g. https://github.com/redbadger/crux/blob/master/examples/counter/shared/src/app.rs#L165)

New Contributors

Many thanks for contributions of core changes and new examples by

Full Changelog: v0.3.0...v0.4.0