2 releases

0.1.0 Mar 6, 2021
0.1.0-alpha.0 Apr 9, 2020

#5 in #artemis


Used in 3 crates (via artemis)

MIT/Apache

470KB
12K SLoC

GraphQL 6.5K SLoC // 0.0% comments Rust 5.5K SLoC // 0.0% comments

Artemis

In greek mythology, Artemis is the goddess of the hunt, wilderness and wild animals and twin sister of Apollo.
In Rust, it's a GraphQL Client inspired by apollo-client and urql, but with advanced code generation and compile time validation.

 
THIS IS SUPER DUPER WORK IN PROGRESS! IT WILL PROBABLY NOT COMPILE WHEN YOU READ THIS!
Well, the badges will tell you actually, now that CI is set up.

Linux (Stable) Linux (Beta) Linux (Nightly)

Changelog

artemis

v0.1.0-alpha.1:

  • Added to_str method on OperationType. This is for use in artemis-normalized-cache, static string slices are more efficient than Strings.
artemis-normalized-cache

v0.1.0-alpha.1:

  • Improved read performance by approximately a factor of 4. We're now almost three times as fast as @urql/exchange-graphcache on reads! The write path is unaffected pending later optimizations.

v0.1.0-alpha.2:

  • Further improved read performance, now approximately 5 times as fast as @urql/exchange-graphcache. The write path is unaffected pending later optimizations.

v0.1.0-alpha.3:

  • Improve write performance by approximately a factor of 9, now 3.5 times as fast as urql. After improved measurements it seems read performance is actually just 1.5 times as fast as urql in read performance, but an apples to apples comparison between Rust and JavaScript is impossible so these numbers aren't perfect.

v0.1.0-alpha.4:

  • There was an off-by-10 error on the last benchmark, we were actually 0.35 times as fast as urql on writes. Now we're at least up to 0.7x after another major optimization. Further optimizations will be difficult without a garbage collector.

Dependencies

~4MB
~83K SLoC