Commit Graph

434 Commits

Author SHA1 Message Date
Zack Fu Zi Xiang 572271f751
feat: reuse email link 2024-05-06 14:18:36 +08:00
Bartosz Sypytkowski 47e6f1e8b1
Update Yrs and AppFlowy-Collab (#518)
* chore: updated collab dependencies to v0.2

* chore: update collab to v0.2 and yrs to v0.18

* chore: pinned collab to specific revision

* chore: fix clippy errors

* chore: update commit id

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-05-06 11:30:02 +08:00
Nathan.fooo eba2e0d4db
ci: add test (#516)
* ci: add test

* ci: add test

* ci: add readme

* ci: update test
2024-05-02 21:30:23 +08:00
Bartosz Sypytkowski 29928cb4a7
chore: add more detailed logging around errors in Transaction::try_encode_state_as_update_v1 (#514) 2024-05-01 20:14:27 +08:00
Nathan.fooo 79bb510aaf
ci: run history test (#513)
* ci: run history test

* chore: fix ci
2024-05-01 16:28:07 +08:00
Zack Fu Zi Xiang 9adf3f883c
feat: improve email workspace invitations 2024-04-30 11:07:29 +08:00
Zack Fu Zi Xiang c698f9720e
chore: add missing files 2024-04-29 23:37:18 +08:00
Zack Fu Zi Xiang 206c7a29ea
chore: merge with main 2024-04-29 23:35:03 +08:00
Zack Fu Zi Xiang 6e74449ab1
feat: accept workspace invite email 2024-04-29 19:40:20 +08:00
Khor Shu Heng cbedbcb748
chore: patch for RUSTSEC-2024-0336 (#503) 2024-04-28 13:58:28 +08:00
Nathan.fooo e2fd049333
chore: awarenss with origin (#498) 2024-04-26 19:39:08 +08:00
Nathan.fooo 7b4b9d0c10
chore: folder data check (#496)
* chore: folder data check

* chore: stop observe remote change when specific type of collaboration object override with incorrect data

* chore: commit sqlx file
2024-04-26 13:20:06 +08:00
Nathan.fooo 54dfeb5527
chore: stop retry when current plugin is going to destory (#495) 2024-04-25 20:27:11 +08:00
nathan fdaac9d4aa chore: serde default for object_id 2024-04-24 14:01:29 +08:00
Nathan.fooo a0593b5502
chore: refactor return response with object id (#494)
* chore: refactor return response with object id

* chore: fix ci

* chore: fix ci
2024-04-24 12:07:54 +08:00
Nathan.fooo 5f970a625a
chore: use rust 1.77 (#493) 2024-04-24 10:47:18 +08:00
Nathan.fooo 1019b8c5b6
chore: update collab rev (#490) 2024-04-22 17:15:12 +08:00
Zack ca70c42631
Merge pull request #488 from AppFlowy-IO/gotrue-error
fix: error message remove code
2024-04-22 12:40:56 +08:00
Nathan.fooo efbe9c4a93
chore: move collab rt crate (#489)
* chore: create appflowy collaborate crate

* chore: remove collab-rt

* chore: fmt

* chore: main
2024-04-22 12:14:41 +08:00
Zack Fu Zi Xiang bd5b2e73be
Merge branch 'main' into gotrue-error 2024-04-22 12:06:16 +08:00
Nathan.fooo 842e3d14e5
chore: remove collab state check (#487)
* chore: remove collab ping

* chore: fix tst

* chore: cacel previous actiont
2024-04-22 11:56:22 +08:00
Zack Fu Zi Xiang ca8dcdfd55
fix: error message remove code 2024-04-22 11:28:30 +08:00
Nathan.fooo db23b64229
chore: broadcast check (#485)
* chore: check broadcast continuous

* chore: update log

* chore: update log
2024-04-21 19:31:24 +08:00
Nathan.fooo 0de64f4f71
chore: enable multiple thread of collab-rt crate (#484) 2024-04-21 19:09:16 +08:00
Nathan.fooo 1515ccdb80
chore: fix encode message (#482) 2024-04-21 14:23:31 +08:00
Nathan.fooo 123484c864
chore: sync missing update from vector (#481) 2024-04-20 20:50:16 +08:00
Nathan.fooo 9e1c06a5af
chore: update log (#480) 2024-04-20 10:53:35 +08:00
Nathan.fooo 970fbaed57
feat: using transaction to write multiple records (#477)
* chore: impl batch write

* chore: update test

* chore: using save point to optimize write

* chore: update docs

* chore: fix test

* chore: increase write speed

* chore: use redis sorted set

* chore: fallback to write to disk directly when fail to queue

* chore: fix test

* chore: fix test

* chore: update log

* chore: add metrics
2024-04-19 15:22:57 +08:00
Nathan.fooo 4168d72390
chore: using redis conn for each action (#476)
* chore: batch insert

* chore: opti redis conn

* chore: fix test
2024-04-17 11:41:50 +08:00
nathan 585bd83f1c chore: update log 2024-04-16 21:10:16 +08:00
Nathan.fooo 8ab7815740
chore: reduce pool lock (#475)
* chore: reduce pool lock

* chore: clippy
2024-04-16 20:26:26 +08:00
Nathan.fooo 4d36f7e9e6
chore: fix potential sync issue (#474)
* chore: retry for handle message

* chore: retry when tring to lock the collab
2024-04-16 20:07:47 +08:00
Nathan.fooo 0be4d2d5b5
ci: try to fix flaky test (#473)
* chore: update ping config

* chore: fix test

* chore: fix test
2024-04-16 18:20:36 +08:00
Nathan.fooo f3279e9b4e
feat: implement grpc for history server (#470)
* ci: docker compose for ci

* chore: add test

* chore: imple grpc

* chore: fix test

* chore: fix ci
2024-04-16 14:10:56 +08:00
Kilu.He 5041f9f164
feat: support subscribe token (#464)
* feat: support subscribe token

* feat: support get collab

* feat: support browser rule for get collab

* fix: update collab version
2024-04-15 14:46:30 +08:00
Nathan.fooo 3901356e8a
chore: bump collab version (#471) 2024-04-15 12:35:14 +08:00
Nathan.fooo 28e0e74fd1
feat: Implement history(1) (#466)
* chore: update collab commit

* chore: collab history test

* chore: collab history test

* chore: impl redis stream

* chore: impl redis stream test

* chore: impl migration

* chore: implement history sql

* chore: add test

* chore: add test

* chore: fix test

* chore: update log and test

* chore: add xtask

* chore: clippy

* chore: impl api

* chore: add missing sqlx files

* chore: fix test

* chore: fix test
2024-04-15 09:18:19 +08:00
Nathan.fooo baeeb2c5ce
chore: do not wait insert to redis finish when calling get collab (#468) 2024-04-13 10:26:05 +08:00
Nathan.fooo ecbc935d4b
chore: using spawn blocking (#467) 2024-04-13 00:08:13 +08:00
Zack 9a5636caec
chore: get collab http (#463)
* chore: get collab http

* fix: use correct version

* fix: collab url

* feat: update collab access control middleware
2024-04-12 11:08:38 +08:00
Lucas.Xu 85ac96a24b chore: add comment for sign_in_with_magic_link 2024-04-10 11:07:14 +08:00
Lucas.Xu 09469e86ca feat: expose magic link api 2024-04-10 10:15:50 +08:00
Nathan.fooo e9097107e5
chore: Disable multi thread (#458)
* chore: disable multiple thread

* chore: clippy
2024-04-09 10:07:40 +08:00
Zack Fu Zi Xiang bedae36f8e
chore: merge with main 2024-04-09 09:14:20 +08:00
nathan 84159e4c2c chore: remove unused deps 2024-04-08 21:27:56 +08:00
nathan c4c8911af2 chore: add test 2024-04-08 18:23:25 +08:00
nathan 131c9ed65f chore: use join 2024-04-08 17:23:26 +08:00
Nathan.fooo b1c3d779ba
chore: reduce save collab db operations (#455)
* chore: reduce save collab db operations

* chore: clippy

* chore: add test

* chore: add test

* chore: add test
2024-04-08 14:50:51 +08:00
nathan 4c00236069 chore: enable logs in client api 2024-04-07 16:31:56 +08:00
Nathan.fooo b1a6338527
refactor: actix-ws (#453)
* chore: deduplicate ws message

* chore: remove retry when sending client ws message

* chore: prepare client/server actor test
2024-04-07 12:43:29 +08:00
Nathan.fooo 428c3feef2
chore: create default workspace database (#454)
* chore: create default workspace database

* chore: fix clppy
2024-04-06 21:04:12 +08:00
Zack Fu Zi Xiang 182fefdcd7
feat: add file storage limit error code 2024-04-06 18:18:17 +08:00
Nathan.fooo bdee9fa8dc
feat: add feature brotli (#452)
* feat: add feature brotli

* chore: update reqwest version

* chore: update actix-http

* chore: fix wasm build
2024-04-06 16:43:38 +08:00
Nathan.fooo 6b7af44370
chore: enable multiple thread (#451)
* chore: enable multiple thread

* chore: fix test

* chore: fix test
2024-04-06 15:13:15 +08:00
Zack Fu Zi Xiang 5fc7333b6f
feat: add limit error codes 2024-04-05 20:54:12 +08:00
Nathan.fooo 01f1af98f5
chore: wrapper for collab (#448)
* chore: wrapper for collab

* chore: add tests

* chore: fix audit

* chore: init sync

* chore: disable wasm user test

* chore: disable encode state when start

* chore: fix test
2024-04-05 11:30:00 +08:00
Nathan.fooo 40f88a6231
fix: group might not be ready to receive message (#445) 2024-04-04 15:13:55 +08:00
nathan aa4df32f6d chore: update logs 2024-04-04 09:47:40 +08:00
Zack Fu Zi Xiang 8e27e94804
chore: replace test using invite and accept workspace 2024-04-04 00:03:36 +08:00
nathan 51020b8f03 chore: update logs for encoding collab 2024-04-03 15:02:24 +08:00
nathan d822391dbc chore: update logs for encoding collab 2024-04-03 15:02:11 +08:00
nathan 6137b6a9ab chore: update log & stop requeue snapshot when first trying is fail 2024-04-03 13:17:22 +08:00
Nathan.fooo c77329ea11
chore: encode collab with validate check (#439)
* chore: bump collab

* chore: fix test

* chore: fix test
2024-04-03 09:07:35 +08:00
Nathan.fooo 12d72fa233
chore: client api init sync (#438)
* chore: implement init sync for sync plugin

* chore: bump collab

* chore: bump collab

* chore: fix test
2024-04-02 23:08:15 +08:00
nathan 1101c9d72a chore: update logs 2024-04-02 20:10:22 +08:00
Kilu.He 3bf5fb057d
feat: support client api to wasm (#426)
* feat: support client api to wasm

* fix: cargo fmt

* fix: delete github config

* fix: readme

* feat: add wasm ci

* fix: code review

* fix: add test

* fix: add sign in test

* fix: test error

---------

Co-authored-by: root <root@DESKTOP-RCFUF7L>
Co-authored-by: nathan <nathan@appflowy.io>
2024-04-02 15:19:21 +08:00
Nathan.fooo fbadca759a
chore: retry with exponentail back off (#437) 2024-04-02 09:24:23 +08:00
Nathan.fooo a18b3d7886
feat: using pending to determine init sync or not (#435)
* chore: optimize sync

* chore: optimize sync

* chore: add test

* chore: update collab commit id

* chore: update

* chore: fix ci
2024-04-01 21:59:41 +08:00
Nathan.fooo 5a06cb3278
feat: get collab retry (#434)
* chore: retry when fetch collab doc state

* chore: fix test

* chore: disable log

* chore: fix client api build

* chore: log

* chore: try invite and acccept

* chore: add todo

* chore: update ci
2024-04-01 09:39:02 +08:00
Nathan.fooo 6c96d05e2f
feat: introduce custom function in casbin model that supports compari… (#433)
* feat: introduce custom function in casbin model that supports comparing role or level

* chore: update

* chore: log

* chore: log

* chore: remove cache
2024-03-31 19:54:41 +08:00
Nathan.fooo a6b1c93a84
chore: enable member to access the workspace member list (#431) 2024-03-30 18:29:00 +08:00
Nathan.fooo 0821c052f9
chore: enable feature log for client api (#430)
* chore: enable feature log for client api

* chore: fix ci
2024-03-30 15:39:34 +08:00
Khor Shu Heng ccd11f0b02
refactor: make access control a separate package (#422)
Co-authored-by: nathan <nathan@appflowy.io>
2024-03-30 11:06:49 +08:00
Nathan.fooo d77fb77a3a
feat: validate collab data before writing to disk (#425)
* chore: validate collab

* chore: update test

* chore: partition key

* chore: save collab

* chore: save collab
2024-03-29 14:55:51 +08:00
Nathan.fooo 4fc18d8615
feat: ping collab (#424)
* chore: ping

* chore: update test

* chore: fix test

* chore: ping

* ci: build cache

* chore: sync state

* chore: sync state

* tests: disable read only test
2024-03-28 21:15:14 +08:00
Nathan.fooo cd9fc34465
refactor: crate folder (#423)
* refactor: crate folder

* chore: update docs

* chore: clippy
2024-03-28 11:06:14 +08:00
Nathan.fooo d30cf93a1f
feat: sync protocol (#421)
* chore: send full update when it's first time to sync

* chore: update last sync at
2024-03-27 21:39:47 +08:00
Nathan.fooo 3e36dae50d
chore: remove collab ac cache (#420)
* chore: remove collab ac cache

* chore: update member write workspace role

* chore: fix test

* chore: clippy
2024-03-26 21:36:24 +08:00
Nathan.fooo 6aa05b97d3
chore: metrics for realtime edit (#415)
* refactor: separate group code from rt server

* chore: separate group state

* chore: fix test

* chore: drop group

* chore: update metrics

* chore: metrics for realtime edit

* chore: update project config

* ci: fix test
2024-03-26 13:35:13 +08:00
nathan 80899722bf chore: disable new ack code 2024-03-25 16:17:20 +08:00
Nathan.fooo d4e45efd6a
chore: bump collab commit (#417)
* chore: bump collab rev

* chore: bump collab commit

* chore: custome decode ack code
2024-03-25 16:14:49 +08:00
Nathan.fooo 51ecdd664e
chore: lower tick interval when message is empty (#416)
* chore: lower tick interval when message is empty

* chore: update logs
2024-03-24 21:34:19 +08:00
Nathan.fooo d0c0d7832c
chore: add test for connect state (#414)
* chore: add test

* chore: add test

* chore: disable redis test
2024-03-24 10:35:26 +08:00
Nathan.fooo 4878d51c1b
chore: separate connect control (#413)
* chore: separate connect control

* chore: add tests

* chore: add tests
2024-03-24 07:30:21 +08:00
Nathan.fooo acc13414cf
feat: sync deduplicate (#412)
* chore: update logs

* chore: update logs

* chore: deduplicate messages

* chore: optimize sync interval

* chore: fmt

* ci: test

* chore: clippy

* chore: clippy
2024-03-24 07:30:05 +08:00
Nathan.fooo 47649efe18
chore: add connect at timestamp (#410)
* chore: add connect at timestamp

* chore: fix lock issue
2024-03-23 14:00:22 +08:00
Nathan.fooo 6af8ac0f37
chore: remove realtime user trait (#409)
* chore: remove realtime user trait

* chore: fix fmt

* chore: fix clippy
2024-03-23 11:01:50 +08:00
Nathan.fooo c015ee7c7e
fix: peer sync (#408) 2024-03-22 21:32:41 +08:00
Nathan.fooo c85383b21d
chore: project folder structture (#392)
* chore: docker build

* chore: update

* chore: update

* chore: test stream pubsub

* chore: fix wanrings

* chore: realtime crate

* chore: realtime crate

* chore: realtime crate

* chore: realtime crate

* chore: reanme crates

* chore: reanme crates

* chore: project structure

* chore: disable docker for collab hisotry
2024-03-22 11:24:28 +08:00
Nathan.fooo 0df98e3f04
feat: ack group message (#405) 2024-03-21 07:35:34 +08:00
Lucas.Xu ab9496c248
fix: collab origin issue (#402)
* fix: collab origin issue

* chore: fix lint

* chore: upgrade collab

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-03-20 20:37:45 +08:00
Nathan.fooo 15a07a61e7
feat: implement redis pubsub (#403)
* chore: implement redis pubsub

* chore: fix warns

* chore: use bincode to do serdde
2024-03-20 17:46:01 +08:00
Zack 619f5b3370
Merge pull request #400 from AppFlowy-IO/leave-workspace
Leave workspace
2024-03-20 14:33:47 +08:00
Zack Fu Zi Xiang 52be8855ee
chore: add empty json payload 2024-03-20 14:04:56 +08:00
Zack Fu Zi Xiang 117473d104
feat: leave workspace 2024-03-20 13:07:43 +08:00
Nathan.fooo d4845a6784
feat: group stream (#399)
* feat: group stream

* chore: update
2024-03-20 11:24:31 +08:00
Zack de92490e26
feat: collab-stream redis poc (#83)
* feat: collab-stream redis poc

* fix: remove unneeded print statements

* feat: implementing listening

* chore: fix conflict

* chore: add test

* chore: add test

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-03-20 10:00:25 +08:00
Zack Fu Zi Xiang 44ced4036e
Merge branch 'main' into leave-workspace 2024-03-20 09:35:00 +08:00
Zack Fu Zi Xiang c8133302c1
feat: remove storage limit 2024-03-19 22:13:59 +08:00
Zack Fu Zi Xiang 5f220ab0b0
feat: user leave workspace 2024-03-19 21:58:56 +08:00