Commit Graph

259 Commits

Author SHA1 Message Date
Bartosz Sypytkowski 5badffc97b
chore: update yrs and appflowy collab (#759)
* chore: update yrs and appflowy collab

* chore: increased allowed number of dependencies
2024-08-27 19:58:58 +08:00
Nathan.fooo 9ce5f2288a
chore: upgrade appflowy collab version (#751)
* chore: upgrade appflowy collab version
2024-08-26 21:20:39 +08:00
Khor Shu Heng 52f33e4d85
feat: endpoint for avatar upload (#736) 2024-08-23 16:36:09 +08:00
Nathan.fooo 1a053172c2
chore: write collab to disk after first sync step2 (#739)
* chore: write collab to disk after first sync step2

* chore: clippy

* chore: fix test & disable history plugin

* chore: upgrade appflowy collab that disbale document undo redo
2024-08-22 23:11:20 +08:00
Bartosz Sypytkowski ae3833ea91
chore: Remove last sync at (#735)
* chore: remove last sync at field

* chore: post rebase fixes

* chore: update test for missing update detection
2024-08-22 07:47:01 +08:00
nathan 1542fedcfe chore: upgrade appflowy coollab 2024-08-21 16:09:43 +08:00
Nathan.fooo 13355d6c21
chore: update collab version (#732) 2024-08-20 21:42:47 +08:00
nathan 2d7a4bde92 Merge branch 'main' into no-lock-collab 2024-08-19 10:38:07 +08:00
Nathan.fooo d342039cfd
chore: create user awareness when creating a new user (#728)
* chore: create user awareness when creating a new user

* chore: fix client api compile
2024-08-16 16:05:15 +08:00
Bartosz Sypytkowski 66838c47e3 chore: make collab plugins work over generic collab providers 2024-08-13 19:59:48 +02:00
Bartosz Sypytkowski a8b80f33af chore: update appflowy collab dependencies 2024-08-13 19:59:48 +02:00
Bartosz Sypytkowski c27866fb25 chore: upgrade code to use asynchronous locks 2024-08-13 19:59:46 +02:00
Nathan.fooo 71d292ebcd
chore: add app version when querying ai configuratino (#724)
* chore: update api endpoint that accepts app version

* chore: update env

* chore: disable locai ai config test
2024-08-13 11:14:32 +08:00
Khor Shu Heng 21bbfa828e
chore: update sqlx to 0.8 (#710)
* chore: update sqlx to 0.8

* fix: handle potential encoding error during add args

* chore: more description for SqlxArgEncodingError
2024-08-05 23:44:11 +08:00
Khor Shu Heng ca6490c1ac
feat: deserialization for entities used in collab stream (#682) 2024-07-30 17:08:48 +08:00
Bartosz Sypytkowski ddf3973f5c chore: bump collab dependencies 2024-07-17 11:15:39 +02:00
Bartosz Sypytkowski f083f9d88b chore: bump yrs to 0.19.2 2024-07-17 11:12:56 +02:00
Nathan.fooo eebdbcad79
chore: add api endpoint for local ai config (#678)
* chore: add api endpoint for local ai config

* chore: fix ci

* chore: api endpoint for download local ai config

* chore: update ci

* chore: ensure client version

* chore: update test
2024-07-15 08:30:11 +08:00
Bartosz Sypytkowski 44406ccdae
chore: update yrs and appflowy-collab (#677)
* chore: update yrs and appflowy-collab

* chore: remove wasm compilation target

* chore: fixed number conversion in tests

* chore: remove wasm integration tests

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-07-10 10:10:07 +08:00
Bartosz Sypytkowski 42b3cca886 chore: remove appflowy indexer service 2024-06-28 05:40:44 +02:00
Khor Shu Heng bdae165849
feat: add post realtime message stream handler to independent collab ws (#647) 2024-06-25 13:30:05 +08:00
Khor Shu Heng 6e3f666ce4
feat: independent collab websocket server (#640) 2024-06-24 13:59:51 +08:00
Zack Fu Zi Xiang f2f3695cfb
chore: try use stream feature flag 2024-06-20 12:32:51 +08:00
Zack Fu Zi Xiang 31f5c786a6
chore: merge with main 2024-06-20 11:20:16 +08:00
Zack Fu Zi Xiang d4dd350da1
feat: batch publish item with metadata 2024-06-20 11:15:08 +08:00
Nathan.fooo 30f87457f3
feat: support uploading file with multiple part (#625)
* refactor: replace crate

* chore: remove s3-rust crate

* chore: test multiple upload

* chore: client api

* chore: client api

* chore: v1 version upload,download

* chore: fix test

* chore: fix test

* chore: remove workspace test

* chore: fix wasm build

* chore: update path

* chore: update path

* chore: rename

* chore: expose file entity

* chore: introduce client-api-entity

* chore: fix build

* chore: new url

* chore: fix test

* chore: merge main

* chore: fix clippy
2024-06-19 13:06:58 +08:00
Bartosz Sypytkowski 0e50650aa8 chore: use appflowy ai client for embeddings in search api 2024-06-18 10:51:11 +02:00
Zack 9d3d28ad89
chore: move billing to client api http (#619) 2024-06-13 14:38:58 +08:00
Zack 6471831561
chore: move billing client (#618)
* chore: move billing client

* chore: cargo fmt
2024-06-13 13:19:40 +08:00
Nathan.fooo d0467e7e2e
feat: Stream chat message (#610)
* chore: test stream

* chore: fix test

* chore: fix test

* chore: add log

* chore: fix parsing

* chore: fix parsing

* chore: fix parsing

* chore: create answer

* chore: create answer
2024-06-08 22:51:19 +08:00
Khor Shu Heng a6bcbd583f
chore: share library for authentication (#576)
* chore: share library for authentication

* fix: return error from requesting app data instead of unwrap

* fix: return internal server error when jwt secret is missing

* chore: remove argon dep from main crate

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-05-29 16:00:21 +08:00
Bartosz Sypytkowski d3e59fa801
feat: Appflowy-indexer service and /api/search endpoint (#582)
* feat: implement appflowy-indexer and search api endpoint

* chore: store embedding content type

* chore: more descriptive messages for open ai missing key

* chore: fix sqlx errors in tests

* chore: document watcher - change plain text rendering to use depth-first scan

* chore: added nested document blocks example
2024-05-28 21:09:29 +08:00
Nathan.fooo ae3e075475
chore: Integrate with client-api, update chat message (#574)
* chore: update

* chore: get chat message with next back option

* chore: update next back

* chore: return answer

* chore: return answer

* chore: return answer

* chore: update client api

* chore: fix ci
2024-05-24 15:04:50 +08:00
Khor Shu Heng fbdcbd6e08
chore: migrate collab actors to appflowy-collaborate (#556) 2024-05-17 12:22:43 +08:00
Nathan.fooo 2fae260e4f
chore: complete text endpoints (#557)
* chore: complete text endpoints
2024-05-16 22:48:44 +08:00
Khor Shu Heng c79267d42a
feat: migrate collab access control to collaboration service (#548)
* feat: migrate collab access control to collaborate service

* feat: migrate workspace access control to separate crate
2024-05-15 15:24:07 +08:00
Nathan.fooo d994b10115
chore: appflowy ai client (#547)
* chore: appflowy ai client

* chore: clippy

* chore: clippy

* chore: fix ci

* chore: disable index search
2024-05-12 09:23:32 +08:00
Nathan.fooo 4c00ddd593
chore: Chat history (#546)
* chore: imple sql curd

* chore: update chat

* chore: select messages

* chore: update test

* chore: update schema

* chore: update
2024-05-11 20:41:21 +08:00
Nathan.fooo ef96b42e43
chore: Collab patch (#541)
* chore: bump collab

* chore: use patch

* chore: update collab
2024-05-09 15:16:07 +08:00
Nathan.fooo 70262a1ac4
chore: try to not block actor mailbox (#534)
* chore: add test

* chore: spawn task to handle message

* chore: update error message
2024-05-08 16:54:05 +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 a9d49403ae chore: remove unused code 2024-05-05 10:14:41 +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 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 93f3a63891 chore: disable multi thread feature 2024-04-24 13:43:17 +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 1019b8c5b6
chore: update collab rev (#490) 2024-04-22 17:15:12 +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
Nathan.fooo 0de64f4f71
chore: enable multiple thread of collab-rt crate (#484) 2024-04-21 19:09:16 +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 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
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 84159e4c2c chore: remove unused deps 2024-04-08 21:27: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
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
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 feb993e5b9
chore: add tests (#442) 2024-04-03 22:16:03 +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 0da1b2433b chore: enable test feature when running test 2024-04-02 15:37:34 +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 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 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 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 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 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 506ed640da chore: update project setting 2024-03-26 09:13:43 +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 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
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 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
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
Nathan.fooo d1c82b7811
chore: enable access control by env (#394) 2024-03-18 19:34:44 +08:00
Nathan.fooo c5112cc761
chore: use collab without gc (#391) 2024-03-17 17:03:05 +08:00
Nathan.fooo a2076d4dae
chore: rename websocket crate (#390)
* chore: rename crate

* chore: rename crate

* chore: rename crate
2024-03-17 16:04:30 +08:00
Nathan.fooo e203098517
chore: remove deprecated user logic (#389) 2024-03-17 14:28:37 +08:00
Nathan.fooo 08693f2d72
chore: integrate appflowy ai (#388)
* chore: integrate appflowy ai

* chore: disable ai test
2024-03-16 21:43:02 +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
Nathan.fooo 3b0d7567da
feat: viewing collab users (#375)
* feat: return collab viewing users

* chore: fmt

* chore: add test

* chore: update logs

* chore: fix test
2024-03-09 12:15:17 +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
Nathan.fooo 15c03e4f85
refactor: realtime dir (#363)
* refactor: realtime dir

* chore: fmt

* chore: fix test

* chore: fix test

* chore: fix test
2024-03-04 12:53:44 +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
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 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
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 3ab768fb14
chore: disable all casin func (#338)
* chore: disable all casin func

* chore: rename
2024-02-21 14:02:37 +08:00
Nathan.fooo cbcf43081f
chore: add disable collab ac feature flag (#336) 2024-02-21 09:47:38 +08:00