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
JesseBot
36c792915c
feat: add additional info logging to init_state function in application.rs
2023-12-12 12:16:38 +01: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
ee31a680b5
chore: unlimited json payload size ( #197 )
...
* chore: return ok when token is empty
* chore: remove json payload size limit
* chore: clippy
2023-12-06 14:21:11 +08:00
Nathan.fooo
0e2ec381df
chore: implement symmetric encrypt ( #192 )
2023-12-04 11:50:56 +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
62abd8abbf
feat: return request id to client api ( #186 )
...
* docs: update
* chore: add logs
* chore: test
* feat: return request id to the client
* feat: print request id in client api
* fix: lock table when creating new user
2023-11-30 07:40:52 +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
Zack
3890f5d306
feat: User deletion ( #177 )
...
* feat: database trigger for hard delete of user
* feat: clean delete user data
* feat: hard delete when admin deletes
2023-11-27 01:07:45 +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
04989e9485
feat: Upload collab limit ( #160 )
...
* chore: add logs
* feat: update upload collab limit
2023-11-12 16:03:48 +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
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
Fu Zi Xiang
91bc8568ae
fix: unwrap
2023-11-07 11:00:37 +08:00
Fu Zi Xiang
d06f8d89b7
chore: remove unneeded print
2023-11-07 10:01:00 +08:00
Fu Zi Xiang
32390676f1
fix: user not allowed
2023-11-07 01:17:08 +08:00
Fu Zi Xiang
17044ad4f0
feat: indempotency restart for email autoconfirm and non autoconfirm
2023-11-07 00:32:28 +08:00
Fu Zi Xiang
c029759573
chore: merge with main
2023-11-06 23:54:36 +08:00
Fu Zi Xiang
a6f7198443
chore: remove unneeded binding
2023-11-06 13:54:45 +08:00
Fu Zi Xiang
b785b1a482
fix: restartable server when autoconfirm is true
2023-11-06 13:50:38 +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
Zack
37a759ead6
feat: Request Id ( #144 )
...
* feat: added basic monitoring stack
* docs(grafana): import steps and recommended imports
* feat(metric): api metrics
* feat(prometheus): add appflowy cloud metric scraping job
* fix: put back tracing logger
* feat: middleware for path counter
* feat: added gotrue to prometheus metrics
* feat: added nginx to prometheus metrics
* feat: added latency and result to metrics
* feat(nginx): set request id to header
* feat: added request id in nginx
* feat: simplify metric collection
* feat: added simple grafana dashboard for appflowy cloud
* feat(logging): added logging stack
* docs: improve monitoring docs
* docs: added known common issues
* feat: give persistence
* feat: add exemplars
* fix: docker compose volumes
* feat(grafana): add trace id to prometheus datasource
* feat(grafana): improve dashboard to include exemplars
* feat: request id middleware
* docs: move doc to more relevant place
* chore: clean up logs
* feat: try json fmt
* feat: remove pretty
* feat: logging use json in prod but pretty in local
2023-11-03 16:57:05 +08:00
Nathan.fooo
937e3bd9b2
fix: fix some bugs ( #145 )
...
* chore: update
* chore: pub error code
* chore: update
* chore: update
* chore: update
* chore: update
* chore: update
* chore: update max frame size
* chore: update max frame size
* chore: ws buffer size
* chore: update
2023-11-03 14:15:08 +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
Zack
1cc1158d36
feat: Metrics ( #141 )
...
* feat: added basic monitoring stack
* docs(grafana): import steps and recommended imports
* feat(metric): api metrics
* feat(prometheus): add appflowy cloud metric scraping job
* fix: put back tracing logger
* feat: middleware for path counter
* feat: added gotrue to prometheus metrics
* feat: added nginx to prometheus metrics
* feat: added latency and result to metrics
* feat(nginx): set request id to header
* feat: added request id in nginx
* feat: simplify metric collection
* feat: added simple grafana dashboard for appflowy cloud
* feat(logging): added logging stack
* docs: improve monitoring docs
* docs: added known common issues
* feat: give persistence
* feat: add exemplars
* fix: docker compose volumes
* feat(grafana): add trace id to prometheus datasource
* feat(grafana): improve dashboard to include exemplars
2023-11-02 15:34:00 +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
49f994488a
chore: redirect url ( #134 )
...
* chore: redirect url
* chore: stop ws conn if error is auth error
* chore: add query params
* chore: fix clippy
2023-10-24 00:40:44 +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
ec13239bdd
chore: update dto
2023-10-22 21:10:30 +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