04e021f964
feat: don't use async-trait for api::Controller
...
make it still available via feature `async-trait` if it is necessary to
use auto traits downstream, however documentation should now be more
readable
2024-09-05 23:27:57 +02:00
d25e744a37
docs: improved cargo docs, rewrote readme
...
Co-authored-by: alemi <me@alemi.dev>
2024-09-05 01:45:48 +02:00
bfe84c45e0
docs: re-documented remaining members
2024-09-04 21:37:35 +02:00
f0a6a6b730
docs: remade docstricts, refactored a bit
...
refactor shouldn't impact external apis and mostly just moves stuff
around to make sense documentation-wise
Co-authored-by: zaaarf <me@zaaarf.foo>
2024-09-04 20:03:34 +02:00
cf1e910dcb
feat: reworked cursor worker/controller
...
now its more similar to buffer controller/worker and it behaves more
like an actor/service
2024-09-01 03:08:43 +02:00
b98be22a8b
feat: more capillar errors
...
so its clear that some functions wont return a transport error or an rpc
error
2024-09-01 02:46:03 +02:00
cschen
0b1a542ed5
fix: we clip the change span in from 0 to the buffer length, this avoids that
...
badly formatted changes will crash the worker.
Previously I was able to crash the worker by sending oob changes.
chore: improved text change docs a lil bit
2024-09-02 11:31:36 +02:00
cschen
d0d57f6fd5
fix: whops, (I don't know why this bug is still here)
2024-09-01 15:49:54 +02:00
cschen
e7272753e6
Merge branch 'dev' into pyo3_bump
2024-08-21 15:03:10 +02:00
0154e5a032
fix: try_recv() channel error : delta may be None
...
basically if there was no change to report, the oneshot would not get
updated which is bad. so we put back the version we got and send a None
(the channel now has nullable TextChange). so basically its always a
try_recv, but its fine since recv is implemented with try_recv + poll
anyway
2024-08-17 00:17:01 +02:00
cschen
ef2285d0f3
Merge branch 'dev' into pyo3_bump
2024-08-16 16:50:55 +02:00
cschen
610576f8b7
feat: Bumping to pyo3 0.22, removing pyo3-asyncio, moving code around to allow for
...
smoother pyo3 aggregation.
2024-08-16 12:58:43 +02:00
8b704fa668
feat: impl so no longer needed from::
...
Co-authored-by: zaaarf <me@zaaarf.foo>
2024-08-15 22:48:03 +02:00
a8ce56bcc0
feat: callback gets the controller itself as arg
2024-08-15 20:41:53 +02:00
d3ce714070
feat: rather than +Debug, make a newtype
2024-08-15 20:15:23 +02:00
7900ca08a7
feat: added back .callback() to controller api
2024-08-15 19:32:01 +02:00
3e37d4ffe3
fix: don't send anything if change is a noop
2024-08-14 23:53:51 +02:00
e43105b919
fix: textchange can be both delete and insert
2024-08-14 23:46:16 +02:00
cschen
c58d1db58b
fix: proper translation from dt::Operation to Textchange
...
Co-authored-by: alemi <me@alemi.dev>
2024-08-14 17:16:05 +02:00
97b7504098
feat: hash is a public ext
2024-08-14 17:12:36 +02:00
cschen
d22446ee10
fix: this time is the good one
2024-08-14 16:31:28 +02:00
cschen
6c30699acc
Revert "(to alemi: always has been) fix: try now lmao."
...
This reverts commit 1b5b9e74bf
.
2024-08-14 16:15:42 +02:00
cschen
1b5b9e74bf
(to alemi: always has been) fix: try now lmao.
2024-08-14 16:07:19 +02:00
413247f9b4
fix: update local version on send
...
also keep a branch on which we merge editor's changes, which kind of
solves our race condition thing
Co-authored-by: cschen <cschen@codemp.dev>
2024-08-14 15:55:18 +02:00
cschen
ef9da1740a
chore: explaining an extra thing
2024-08-14 13:34:01 +02:00
cschen
4d65b2db7d
fix: error in the worker that merged more operations than needed.
2024-08-14 13:32:18 +02:00
a9d713fd75
feat: async try_recv, delta_request
...
Co-authored-by: alemi <me@alemi.dev>
2024-08-14 00:24:32 +02:00
2a016a6619
fix: add .content() back
...
except now its async and can fail and basically requests the worker to
generate the content for us on demand
Co-authored-by: zaaarf <me@zaaarf.foo>
Co-authored-by: cschen <cschen@codemp.dev>
2024-08-13 18:03:20 +02:00
cschen
9acb7b6007
wip: Some attempts at getting DT to work with buffer controller and buffer worker!
...
This attempt doesn't use a ref to the crdt! But uses an extra channel!
2024-08-13 00:36:09 +02:00
781a130c62
chore: moved tools into ext
2024-08-10 16:13:16 +02:00
61be0009ba
fix: removed InternallyMutable::wait
...
its broken in weird ways, just dont use it that way
2024-08-09 00:40:46 +02:00
0ca5165b73
feat: improve InternallyMutable
2024-08-08 21:55:52 +02:00
59d8a4640d
fix: proper lifetime for cursor, renamed methods
...
Co-authored-by: zaaarf <me@zaaarf.foo>
2024-08-08 02:29:45 +02:00
6e9727128d
feat: controllers now implement stop
...
Co-authored-by: zaaarf <me@zaaarf.foo>
2024-08-08 00:28:15 +02:00
cd8f7cd5c5
feat: internally mutable
...
Co-authored-by: zaaarf <me@zaaarf.foo>
2024-08-08 00:27:24 +02:00
ffa8d8ea82
Updated Javascript Glue with Napi
...
Co-authored-by: alemi.dev <me@alemi.dev>
2024-08-07 23:06:33 +02:00
6212718e99
feat: recv, buffer_list, tweaks, gradle
2024-08-07 10:22:01 +02:00
05a4c88967
fix: controller with 1 generic
2024-08-06 23:00:45 +02:00
Camillo Schenone
f9784e961d
feat: updated to new glue, magic.
...
fix: added sublime junk to gitignore
2024-08-05 22:44:46 +02:00
39533ae086
feat: wrappers for Cursor and Op
...
so plugins dont need to interact directly with our underlying proto
struct, nor our underlying crdt ops. also for wrapping directly in glue
2024-08-05 19:15:30 +02:00
84c77eaca3
feat: inner Arc<T> on controllers
...
so we can wrap them directly in our glue
2024-08-05 19:14:35 +02:00
a38c28f401
feat: moved out proto + feature flag cleanup
...
Co-authored-by: alemi <me@alemi.dev>
2024-03-09 19:59:36 +01:00
c9a36ea8ec
fix: cleaned up code, fixed multi-op change issues
2024-02-09 00:35:08 +01:00
1cf17dc151
chore: proto cleanup and simplification
...
reuse as much as possible, keep rpc messages close with their rpc,
helper struct for uuid with into() and from(). also replaced the simple
things, such as imports and struct fields
2024-02-07 01:09:28 +01:00
4ae31df3ff
chore: moved select_buffer under buffer::tools
...
needed to more appropriately subdivide feature flags
2024-02-01 17:54:56 +01:00
741a074464
feat: implemented leave workspace and list buffer users, various fixes
2024-01-25 17:05:06 +01:00
94a7786812
feat: workspaces and new library structure
...
Co-authored-by: alemi <me@alemi.dev>
Co-authored-by: frelodev <frelodev@gmail.com>
2024-01-25 02:13:45 +01:00
7ad1da0f27
chore: updated docs, getter for buf name
2023-11-30 03:41:53 +01:00
9d349e1b1e
fix: remove tracing
2023-11-30 03:08:22 +01:00
3197c083bf
fix: discard empty textchanges, drain range
2023-11-30 03:04:26 +01:00