Commit Graph

97 Commits

Author SHA1 Message Date
Nathan.fooo 39323d99ac
fix: potential leak (#347)
* fix: potential leak

* fix: potential leak
2024-02-24 07:40:46 +08:00
Nathan.fooo b71e443d3f
refactor: write snapshot (#345)
* chore: increase max connection size of pg (#344)

* chore: refactor snapshot

* chore: fix test

* chore: fix test

* chore: fix test

* chore: metric

* chore: clippy

* chore: fix test

* chore: fix test
2024-02-23 14:36:06 +08:00
Nathan.fooo bf3837b44b
chore: increase max connection size of pg (#344) 2024-02-23 02:21:02 +08:00
Nathan.fooo b73e7045dc
chore: use redis as encoded collab cache (#342) 2024-02-23 00:36:37 +08:00
Nathan.fooo 1590e948c6
feat: Optimize sync (#341)
* chore: optimize sync

* chore: optimize sync

* chore: optimize sync

* chore: update collab rev
2024-02-22 14:18:41 +08:00
Nathan.fooo 399f7ba2b5
chore: abort sync when the update can not apply (#335)
* chore: abort sync when the update can not apply

* chore: fix ci
2024-02-21 09:22:26 +08:00
Nathan.fooo 225887dbee
chore: remove sink lock (#334)
* chore: remove sink lock

* chore: clippy
2024-02-20 14:26:26 +08:00
Nathan.fooo 119d6abe53
chore: enable collab ac (#333) 2024-02-20 11:59:44 +08:00
nathan 1b00f4ba86 chore: disable collab ac 2024-02-20 07:06:37 +08:00
Nathan.fooo 1841dc21e2
chore: flush collab base on edit count (#330) 2024-02-20 06:32:19 +08:00
Nathan.fooo d4f7aac93a
test: add test (#327)
* test: add test

* test: add test

* test: add test

* test: add test

* test: add test
2024-02-19 17:12:07 +08:00
Nathan.fooo 43b46f4259
chore: use dashmap (#322) 2024-02-19 02:59:05 +08:00
Nathan.fooo 05c1b7b2db
feat: Stream msg (#320)
* chore: refactor group
2024-02-18 16:34:47 +08:00
Nathan.fooo 7f12628547
chore: use dashmap (#319) 2024-02-18 11:55:47 +08:00
Nathan.fooo 2f0f093331
refactor: access control (#318)
* refactor: dir

* chore: update

* fix: test

* chore: fix test

* chore: clippy

* chore: update config

* chore: update
2024-02-17 01:15:06 +08:00
Nathan.fooo e999999694
chore: release lock asap (#312) 2024-02-09 14:59:20 +08:00
Nathan.fooo a1494f0d09
feat: Realtime metrics (#309)
* chore: add metric

* chore: add metric

* chore: clippy

* chore: clippy

* ci: set rust version

* ci: set rust version

* ci: set rust version
2024-02-09 12:02:54 +08:00
Nathan.fooo 09664b0aaa
fix: try to fix potential cpu issue (#308) 2024-02-09 07:20:47 +08:00
Nathan.fooo 29a0851f48
feat: Rate limit of ws client (#306)
* feat: implement rate limit for client

* chore: check

* chore: check

* chore: check

* chore: update

* chore: add client version

* chore: update
2024-02-08 15:11:23 +08:00
Nathan.fooo e1307f4f5d
chore: cache within memory size (#305)
* chore: cache within memory size

* chore: update
2024-02-08 08:06:41 +08:00
Nathan.fooo 03471f3af7
chore: update feature of actix (#304)
* chore: update feature of actix

* chore: add logs
2024-02-08 02:32:25 +08:00
Nathan.fooo fa13422a05
chore: logs (#302)
* chore: logs

* chore: logs
2024-02-07 13:00:29 +08:00
Nathan.fooo d851b303bf
refactor: async send ws message in http request (#296)
* refactor: async send ws message in http request

* chore: update

* chore: update logs

* chore: update logs

* chore: clippy

* chore: add device id in header

* chore: fix test

* chore: fix device_id

* chore: fix client id

* chore: ratelimt for client

* chore: bump collab
2024-02-06 15:21:48 +08:00
Nathan.fooo 1a7866e651
chore: use redis to cache collab data (#294)
* chore: use redis to cache collab data

* chore: create table

* chore: use cache

* chore: period check group status

* chore: remove trait

* chore: update logs

* chore: update logs

* chore: update logs

* chore: update logs
2024-02-05 09:54:16 +08:00
Nathan.fooo 2d8579caab
Logs for apply update (#293)
* chore: add logs

* chore: add logs

* chore: clippy
2024-02-05 01:37:28 +08:00
Nathan.fooo 4127f21792
chore: remove logs (#291)
* chore: remove logs

* chore: clippy
2024-02-03 14:50:32 +08:00
Nathan.fooo 9cd1f5ab0a
feat: cache uid (#290)
* feat: cache uid

* chore: remove select uid call

* chore: break loop if mailbox close
2024-02-03 13:08:49 +08:00
Nathan.fooo 3f407c7b9b
chore: increate mailbox capacity (#287) 2024-02-03 08:17:40 +08:00
Fu Zi Xiang 001abfa2ac
fix: cargo deny check advisories 2024-01-18 18:46:47 +08:00
Zack 97d1bb532c
feat: revamp storage api (#251)
* feat: revamp storage api

* feat: client api add method to generate url

* feat: remove some unused deps

* feat: upgrade deps

* feat: add mime to resp
2024-01-11 00:32:11 +08:00
Nathan.fooo 284e2bf638
chore: compress collab data (#249)
* chore: compress collab data

* chore: custom buffer size

* chore: compression ws message

* chore: update log

* chore: update log

* chore: update client max body size

* chore: update client api

* docs: update docs

* chore: retry transaction

* chore: update timeout

* chore: stop previous loop

* chore: log ping error

* chore: log send error

* chore: log error

* chore: update log

* chore: async compress

* feat: stream payload

* chore: update load

* chore: update

* chore: update log

* chore: fix cmt

* fix: client message from http

* chore: bump collab
2024-01-10 08:05:57 +08:00
Nathan.fooo 4886d3d474
chore: rename error message (#247) 2024-01-05 07:29:06 +08:00
Nathan.fooo 8e38ae7b69
refactor: remove rust-s3, sqlx from client-api (#245)
* refactor: remove rust-s3, sqlx from client-api

* chore: fmt

* chore: add ci check

* chore: add ci check

* chore: add ci check
2024-01-05 06:12:01 +08:00
Nathan.fooo c5fe447250
feat: bump collab (#243)
* chore: bump collab

* chore: bump collab

* chore: bump collab
2024-01-03 08:40:26 +08:00
Nathan.fooo a455c9de8e
chore: refactor logs (#236)
* chore: add logs

* chore: return ws state

* fix: init the collab from disk
2023-12-27 05:20:40 +08:00
Nathan.fooo 4d113425fe
feat: override collab when create (#234)
* feat: override collab when create

* chore: clippy

* chore: fmt
2023-12-25 09:40:32 +08:00
Nathan.fooo a07cc0b903
feat: Insert multiple collab (#233)
* chore: remove panic hook

* chore: support insert multiple collabs
2023-12-25 02:03:41 +08:00
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