Vedant Roy
73bc44edbc
Add comments from JS version
2021-05-24 13:15:20 -07:00
Vedant Roy
60c04c13a4
add c binding
2021-05-24 13:15:20 -07:00
Vedant Roy
e694370733
Fix inverted bool + return correct data + remove serde
2021-05-24 13:15:20 -07:00
Vedant Roy
2c51761d01
Implement getAddedChanges
2021-05-24 13:15:20 -07:00
Orion Henry
506d1e61ca
Merge pull request #88 from automerge/implement-new-sequence-patch-format
...
Implement new sequence patch format
2021-05-24 13:11:19 -07:00
Orion Henry
6ebb63bfdd
Merge branch 'main' into implement-new-sequence-patch-format
2021-05-24 15:50:19 -04:00
Orion Henry
17b0d2eb38
cleanup for clippy
2021-05-24 15:07:13 -04:00
Orion Henry
3465517ab3
handle conflicts in list parent modifications
2021-05-24 14:59:09 -04:00
Andrew Jeffery
8af065e8f6
Merge pull request #144 from automerge/expose-encoding-decoding-errors
...
Make `encoding::Error` and `decoding::Error` public.
2021-05-21 14:13:49 +01:00
Andrew Jeffery
c2f2ded69f
Make encoding and decoding errors public
2021-05-21 14:00:17 +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
a0bd33e5a6
Refactor travis to have more jobs ( #120 )
...
* Refactor travis to have more jobs
2021-05-20 11:01:54 +01:00
Andrew Jeffery
e75864a549
Merge pull request #140 from automerge/mismatched-sequence-number
...
Add mismatched sequence number failing test
2021-05-20 08:50:35 +01:00
Andrew Jeffery
d31f704a32
Fix transfer of frontend states when we don't make a change
2021-05-19 22:40:58 +01:00
Andrew Jeffery
ab90ec85f5
Add mismatched sequence number failing test
2021-05-19 22:38:41 +01:00
Andrew Jeffery
2c9e68d344
Implement PartialEq on more structs
2021-05-19 22:38:41 +01:00
Andrew Jeffery
46ff9eabee
Apply clippy suggestion
2021-05-19 22:10:09 +01:00
Andrew Jeffery
37717f2798
Cargo fmt
2021-05-19 19:10:47 +01:00
Andrew Jeffery
098cfc585d
Fix expansion of multi insert indexes ( #138 )
2021-05-19 19:08:52 +01:00
Andrew Jeffery
e619a34c5c
Remove dbg
2021-05-19 10:44:25 +01:00
Vedant Roy
ddc9c6d4ce
Add missing Safety header
2021-05-18 16:25:19 -04:00
Vedant Roy
0df5444669
Better sync test
...
Multiple round trips + exercise encode/decode
2021-05-18 16:25:19 -04:00
Vedant Roy
4b7886dfe6
Remove unused var
2021-05-18 16:25:19 -04:00
Vedant Roy
acf4f19cd5
Make comment clearer
2021-05-18 16:25:19 -04:00
Vedant Roy
98c6ac876d
Implement encode/decode for SyncState
2021-05-18 16:25:19 -04:00
Andrew Jeffery
e2e7483a07
Use elem id from insertion in frontend ( #134 )
2021-05-18 21:24:55 +01:00
Orion Henry
f47ba3c46a
small error slipped through
2021-05-18 10:59:39 -04:00
Vedant Roy
6a4a3c5a00
Don't use ..Default::default() + formatting?
2021-05-18 07:50:35 -07:00
Vedant Roy
1b76115f27
Add unsafe docs + remove extraneous file
2021-05-18 07:50:35 -07:00
Vedant Roy
c274d18528
Add test for sync c bindings
2021-05-18 07:50:35 -07:00
Vedant Roy
305d089180
Add untested C-bindings for sync state
2021-05-18 07:50:35 -07:00
Alex Good
87410e4c8f
Add comment explaining why it doesn't work
2021-05-17 19:53:36 +01:00
Alex Good
9bbaf7cbd5
Merge branch 'main' into implement-new-sequence-patch-format
2021-05-17 13:03:57 +01:00
Andrew Jeffery
426ccbc818
Expose event handler id ( #132 )
2021-05-16 20:16:54 +01:00
Andrew Jeffery
5637956895
Add custom RootDiff type
...
This ensures that the patch starts with the right diff type statically
and will give an error to js during deserialization.
2021-05-16 14:02:57 +01:00
Andrew Jeffery
30a89cb49d
Fix clippy lints
2021-05-16 13:10:28 +01:00
Andrew Jeffery
2e07e93e72
Change patches diffs to be non-optional
2021-05-16 13:01:37 +01:00
Andrew Jeffery
f2025028cf
Fix elem_id in get_patch test
2021-05-15 19:38:11 +01:00
Andrew Jeffery
553bf1f8ef
Handle overwriting inserts with updates from the same actor
2021-05-15 19:14:16 +01:00
Andrew Jeffery
96eef611d0
Default head to index 0
2021-05-15 18:05:25 +01:00
Andrew Jeffery
7c4858e686
Fix obtaining index for set operation
2021-05-15 18:01:03 +01:00
Alex Good
6eb96f2816
Split patch generation out of OpSet
2021-05-14 21:56:24 +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
Alex Good
df3770477b
Move initial patch generation to patches::from_scratch_diff
2021-05-14 21:13:07 +01:00
Alex Good
7d3e0ccc37
Move pending diffs into new patches module
2021-05-14 20:42:04 +01:00
Andrew Jeffery
d82e2ed217
Improve filter_changes for sync ( #126 )
...
* Improve filter_changes for sync
This helps to avoid traversing the entire graph when we get a successive
change that we know can't be a predecessor of the heads.
Also filter_changes shouldn't be globally public.
2021-05-14 20:20:27 +01:00
Andrew Jeffery
f6f874439b
Move decoding to a new module and separate errors ( #129 )
2021-05-14 20:20:05 +01:00
Andrew Jeffery
2aa35bc349
Add derive Arbitrary support behind cargo feature ( #124 )
2021-05-14 16:38:35 +01:00
Alex Good
3d5590f90a
wip
2021-05-13 18:39:05 +01:00
Alex Good
7ccaae92fd
Add test for updates inside conflicted list elements
2021-05-12 23:00:03 +01:00