Commit graph

48 commits

Author SHA1 Message Date
Andrew Jeffery
01ae8e0ece Fix overflow panic in apply_local_change 2021-05-20 13:57:44 +01:00
Andrew Jeffery
d5dfefb704
Fix backend panics (#141)
* Fix a panic when indexing the bytes

* Fix leb failing to read enough bytes

* Fix another panic out of bounds

* Use get rather than checking

* Check addition with arbitrary val

* Add backend load fuzzing

* Handle no ops sub

* Fix another index out of bounds
2021-05-20 11:24:23 +01:00
Andrew Jeffery
641fd11703
Change init to new and add defaults (#130)
Structs should use `new` for the constructor name and implement
`Default` where they can.
2021-05-14 21:35:09 +01:00
Andrew Jeffery
f6f874439b
Move decoding to a new module and separate errors (#129) 2021-05-14 20:20:05 +01:00
alexjg
e92188104f
Ensure that ChangeBytes::compressed contains the original compressed bytes (#112)
* Ensure that ChangeBytes::compressed contains the original compressed bytes, fixes #95

* Fix clippy

* Move bytes into decompress check

Co-authored-by: Andrew Jeffery <dev@jeffas.io>
2021-05-11 10:33:12 +01:00
Andrew Jeffery
d1934f2286 Add formatting config 2021-04-26 09:42:36 -07:00
Andrew Jeffery
aebfdc6572 Update patches with pending_changes 2021-04-24 14:25:31 -07:00
Alex Good
82cf04ae49 Implement compression 2021-03-27 16:52:43 +00:00
Alex Good
c103b0638e Ritual abasement at the altar of clippy 2021-03-02 19:35:00 +00:00
Alex Good
4f4674a4a1 Implement cursors in frontend 2021-03-02 16:07:52 +00:00
Alex Good
26dfc7ea40 Implement cursor logic in backend 2021-02-12 12:03:10 -05:00
Orion Henry
c135b02a48 full document compression 2021-01-29 17:55:59 -05:00
Alex Good
c45d055ce3 Fix clippy 2021-01-16 17:55:30 +00:00
Alex Good
497372db99 Immutable frontend rewrite 2021-01-16 17:40:47 +00:00
Orion Henry
cd6d83ef6d removed an unnecessarry round trip from the change encoder 2021-01-14 14:51:54 -05:00
Alex Good
3c4d64c8a0 Add extra_bytes 2021-01-14 12:30:25 -05:00
Alex Good
3187afcc51 Use more expressive Operation structure 2021-01-14 12:30:25 -05:00
Orion Henry
b6d6b66c06 UncompressedChange moved packages 2021-01-14 12:30:25 -05:00
Alex Good
ce38f5360b Move automerge_backend::UnencodedChange -> automerge_protocol::UncompressedChange 2021-01-14 12:30:25 -05:00
Orion Henry
c1319e06eb patch has a slightly different format now 2020-09-09 12:52:25 -04:00
Alex Good
1ef10f6450 Remove unnecessary in tests 2020-06-04 14:59:19 +01:00
Alex Good
2cf2835e76 Make Patch::clock keys ActorID rather than String 2020-05-30 01:44:00 +01:00
Alex Good
62345c2b5f Make Patch::actor an ActorID, not a string 2020-05-30 01:24:26 +01:00
Alex Good
a36a364443 Rename automerge_protocol::Value -> ScalarValue 2020-05-29 21:04:29 +01:00
Alex Good
b7527c28eb Stop child IDs which are valid object IDs raising MissingObjectError 2020-05-25 19:24:45 +01:00
Alex Good
baaebef6d1 Merge branch 'master' into two-level-objtype 2020-05-25 18:47:46 +01:00
Orion Henry
ab71d01487 internal types impl COPY 2020-05-25 09:43:28 -04:00
Alex Good
2443cdf860 Remove objtype wrapper for diffs 2020-05-24 11:06:23 +01:00
Alex Good
40c8f8f9b3 Move ObjType to two level hierarchy 2020-05-24 10:22:18 +01:00
Orion Henry
48dfd6f29a ActorID is now bytes 2020-05-22 19:00:39 -04:00
Orion Henry
87b44cf977 ChangeRequest->Request 2020-05-22 16:11:26 -04:00
Orion Henry
c6ec8515af move OpType and Operation back to Backend 2020-05-22 15:54:14 -04:00
Orion Henry
a6f1499b2f Change -> UnencodedChange 2020-05-22 15:10:19 -04:00
Orion Henry
92d357efe7 break out change - do some cleanup 2020-05-22 14:57:51 -04:00
Orion Henry
89a1ed46f7 move change back to the backend repo 2020-05-22 13:54:02 -04:00
Orion Henry
ad1b1490d8 fmt 2020-05-21 19:05:57 -04:00
Orion Henry
2d31ed09cc canonical BinChange wip 2020-05-21 18:53:07 -04:00
Alex Good
67f857f248 Run rustfmt 2020-05-16 02:23:26 +01:00
Alex Good
0e5ce40cff Fix tests 2020-05-16 02:20:52 +01:00
Alex Good
9bb374b492 Run rustfmt 2020-05-14 01:05:01 +01:00
Orion Henry
eebcee91dc patch refactor 2020-05-02 20:09:04 -07:00
Orion Henry
a5b0492c36 key/value/diff refactor 2020-04-29 14:49:53 -07:00
Orion Henry
2c599d49d6 get tests working again 2020-04-27 14:22:04 -07:00
Alex Good
9daf1053e6
Formatting and clippy 2020-04-10 18:55:59 +01:00
Alex Good
0ed6586a04 Port backend tests 2020-04-10 18:54:13 +01:00
Alex Good
ce856d4213 wip 2020-04-10 17:23:09 +01:00
Alex Good
948ca78a8b Run cargo fmt 2020-04-10 14:36:26 +01:00
Alex Good
5fbc23fd75 Cleanup, add deserialization for DiffLink 2020-04-10 14:36:12 +01:00