mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2024-08-30 18:12:39 +00:00
chore: Bump collab (#5136)
* chore: bump collab * chore: bump collab * chore: bump collab * chore: fix test * chore: disable supabse test
This commit is contained in:
@ -3,7 +3,7 @@ use std::ops::{Deref, DerefMut};
|
||||
use std::sync::Arc;
|
||||
|
||||
use anyhow::anyhow;
|
||||
use collab::core::collab::{DocStateSource, MutexCollab};
|
||||
use collab::core::collab::{DataSource, MutexCollab};
|
||||
use collab::core::origin::{CollabClient, CollabOrigin};
|
||||
use collab::preclude::Collab;
|
||||
use collab_database::database::{
|
||||
@ -222,7 +222,7 @@ where
|
||||
let old_user_id = UserId::from(old_uid);
|
||||
let old_folder = Folder::open(
|
||||
old_user_id.clone(),
|
||||
Arc::new(MutexCollab::from_collab(old_folder_collab)),
|
||||
Arc::new(MutexCollab::new(old_folder_collab)),
|
||||
None,
|
||||
)
|
||||
.map_err(|err| PersistenceError::InvalidData(err.to_string()))?;
|
||||
@ -305,15 +305,10 @@ where
|
||||
}
|
||||
|
||||
let origin = CollabOrigin::Client(CollabClient::new(new_uid, "phantom"));
|
||||
let new_folder_collab = Collab::new_with_doc_state(
|
||||
origin,
|
||||
new_workspace_id,
|
||||
DocStateSource::FromDisk,
|
||||
vec![],
|
||||
false,
|
||||
)
|
||||
.map_err(|err| PersistenceError::Internal(err.into()))?;
|
||||
let mutex_collab = Arc::new(MutexCollab::from_collab(new_folder_collab));
|
||||
let new_folder_collab =
|
||||
Collab::new_with_source(origin, new_workspace_id, DataSource::Disk, vec![], false)
|
||||
.map_err(|err| PersistenceError::Internal(err.into()))?;
|
||||
let mutex_collab = Arc::new(MutexCollab::new(new_folder_collab));
|
||||
let new_user_id = UserId::from(new_uid);
|
||||
info!("migrated folder: {:?}", folder_data);
|
||||
let _ = Folder::create(new_user_id, mutex_collab.clone(), None, folder_data);
|
||||
|
@ -265,11 +265,7 @@ async fn sync_folder(
|
||||
.encode_collab_v1(|_| Ok::<(), PersistenceError>(()))?
|
||||
.doc_state;
|
||||
(
|
||||
MutexFolder::new(Folder::open(
|
||||
uid,
|
||||
Arc::new(MutexCollab::from_collab(collab)),
|
||||
None,
|
||||
)?),
|
||||
MutexFolder::new(Folder::open(uid, Arc::new(MutexCollab::new(collab)), None)?),
|
||||
doc_state,
|
||||
)
|
||||
};
|
||||
|
@ -2,6 +2,7 @@ use std::sync::Arc;
|
||||
|
||||
use collab::core::collab::MutexCollab;
|
||||
use collab::core::origin::{CollabClient, CollabOrigin};
|
||||
use collab::preclude::Collab;
|
||||
use collab_document::document::Document;
|
||||
use collab_document::document_data::default_document_data;
|
||||
use collab_folder::{Folder, View};
|
||||
@ -85,10 +86,16 @@ where
|
||||
{
|
||||
// If the document is not exist, we don't need to migrate it.
|
||||
if load_collab(user_id, write_txn, &view.id).is_err() {
|
||||
let collab = Arc::new(MutexCollab::new(origin.clone(), &view.id, vec![], false));
|
||||
let collab = Arc::new(MutexCollab::new(Collab::new_with_origin(
|
||||
origin.clone(),
|
||||
&view.id,
|
||||
vec![],
|
||||
false,
|
||||
)));
|
||||
let document = Document::create_with_data(collab, default_document_data())?;
|
||||
let encode = document
|
||||
.get_collab()
|
||||
.lock()
|
||||
.encode_collab_v1(|_| Ok::<(), PersistenceError>(()))?;
|
||||
write_txn.flush_doc_with(user_id, &view.id, &encode.doc_state, &encode.state_vector)?;
|
||||
event!(
|
||||
|
@ -17,5 +17,5 @@ where
|
||||
{
|
||||
let collab = Collab::new(uid, object_id, "phantom", vec![], false);
|
||||
collab.with_origin_transact_mut(|txn| collab_r_txn.load_doc_with_txn(uid, &object_id, txn))?;
|
||||
Ok(Arc::new(MutexCollab::from_collab(collab)))
|
||||
Ok(Arc::new(MutexCollab::new(collab)))
|
||||
}
|
||||
|
@ -5,7 +5,7 @@ use crate::services::entities::UserPaths;
|
||||
use crate::services::sqlite_sql::user_sql::select_user_profile;
|
||||
use crate::user_manager::run_collab_data_migration;
|
||||
use anyhow::anyhow;
|
||||
use collab::core::collab::{DocStateSource, MutexCollab};
|
||||
use collab::core::collab::{DataSource, MutexCollab};
|
||||
use collab::core::origin::CollabOrigin;
|
||||
use collab::core::transaction::DocTransactionExtension;
|
||||
use collab::preclude::updates::decoder::Decode;
|
||||
@ -465,10 +465,10 @@ where
|
||||
W: CollabKVAction<'a>,
|
||||
PersistenceError: From<W::Error>,
|
||||
{
|
||||
let collab = Collab::new_with_doc_state(
|
||||
let collab = Collab::new_with_source(
|
||||
CollabOrigin::Empty,
|
||||
new_object_id,
|
||||
DocStateSource::FromDocState(doc_state),
|
||||
DataSource::DocStateV1(doc_state),
|
||||
vec![],
|
||||
false,
|
||||
)?;
|
||||
@ -503,7 +503,7 @@ where
|
||||
let other_user_id = UserId::from(other_session.user_id);
|
||||
let other_folder = Folder::open(
|
||||
other_user_id,
|
||||
Arc::new(MutexCollab::from_collab(other_folder_collab)),
|
||||
Arc::new(MutexCollab::new(other_folder_collab)),
|
||||
None,
|
||||
)
|
||||
.map_err(|err| PersistenceError::InvalidData(err.to_string()))?;
|
||||
|
@ -2,7 +2,7 @@ use std::sync::atomic::Ordering;
|
||||
use std::sync::{Arc, Weak};
|
||||
|
||||
use anyhow::Context;
|
||||
use collab::core::collab::{DocStateSource, MutexCollab};
|
||||
use collab::core::collab::{DataSource, MutexCollab};
|
||||
use collab_entity::reminder::Reminder;
|
||||
use collab_entity::CollabType;
|
||||
use collab_integrate::collab_builder::{AppFlowyCollabBuilder, CollabBuilderConfig};
|
||||
@ -164,7 +164,7 @@ impl UserManager {
|
||||
session.user_id,
|
||||
&object_id,
|
||||
collab_db,
|
||||
DocStateSource::FromDocState(data),
|
||||
DataSource::DocStateV1(data),
|
||||
)
|
||||
.await?;
|
||||
MutexUserAwareness::new(UserAwareness::create(collab, None))
|
||||
@ -177,7 +177,7 @@ impl UserManager {
|
||||
session.user_id,
|
||||
&object_id,
|
||||
collab_db,
|
||||
DocStateSource::FromDisk,
|
||||
DataSource::Disk,
|
||||
)
|
||||
.await?;
|
||||
MutexUserAwareness::new(UserAwareness::create(collab, None))
|
||||
@ -210,7 +210,7 @@ impl UserManager {
|
||||
uid: i64,
|
||||
object_id: &str,
|
||||
collab_db: Weak<CollabKVDB>,
|
||||
doc_state: DocStateSource,
|
||||
doc_state: DataSource,
|
||||
) -> Result<Arc<MutexCollab>, FlowyError> {
|
||||
let collab_builder = collab_builder.upgrade().ok_or(FlowyError::new(
|
||||
ErrorCode::Internal,
|
||||
|
Reference in New Issue
Block a user