Commit Graph

60 Commits

Author SHA1 Message Date
Nathan.fooo 97aead5282
chore: update log (#226) 2023-12-19 10:53:31 +08:00
Nathan.fooo 5c1a16cec5
chore: Add sync test (#225)
* chore: resume old tests

* chore: bump collab commit id

* chore: clippy

* chore: fix audit
2023-12-19 02:56:56 +08:00
Nathan.fooo 922ef47b23
chore: add logs (#223) 2023-12-18 10:55:08 +08:00
Nathan.fooo 453329dc0c
feat: try to resotre from snapshot when fail to initialize the collab in CollabStoragePlugin (#222) 2023-12-18 02:27:49 +08:00
Nathan.fooo 69ed6ff4e8
feat: create snapshot for collab (#221) 2023-12-17 13:38:55 +08:00
Nathan.fooo b39621e389
refactor: reduce select all workspace memebers call (#216)
* refactor: reduce select all workspace memebers call

* chore: docker build

* refactor: move tests

* chore: expose enforcer on tests

* refactor: update workspace member when recv pg notification

* chore: update test

* chore: commit sqlx file
2023-12-17 02:46:05 +08:00
Nathan.fooo cd2c0a3114
fix: casbin access control (#214)
* chore: fix access control

* fix: create user update collab permissions

* chore: select workspace role it's not found in cache

* fix: encode buffer error

---------

Co-authored-by: Jiraffe7 <twajxjiraffe@gmail.com>
2023-12-16 08:27:57 +08:00
Nathan.fooo 9589054f38
refactor: sync protocol (#203)
* refactor: sync protocol

* chore: update collab rev
2023-12-11 11:27:11 +08:00
Nathan.fooo c0f5c2ce7e
feat: fix flaky test (#202)
* test: fix

* fix: flaky test
2023-12-09 12:48:46 +08:00
Nathan.fooo f13a03bead
chore: bump up yrs (#193) 2023-12-04 12:34:37 +08:00
Nathan.fooo 208a353fef
fix: client api - channel management (#191)
* chore: add logs

* chore: remove dropped channels
2023-12-01 10:52:54 +08:00
Nathan.fooo 79a02edd00
feat: notify user via websocket after profile changed (#164)
* feat: notify user via websocket after profile changed

* chore: update

* chore: update
2023-11-14 12:47:10 +08:00
Nathan.fooo 54ef875f5f
feat: notify user profile change (#163)
* feat: send user profile changes via ws

* test: add tests
2023-11-13 22:58:18 +08:00
Nathan.fooo 29b39f9ba3
feat: Client api url (#162)
* chore: expose client base url
2023-11-13 20:43:04 +08:00
Nathan.fooo c7e90eb24b
feat: stop recv messages when subscribe drop (#159)
* feat: stop recv messages when subscribe drop

* chore: update collab rev

* chore: fmt
2023-11-11 12:04:52 +08:00
Nathan.fooo 487bc25767
fix: subscriber drop (#158)
* chore: test

* chore: test

* chore: test

* chore: test

* chore: test

* chore: test

* chore: test

* chore: test

* chore: test

* chore: test

* chore: test

* chore: test

* chore: test
2023-11-10 13:41:12 +08:00
Nathan.fooo eb633c2ba4
chore: remove subscriber when receive init message (#156) 2023-11-09 16:52:09 +08:00
Nathan.fooo f626e4a3b2
chore: log for broadcast (#154)
* chore: return not found

* chore: add logs

* chore: handle ws error

* chore: add logs

* chore: add logs

* chore: ping

* chore: ping

* chore: add log

* chore: update

* chore: update

* chore: update
2023-11-09 14:24:32 +08:00
Nathan.fooo f1dad07caa
feat: http init sync (#151)
* fix: bugs

* chore: support message type

* refactor: ws message

* feat: post realtime message

* feat: use proto to reduce message size

* ci: update

* ci: install protoc

* ci: update docker

* chore: update ci

* ci: update docker

* ci: fix

* ci: fix

* ci: fix
2023-11-08 15:41:39 +08:00
Nathan.fooo 41e01b91fc
feat: update collab rev and fix some bugs (#148)
* chore: remove todo

* chore: update collab rev

* chore: fmt

* chore: fmt

* chore: cache collab user

* fix: internal error

* ci: fix test

* chore: update collab rev

* ci: fix
2023-11-05 22:43:20 +08:00
Nathan.fooo d088fd2ec8
feat: ws frame size (#146)
* chore: update ws frame size

* chore: update

* chore: update frame size to 64 kb

* chore: fix merge

* chore: update

* chore: update collab rev

* chore: update

* chore: update

* chore: update

* chore: update

* chore: update

* chore: update ws state

* chore: update pg max connect

* chore: fix crash
2023-11-04 21:42:06 +08:00
Nathan.fooo 9c911a3a94
refactor: Error (#143)
* chore: remove api

* chore: update log

* refactor: error

* chore: fmt

* ci: fix test

* ci: fix

* chore: remove unstable
2023-11-02 17:17:34 +08:00
Nathan.fooo d0d2e916a7
refactor: hiding sqlx row entitis from client api (#132) 2023-10-22 22:10:03 +08:00
Nathan.fooo 417d9f1d41
feat: cache workspace member & fix some bugs (#127)
* chore: insert collab member when inserting workspace member

* refactor: test directory

* chore: remove triggers

* test: add more test

* chore: cache workspace memeber role

* chore: update test
2023-10-20 19:43:36 +08:00
Nathan.fooo cb9cdb9280
feat: collab permission test (#126)
* chore: check permission for collab storage proxy

* feat: add permission tests

* chore: skip log
2023-10-19 17:12:21 +08:00
Nathan.fooo 9dc7bbeee0
feat: Collab access control (#120)
* chore: check collab message with access permission

* chore: imple collab permission service

* refactor: migrations

* chore: collab member ops

* chore: collab permission

* chore: update can edit workspace collab

* chore: fix test

* feat: fetch collab members

* chore: fix test

* chore: fix client api

* chore: check permission for collab storage proxy
2023-10-17 14:00:04 +08:00
Nathan.fooo 88be0c2433
refactor: access control (#118)
* refactor: access control

* chore: fix test
2023-10-15 10:56:56 +08:00
Nathan.fooo 3611c2076e
feat: update ws connect setting (#111)
* chore: update ws connect setting

* chore: remove token when token is invalid

* chore: close the ws connect when overflow happened

* fix: reset timing

* fix: reset timing

* chore: sleep if timeout not reach

* chore: sleep if timeout not reach
2023-10-12 16:51:44 +08:00
Nathan.fooo 00a086bc40
feat: collab message definition (#109)
* feat: collab message definition

* chore: update collab rev

* chore: maximum payload size
2023-10-10 17:45:44 +08:00
Nathan.fooo ad5b5b631d
feat: Set token from external (#107)
* chore: set token

* chore: set token

* chore: update

* chore: rm log
2023-10-09 23:07:34 +08:00
Nathan.fooo a02da07627
Test deploy docker log (#105)
* chore: try to fix logs in docker

* ci: test deploy

* ci: log level
2023-10-08 21:42:25 +08:00
Nathan.fooo d3186cc07a
feat: websocket config (#99)
* chore: enable tls feature

* chore: update ws client

* chore: update ws client

* chore: expost database entities

* chore: update ws nginx config

* chore: rename error file

* chore: fix clippy
2023-10-05 17:43:50 +08:00
Zack 583f82b7fb
refactor: collab http (#89)
* refactor: collab http

* fix: sqlx uuid in types client_api
2023-10-04 16:59:03 +08:00
Nathan.fooo 74b583bc62
refactor: test directory (#88)
* refactor: test directory

* chore: rename
2023-10-04 16:57:15 +08:00
Nathan.fooo b0c213b5c0
fix: message queue (#85)
* fix: message queue

* chore: retry sink collab message

* chore: update
2023-10-02 15:28:35 +08:00
Nathan.fooo 3133e5ec32
chore: try fix test (#84) 2023-09-30 12:36:42 +08:00
Nathan.fooo 19ee96db4a
chore: rename crate (#82) 2023-09-28 22:20:48 +08:00
Nathan.fooo b8bd53ff5c
feat: create collab sync crate (#79)
* feat: create collab sync crate

* test: add tst

* test: add test

* test: update tests

* chore: clippy

* chore: clippy

* chore: clippy

* chore: add retry when subscribe group

* chore: disable realtime test
2023-09-28 09:28:46 +08:00
Nathan.fooo b729e3529d
chore: bump collab version (#78)
* chore: bump collab version

* chore: bump collab version

* chore: update

* chore: update

* chore: update

* chore: update tests

* chore: clippy

* chore: clippy

* chore: clippy
2023-09-26 22:52:41 +08:00
Nathan.fooo b08a4a9016
chore: expost sign in url (#76)
* chore: expost sign in url fc

* refactor: realtime test

* chore: add logs

* chore: update

* chore: update

* chore: update

* chore: update

* chore: update

* chore: update

* chore: update

* chore: update
2023-09-26 09:26:35 +08:00
Nathan.fooo cbae9493b7
chore: update collab commit id (#71) 2023-09-22 23:00:36 +08:00
Nathan.fooo ca0813e265
refactor: ws ping (#66)
* chore: ws client

* chore: update ws ping

* chore: fix test

* chore: public funcs

* chore: fix test

* chore: check clent-api compile
2023-09-20 20:53:39 +08:00
Nathan.fooo 7ae645a7c1
test: add ws reconnect test (#58)
* test: add test

* test: add reconnect
2023-09-18 11:42:32 +08:00
Nathan.fooo 8f8f6af0f9
feat: Integrate to client (#52)
* refactor: ws client

* chore: update

* chore: update

* chore: add ext_url

* chore: rename structs

* chore: add token notify
2023-09-17 12:52:44 +08:00
Nathan.fooo d24c13692a
feat: remove actix-web deps from client_api (#49)
* chore: remove actix-web deps

* chore: fix client error

* chore: expose error

* chore: delete tests
2023-09-16 09:31:47 +08:00
Nathan.fooo e9fc2af43c
feat: implement websocket client (#47)
* feat: implement websocket client

* chore: clippy

* chore: update

* chore: update env
2023-09-15 12:11:04 +08:00
Nathan.fooo 939ea29c3b
feat: Realtime multiple conn test(#45)
* chore: multiple connection with same user

* chore: connect with device id

* fix: multiple connection

* test: add more test

* chore: fmt
2023-09-15 09:59:37 +08:00
Nathan.fooo e03a6ce587
test: fix collab edit test (#42)
* test: fix

* chore: cargo sqlx check workspce

* chore: remove rocksdb deps
2023-09-14 14:05:15 +08:00
Nathan.fooo b1adcc7919
test: websocket connect and then edit collab test (#40)
* refactor: realtime dir

* test: add test

* test: fix
2023-09-14 09:34:24 +08:00
Nathan.fooo c42158b7cb
test: add ws connect test (#39)
* test: add ws connect test

* chore: format log
2023-09-13 17:04:42 +08:00