Commit graph

20 commits

Author SHA1 Message Date
Andrew Jeffery
fc1b8f87fb
Use SmolStr in place of String (#182)
Most of the strings are small and so fit nicely in a SmolStr. When they
don't it just reverts to using a normal String.
2021-06-19 16:28:51 +01:00
Andrew Jeffery
a744637787
Add get_value to Value (#160) 2021-06-10 14:13:50 +01:00
Vedant Roy
aaccefcb11 Switch back to using Vec<u8> 2021-05-24 13:17:37 -07:00
Vedant Roy
22af56b059 Internal representation = base64 string 2021-05-24 13:17:37 -07:00
Andrew Jeffery
2aa35bc349
Add derive Arbitrary support behind cargo feature (#124) 2021-05-14 16:38:35 +01:00
Andrew Jeffery
3a8447c068
Remove automerge bench harness (#106)
This removes the default wrapper which throws errors with some cli
arguments, e.g. --save-baseline which is nice for being able to compare
versions!
2021-04-27 10:30:07 +01:00
Andrew Jeffery
239fe59090
Use grapheme clusters in Text instead of char (#72)
* Use grapheme clusters in Text instead of char

char is not what users typically expect as a 'letter' so we should use
grapheme clusters instead. These can't always be represented as single
rust char types so the Text now stores a Vec of single grapheme Strings.

* Add test for grapheme clusters in text

* Use debug_assert_eq instead of debug_assert
2021-03-28 21:32:03 +01:00
Andrew Jeffery
776aef660a
Fix alignment error on wasm32 (#71)
* Add failing alignment test case

* Add wasm-pack test to ci

* Box im_rc::Vector contents to satisfy alignment

This makes the frontend not have alignment issues on 32 bit
architectures (e.g. wasm32-unknown-unknown). The box provides a
consistent alignment for the Vector.
2021-03-28 21:28:18 +01:00
Andrew Jeffery
2cc7b60ccb
Update uuid (#52)
This enables it to work for wasm32.
2021-03-18 12:38:05 +00:00
Andrew Jeffery
429b3ebf06
Nostd time (#51)
* frontend: Add std feature

* frontend: Add new_with_timestamper

This allows using the frontend in contexts where SystemTime isn't
available.
2021-03-17 11:55:31 +00:00
Alex Good
4f4674a4a1 Implement cursors in frontend 2021-03-02 16:07:52 +00:00
Alex Good
ae4b9f8f94 Add some benchmarks and make some performance related tweaks 2021-01-25 13:49:38 +00:00
Alex Good
8142d42796 Add first crdt benchmark and some frontend optimisations 2021-01-20 15:18:47 +00:00
Alex Good
497372db99 Immutable frontend rewrite 2021-01-16 17:40:47 +00:00
Alex Good
d7560d88ed Start making errors more descriptive 2020-06-04 00:32:18 +01:00
Alex Good
045656ac46 Port the backend concurrency tests 2020-05-21 18:40:36 +01:00
Alex Good
c415d95c71 Merge branch 'performance' into frontend 2020-05-13 17:53:47 +01:00
Alex Good
0223433a36 WIP 2020-05-05 20:12:42 +01:00
Alex Good
344cfb2a9d WIP 2020-04-13 18:24:19 +01:00
Alex Good
161cd1c827 WIP 2020-04-13 16:39:30 +01:00