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.fooo
428c3feef2
chore: create default workspace database ( #454 )
...
* chore: create default workspace database
* chore: fix clppy
2024-04-06 21:04:12 +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
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
c015ee7c7e
fix: peer sync ( #408 )
2024-03-22 21:32:41 +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
Nathan.fooo
a31c246b67
feat: Access control group ( #395 )
...
* chore: access control for group
* chore: access control for workspace
* chore: add test
* chore: enforce group
* chore: update docs
2024-03-19 12:57:08 +08:00
Zack Fu Zi Xiang
5fa6ccdcdb
feat: workspace invitation view shared and accept
2024-03-18 15:59:07 +08:00
Zack Fu Zi Xiang
1dbffaf4f0
Merge branch 'main' into frontend-admin/user-usage
2024-03-14 17:52:20 +08:00
Zack Fu Zi Xiang
0048533914
feat: total document usage
2024-03-14 17:50:19 +08:00
Nathan.fooo
40fc18a499
feat: only enforce when permission change ( #382 )
...
* feat: only enforce when permission change
* chore: fix client api ci
* chore: fix test
* chore: fix test
2024-03-13 17:14:43 +08:00
Zack Fu Zi Xiang
9b28edb5bc
feat: use email for af workspace invitation table
2024-03-06 11:29:07 +08:00
Zack Fu Zi Xiang
36c0181032
Merge branch 'main' into workspace-invite-2
2024-03-05 09:34:35 +08:00
Nathan.fooo
0e4442159e
chore: support client version when connect using webscoket ( #368 )
...
* chore: support client version when connect using webscoket
* chore: update tokio version
* chore: fix audit
* chore: fix wasm test
* chore: update
* chore: update
* chore: update
* chore: update
2024-03-05 07:22:56 +08:00
Zack Fu Zi Xiang
f70995ad05
chore: better error handling for accepting invitation
2024-03-04 20:55:57 +08:00
Zack Fu Zi Xiang
1af1b877ef
Merge branch 'main' into workspace-invite
2024-03-04 12:40:48 +08:00
John Vandenberg
63527e3cae
fix: typos ( #359 )
...
* Fix typos
* chore: solve conflict
---------
Co-authored-by: nathan <nathan@appflowy.io>
2024-03-04 11:32:42 +08:00
Zack Fu Zi Xiang
17a965a30b
chore: remove commented blocks
2024-03-04 09:11:44 +08:00
Zack Fu Zi Xiang
439a59ed2d
chore: save current progress
2024-03-03 19:06:24 +08:00
Zack Fu Zi Xiang
bc3fccfcea
chore: merge with main
2024-03-03 14:37:50 +08:00
Zack Fu Zi Xiang
f1e81d59c4
test: crud flow for workspace invites
2024-03-03 14:26:03 +08:00
Nathan.fooo
0e57de98d8
refactor: Access control ( #361 )
...
* refactor: access level
* refactor: access control
* refactor: enforce action
* refactor: collab cache
* chore: fix test
* chore: fix test
* chore: fix test
* chore: fix test
* chore: commit migration file
* chore: commit migration file
2024-03-03 12:55:12 +08:00
Zack Fu Zi Xiang
e8328fd0a4
feat: workspace invitations
2024-03-03 02:48:01 +08:00
Nathan.fooo
2cf857bd00
feat: optimize websocket message ( #351 )
...
* chore: send multiple message
* refactor: message
* refactor: message
* fix: test
* fix: test
* fix: test
* chore: docs
* fix: test
* chore: support compress
* chore: interval retry
* chore: fix test
* chore: merge main
* chore: clippy
* chore: clippy
* ci: fix test
* chore: clippy
* chore: clippy
2024-03-02 02:53:14 +08:00
Zack
79a0dd43c6
feat: Create workspace ( #357 )
...
* feat: initialize collab for user after workspace creation
* fix: add permission before adding new collab for new workspace
* chore: simplify logic
2024-02-29 13:02:27 +08:00
Nathan.fooo
5ed6a14943
chore: reduce lock required ( #353 )
...
* chore: spawn local task
* chore: spawn local task
* chore: spawn local task
* chore: spawn local task
* chore: fix test
* chore: fix test
* chore: clippy
* chore: clippy
* chore: clippy
* chore: clippy
2024-02-27 18:50:44 +08:00
Zack Fu Zi Xiang
7abba9d7ef
feat: add workspace icon field
2024-02-27 11:26:31 +08:00
Nathan.fooo
deffd074b9
chore: check collab before insert ( #349 )
...
* chore: check collab before insert
* chore: fix audit
* chore: speed test
* chore: add expirate duration for cache encode collab
* chore: fix test
2024-02-25 12:38:07 +08:00
Nathan.fooo
10fc8dd2fe
chore: use Redis cache for enforcer ( #348 )
...
* chore: use redis cache
* chore: use redis to cache enforce result
* fix: test
* fix: test
* fix: test
* fix: test
2024-02-24 15:45:53 +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
b73e7045dc
chore: use redis as encoded collab cache ( #342 )
2024-02-23 00:36:37 +08:00
Zack Fu Zi Xiang
ba989e64f3
feat: added rename workspace
2024-02-22 11:13:37 +08:00
Zack Fu Zi Xiang
ad0f477505
revert to workspace-add-email
2024-02-22 11:09:50 +08:00
Zack Fu Zi Xiang
c50f872bb7
Revert "Merge pull request #328 from AppFlowy-IO/workspace-add-email"
...
This reverts commit 5e7794646a , reversing
changes made to d5869742c2 .
2024-02-22 10:48:10 +08:00
Zack Fu Zi Xiang
446518adf6
feat: api: add rename endpoint
2024-02-22 10:31:51 +08:00
Zack Fu Zi Xiang
4413f61f26
Merge branch 'main' into workspace-add-email
2024-02-20 10:16:58 +08:00
Nathan.fooo
5cd16d7544
chore: load user id and uuid when start ( #329 )
...
* chore: load user id and uuid when start
* chore: fix test
* chore: fix test
2024-02-20 05:43:33 +08:00
Zack Fu Zi Xiang
32fe1cc24d
feat: send email and create user if adding member but member not exist
2024-02-19 15:40:36 +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
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
6f2faff21f
chore: fix log ( #301 )
2024-02-07 08:15:57 +08:00
Nathan.fooo
d497f2ab62
fix: pg lock ( #299 )
...
* chore: fix pg lock
* chore: fix pg lock
2024-02-06 13:44:39 +08:00
Nathan.fooo
1cfb38d7a2
chore: fix pg lock ( #298 )
2024-02-06 08:57:10 +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
Zack Fu Zi Xiang
f849f39133
chore: add flakes to gitignore
2024-01-28 02:01:15 +08:00
Fu Zi Xiang
353065dfbf
feat: add optional name param for workspace creation
2024-01-24 11:35:44 +08:00
Fu Zi Xiang
7c95f6556a
feat: added test case and use triggers
2024-01-23 14:48:25 +08:00
Fu Zi Xiang
27b7b8b5b8
feat: add workspace and delete workspace
2024-01-23 12:10:55 +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
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
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
Zack
24ab19f2a5
feat: use sqlx row stream to load collab policy ( #217 )
...
* feat: use sqlx row stream to load collab policy
* fix: access control object type
2023-12-17 11:24:51 +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
Zack
377d7ad8f7
opti: Select all collab members ( #215 )
...
* feat: use af member stream for populating policies
* fix: add missing sqlx files
* chore: removed unused function
2023-12-16 13:02:37 +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
Jiraffe7
36ef0f13b0
feat: casbin access control ( #178 )
...
* feat: casbin for access control
* fix: method to generate database url instead of ToString
* fix: hold write lock when modifying policies
* chore: fix compile
* fix: remove db constraint for lib integration tests
---------
Co-authored-by: nathan <nathan@appflowy.io>
2023-12-11 11:08:15 +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
58ffae16b1
feat: enable create default documents for user when sign up ( #184 )
...
* chore: send collab with interval
* feat: create workspace template
2023-11-29 06:11:20 +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
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
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
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
5020d4738a
feat: Integrate workspace member ( #140 )
...
* chore: update client api
* chore: return user name in the workspace memeber
* chore: optimize logs
2023-10-25 20:44:30 +08:00
Nathan.fooo
8c1c5d0cd9
feat: insert uid instead of gen it from db ( #139 )
2023-10-25 12:18:33 +08:00
Nathan.fooo
7c503372e0
feat: client-api integration: save user meta data ( #133 )
...
* chore: update
* feat: get user workspace info
* feat: return list of workspace
* feat: return latest workspace id
* feat: latest workspace id
* test: add tests
2023-10-23 15:03:31 +08:00
Nathan.fooo
d0d2e916a7
refactor: hiding sqlx row entitis from client api ( #132 )
2023-10-22 22:10:03 +08:00
Nathan.fooo
7a309c6f69
feat: insert user metadata ( #131 )
2023-10-22 19:21:23 +08:00
Nathan.fooo
1aba1f0cf4
feat: workspace usage test ( #129 )
...
* feat: workspace usage test
* test: add tests
2023-10-22 17:52:10 +08:00
Nathan.fooo
fe5ef43333
refactor: workspace member crud ( #128 )
...
* refactor: workspace member crud
* refactor: update user api
* test: fix test
2023-10-21 20:50:32 +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
3e73adc82d
feat: workspace manager & test ( #117 )
...
* chore: add workspace tests
* chore: add slqx files
* feat: update workspace member role
* chore: update
2023-10-14 12:23:23 +08:00
Nathan.fooo
5c58f95f9f
feat: workspace access control ( #115 )
...
* feat: workspace access control
* feat: extact workspace id from path
* feat: create member with permission set
* chore: update sqlx files
* chore: fix cargo toml warn
* chore: clippy
2023-10-13 20:02:29 +08:00
Fu Zi Xiang
574d2661a1
chore: fix linting
2023-10-13 12:12:12 +08:00
nathan
16d226ffd0
chore: update insert user sql
2023-10-13 11:29:35 +08:00
nathan
fa3d679770
chore: replace sqlx error with custom DatabaseError
2023-10-13 11:19:33 +08:00
nathan
7b77805d8d
chore: add logs
2023-10-13 10:37:28 +08:00
Nathan.fooo
ef726092be
refactor: file storage ( #110 )
...
* refactor: return file id after save to disk
* test: add tests
* chore: mine type
* test: disbale two client sync test
* chore: get file with url
* refactor: client api
2023-10-11 21:36:57 +08:00
Nathan.fooo
128590652e
refactor: collab storage dir ( #108 )
2023-10-10 08:45:29 +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
089b3046ab
chore: implement batch get ( #106 )
...
* chore: implement batch get
* chore: add request id and update the local_server.sh
* chore: update collab commit id
2023-10-08 23:53:16 +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
19ee96db4a
chore: rename crate ( #82 )
2023-09-28 22:20:48 +08:00