Commit graph

624 commits

Author SHA1 Message Date
Jason Kankiewicz
c3554199f3 Grouped related AM*() functions into separate source files. 2022-05-30 22:36:26 -07:00
Jason Kankiewicz
e56fe64a18 Added AMapplyChanges().
Fixed `AMdup()`.
Added `AMequal()`.
Renamed `AMfreeDoc()` to `AMfree()`.
Added `AMgetHeads()`.
Added `AMgetMissingDeps()`.
Added `AMgetLastLocalChange()`.
2022-05-30 22:34:01 -07:00
Jason Kankiewicz
007253d6ae Updated the file dependencies of the CMake custom
command for Cargo.
2022-05-30 22:27:14 -07:00
Jason Kankiewicz
e8f1f07f21 Changed AMchanges to lazily create AMchange structs.
Renamed `AMadvanceChanges()` to `AMchangesAdvance()`.
Added `AMchangesEqual()`.
Renamed `AMnextChange()` to `AMchangesNext()`.
Renamed `AMprevChange()` to `AMchangesPrev()`.
2022-05-30 22:24:53 -07:00
Jason Kankiewicz
3ad979a178 Added AMchangeActorId().
Added `AMchangeCompress()`.
Added `AMchangeDeps()`.
Added `AMchangeExtraBytes()`.
Added `AMchangeFromBytes()`.
Added `AMchangeHash()`.
Added `AMchangeIsEmpty()`.
Added `AMchangeMaxOp()`.
Added `AMchangeMessage()`.
Added `AMchangeSeq()`.
Added `AMchangeSize()`.
Added `AMchangeStartOp()`.
Added `AMchangeTime()`.
Added `AMchangeRawBytes()`.
Added `AMchangeLoadDocument()`.
2022-05-30 22:19:54 -07:00
Jason Kankiewicz
fb0ea2c7a4 Renamed AMadvanceChangeHashes() to AMchangeHashesAdvance().
Added `AMchangeHashesCmp()`.
Renamed `AMnextChangeHash()` to `AMchangeHashesNext()`.
2022-05-30 22:12:03 -07:00
Jason Kankiewicz
a31a65033f Renamed AMfreeResult() to AMresultFree().
Renamed `AMfreeDoc()` to `AMfree()`.
Renamed `AMnextChange()` to `AMchangesNext()`.
Renamed `AMgetMessage()` to `AMchangeMessage()`.
2022-05-30 22:08:27 -07:00
Jason Kankiewicz
5765fea771 Renamed AMfreeResult() to AMresultFree().
Remove the `&AMchange` conversion for `AMbyteSpan`.
Add a `&automerge::ActorId` conversion to for `AMbyteSpan`.
Remove the `&Vec<u8>` conversion for `AMbyteSpan`.
Add a `&[u8]` conversion for `AMbyteSpan`.
2022-05-30 22:06:22 -07:00
Jason Kankiewicz
4bed03f008 Added the AMsyncMessage struct.
Added the `AMsyncState` struct.
Added the `AMfreeSyncState()` function.
Added the `AMgenerateSyncMessage()` function.
Added the `AMinitSyncState()` function.
Added the `AMreceiveSyncMessage()` function.
2022-05-30 08:22:17 -07:00
Andrew Jeffery
a569611d83 Use clock_at for filter_changes 2022-05-26 19:03:09 +01:00
Andrew Jeffery
03a635a926 Extend last_sync_hashes 2022-05-26 19:03:09 +01:00
Andrew Jeffery
97a5144d59 Reduce the amount of shuffling data for changes_to_send 2022-05-26 19:03:09 +01:00
Andrew Jeffery
03289510d6 Remove cloning their_have in sync 2022-05-26 19:03:09 +01:00
Andrew Jeffery
b1712cb0c6
Merge pull request #379 from jeffa5/apply-changes-iter
Update autocommit's apply_changes to take an iterator
2022-05-26 13:11:51 +01:00
Andrew Jeffery
dae6509e13 Update autocommit's apply_changes to take an iterator 2022-05-26 09:02:59 +01:00
Andrew Jeffery
587adf7418 Add Eq to ObjType 2022-05-24 09:48:55 +01:00
Orion Henry
c353abfe4e
Merge pull request #375 from jeffa5/get-changes-opt
Get changes opt
2022-05-22 10:30:24 -07:00
Orion Henry
f0abcf0605
Merge pull request #376 from jeffa5/api-interoperability
Use BTreeSet for sync::State to allow deriving Hash
2022-05-22 10:30:07 -07:00
Andrew Jeffery
2c1a71e143 Use expect for getting clock 2022-05-20 18:01:46 +01:00
Andrew Jeffery
8b1c3c73cd Use BTreeSet for sync::State to allow deriving Hash 2022-05-20 16:13:10 +01:00
Andrew Jeffery
3a8e833187 Document num_ops on change 2022-05-20 10:05:08 +01:00
Andrew Jeffery
1355a024a7 Use actor_index to get state in update_history 2022-05-20 10:05:08 +01:00
Andrew Jeffery
e5b527e17d Remove old functions 2022-05-20 10:05:08 +01:00
Andrew Jeffery
4b344ac308 Add sync benchmark 2022-05-20 10:05:08 +01:00
Andrew Jeffery
36857e0f6b Store seq in clock to remove binary_search_by_key 2022-05-20 10:05:08 +01:00
Andrew Jeffery
b7c50e47b9 Just use get_changes_clock 2022-05-20 10:05:08 +01:00
Andrew Jeffery
16f1304345 Fix wasm test calling getChanges with wrong heads 2022-05-20 10:05:08 +01:00
Andrew Jeffery
933bf5ee07 Return an error when getting clock for missing hash 2022-05-20 10:05:08 +01:00
Andrew Jeffery
c2765885fd Maintain incremental clocks 2022-05-20 10:05:08 +01:00
Andrew Jeffery
5e088ee9e0 Document clock module and add merge function 2022-05-20 10:05:08 +01:00
Andrew Jeffery
1b34892585 Add num_ops to change to quickly get the len 2022-05-20 10:05:08 +01:00
Andrew Jeffery
0de37d292d Sort change results from clock search 2022-05-20 10:05:08 +01:00
Andrew Jeffery
b9a6b3129f Add method to get changes by clock 2022-05-20 10:05:08 +01:00
Andrew Jeffery
11fbde47bb Use HASH_SIZE const in ChangeHash definition 2022-05-20 10:04:32 +01:00
Andrew Jeffery
70021556c0
Merge pull request #373 from jeffa5/sync-opt
Sync opt
2022-05-19 13:42:10 +01:00
Andrew Jeffery
e8e42b2d16 Remove need to collect hashes when building bloom filter 2022-05-19 10:41:23 +01:00
Andrew Jeffery
6bce8bf4fd Use vec with capacity when calculating bloom probes 2022-05-19 10:40:44 +01:00
Orion Henry
c7429abbf5
Merge pull request #369 from automerge/webpack
Webpack
2022-05-17 10:28:12 -07:00
Orion Henry
24fa61c11d
Merge pull request #370 from jeffa5/opt-seek-op
Optimise seek op and seek op with patch
2022-05-17 10:27:58 -07:00
Andrew Jeffery
d89669fcaa Add apply benchmarks 2022-05-16 23:13:35 +01:00
Andrew Jeffery
43c4ce76fb Optimise seek op with patch 2022-05-16 23:07:45 +01:00
Andrew Jeffery
531e434bf6 Optimise seek op 2022-05-16 22:45:41 +01:00
Orion Henry
e1f3ecfcf5 typescript implicit any 2022-05-16 15:09:55 -04:00
Orion Henry
409189e36a
Merge pull request #368 from jeromegn/rollback-no-actors
Don't remove last actor when there are none
2022-05-16 08:39:03 -07:00
Orion Henry
81dd1a56eb add start script - split up outputs 2022-05-16 11:33:08 -04:00
Jerome Gravel-Niquet
7acb9ed0e2
don't remove last actor when there are none 2022-05-16 10:56:10 -04:00
Orion Henry
d01e7ceb0e add webpack example and move into wasm folder 2022-05-15 11:53:55 -04:00
Orion Henry
aa5a03a0c4 webpack example config 2022-05-15 11:53:04 -04:00
Orion Henry
f6eca5eec6
Merge pull request #362 from jeffa5/range-rev
Add tests and fixes for double ended map range iterator
2022-05-12 09:02:05 -07:00
Orion Henry
b17c86e36e
Merge pull request #365 from automerge/opset-iter-nth
Implement OpTreeIter::nth correctly
2022-05-12 09:00:29 -07:00