fix warnings

This commit is contained in:
appflowy 2021-10-04 17:47:21 +08:00
parent 7b00581c66
commit ab2a997a77
20 changed files with 56 additions and 133 deletions

View File

@ -16,17 +16,17 @@ export 'revision.pbenum.dart';
class RevId extends $pb.GeneratedMessage {
static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'RevId', createEmptyInstance: create)
..aInt64(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'inner')
..aInt64(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'value')
..hasRequiredFields = false
;
RevId._() : super();
factory RevId({
$fixnum.Int64? inner,
$fixnum.Int64? value,
}) {
final _result = create();
if (inner != null) {
_result.inner = inner;
if (value != null) {
_result.value = value;
}
return _result;
}
@ -52,13 +52,13 @@ class RevId extends $pb.GeneratedMessage {
static RevId? _defaultInstance;
@$pb.TagNumber(1)
$fixnum.Int64 get inner => $_getI64(0);
$fixnum.Int64 get value => $_getI64(0);
@$pb.TagNumber(1)
set inner($fixnum.Int64 v) { $_setInt64(0, v); }
set value($fixnum.Int64 v) { $_setInt64(0, v); }
@$pb.TagNumber(1)
$core.bool hasInner() => $_has(0);
$core.bool hasValue() => $_has(0);
@$pb.TagNumber(1)
void clearInner() => clearField(1);
void clearValue() => clearField(1);
}
class Revision extends $pb.GeneratedMessage {

View File

@ -23,12 +23,12 @@ final $typed_data.Uint8List revTypeDescriptor = $convert.base64Decode('CgdSZXZUe
const RevId$json = const {
'1': 'RevId',
'2': const [
const {'1': 'inner', '3': 1, '4': 1, '5': 3, '10': 'inner'},
const {'1': 'value', '3': 1, '4': 1, '5': 3, '10': 'value'},
],
};
/// Descriptor for `RevId`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List revIdDescriptor = $convert.base64Decode('CgVSZXZJZBIUCgVpbm5lchgBIAEoA1IFaW5uZXI=');
final $typed_data.Uint8List revIdDescriptor = $convert.base64Decode('CgVSZXZJZBIUCgV2YWx1ZRgBIAEoA1IFdmFsdWU=');
@$core.Deprecated('Use revisionDescriptor instead')
const Revision$json = const {
'1': 'Revision',

View File

@ -224,7 +224,7 @@ fn mk_acked_ws_message(revision: &Revision) -> WsMessageAdaptor {
// let _ = wtr.write_i64::<BigEndian>(revision.rev_id);
let mut rev_id = RevId::new();
rev_id.set_inner(revision.rev_id);
rev_id.set_value(revision.rev_id);
let data = rev_id.write_to_bytes().unwrap();
let data = WsDocumentData {

View File

@ -1,57 +0,0 @@
use std::cmp::{max, min};
#[derive(Clone, Copy, PartialEq, Eq)]
pub struct Interval {
pub start: i64,
pub end: i64,
}
impl Interval {
/// Construct a new `Interval` representing the range [start..end).
/// It is an invariant that `start <= end`.
pub fn new(start: i64, end: i64) -> Interval {
debug_assert!(start <= end);
Interval { start, end }
}
pub fn start(&self) -> i64 { self.start }
pub fn end(&self) -> i64 { self.end }
pub fn is_before(&self, val: i64) -> bool { self.end <= val }
pub fn contains(&self, val: i64) -> bool { self.start <= val && val < self.end }
pub fn contains_range(&self, start: i64, end: i64) -> bool { !self.intersect(Interval::new(start, end)).is_empty() }
pub fn is_after(&self, val: i64) -> bool { self.start > val }
pub fn is_empty(&self) -> bool { self.end <= self.start }
pub fn intersect(&self, other: Interval) -> Interval {
let start = max(self.start, other.start);
let end = min(self.end, other.end);
Interval {
start,
end: max(start, end),
}
}
// the first half of self - other
pub fn prefix(&self, other: Interval) -> Interval {
Interval {
start: min(self.start, other.start),
end: min(self.end, other.start),
}
}
// the second half of self - other
pub fn suffix(&self, other: Interval) -> Interval {
Interval {
start: max(self.start, other.end),
end: max(self.end, other.end),
}
}
pub fn size(&self) -> i64 { self.end - self.start }
}

View File

@ -1,6 +1,5 @@
mod edit_actor;
mod edit_doc;
mod interval;
mod open_handle;
pub use edit_actor::*;

View File

@ -1,6 +1,5 @@
use crate::document::helper::{DocScript, DocumentTest};
use flowy_document::services::doc::{Document, FlowyDoc};
use flowy_ot::core::Delta;
#[actix_rt::test]
async fn sync_doc_insert_text() {

View File

@ -14,7 +14,7 @@ use flowy_user::services::user::UserSession;
// use crate::helper::*;
use crate::helper::{spawn_server, TestServer};
use flowy_document::protobuf::UpdateDocParams;
use flowy_ot::core::Delta;
use parking_lot::RwLock;
use serde::__private::Formatter;

View File

@ -7,11 +7,11 @@ edition = "2018"
[lib]
name = "dart_ffi"
# this value will change depending on the target os
# for iOS it would be `rlib`
# for Macos it would be `rlib`
# for iOS it would be `cdylib`
# for Macos it would be `cdylib`
# for android it would be `c-dylib`
# default rlib
crate-type = ["rlib"]
# default cdylib
crate-type = ["cdylib"]
[dependencies]

View File

@ -39,23 +39,23 @@ impl std::default::Default for RevType {
#[derive(Clone, Debug, ProtoBuf, Default)]
pub struct RevId {
#[pb(index = 1)]
pub inner: i64,
pub value: i64,
}
impl AsRef<i64> for RevId {
fn as_ref(&self) -> &i64 { &self.inner }
fn as_ref(&self) -> &i64 { &self.value }
}
impl std::convert::Into<i64> for RevId {
fn into(self) -> i64 { self.inner }
fn into(self) -> i64 { self.value }
}
impl std::convert::From<i64> for RevId {
fn from(value: i64) -> Self { RevId { inner: value } }
fn from(value: i64) -> Self { RevId { value } }
}
impl std::fmt::Display for RevId {
fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { f.write_fmt(format_args!("{}", self.inner)) }
fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { f.write_fmt(format_args!("{}", self.value)) }
}
#[derive(PartialEq, Eq, Clone, Default, ProtoBuf)]

View File

@ -1,7 +1,6 @@
use std::sync::Arc;
use diesel::SqliteConnection;
use parking_lot::RwLock;
use flowy_database::ConnectionPool;
use flowy_net::config::ServerConfig;

View File

@ -26,7 +26,7 @@
#[derive(PartialEq,Clone,Default)]
pub struct RevId {
// message fields
pub inner: i64,
pub value: i64,
// special fields
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
@ -43,19 +43,19 @@ impl RevId {
::std::default::Default::default()
}
// int64 inner = 1;
// int64 value = 1;
pub fn get_inner(&self) -> i64 {
self.inner
pub fn get_value(&self) -> i64 {
self.value
}
pub fn clear_inner(&mut self) {
self.inner = 0;
pub fn clear_value(&mut self) {
self.value = 0;
}
// Param is passed by value, moved
pub fn set_inner(&mut self, v: i64) {
self.inner = v;
pub fn set_value(&mut self, v: i64) {
self.value = v;
}
}
@ -73,7 +73,7 @@ impl ::protobuf::Message for RevId {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_int64()?;
self.inner = tmp;
self.value = tmp;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
@ -87,8 +87,8 @@ impl ::protobuf::Message for RevId {
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if self.inner != 0 {
my_size += ::protobuf::rt::value_size(1, self.inner, ::protobuf::wire_format::WireTypeVarint);
if self.value != 0 {
my_size += ::protobuf::rt::value_size(1, self.value, ::protobuf::wire_format::WireTypeVarint);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
@ -96,8 +96,8 @@ impl ::protobuf::Message for RevId {
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if self.inner != 0 {
os.write_int64(1, self.inner)?;
if self.value != 0 {
os.write_int64(1, self.value)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
@ -138,9 +138,9 @@ impl ::protobuf::Message for RevId {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
"inner",
|m: &RevId| { &m.inner },
|m: &mut RevId| { &mut m.inner },
"value",
|m: &RevId| { &m.value },
|m: &mut RevId| { &mut m.value },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<RevId>(
"RevId",
@ -158,7 +158,7 @@ impl ::protobuf::Message for RevId {
impl ::protobuf::Clear for RevId {
fn clear(&mut self) {
self.inner = 0;
self.value = 0;
self.unknown_fields.clear();
}
}
@ -799,8 +799,8 @@ impl ::protobuf::reflect::ProtobufValue for RevType {
}
static file_descriptor_proto_data: &'static [u8] = b"\
\n\x0erevision.proto\"\x1d\n\x05RevId\x12\x14\n\x05inner\x18\x01\x20\x01\
(\x03R\x05inner\"\xa3\x01\n\x08Revision\x12\x1e\n\x0bbase_rev_id\x18\x01\
\n\x0erevision.proto\"\x1d\n\x05RevId\x12\x14\n\x05value\x18\x01\x20\x01\
(\x03R\x05value\"\xa3\x01\n\x08Revision\x12\x1e\n\x0bbase_rev_id\x18\x01\
\x20\x01(\x03R\tbaseRevId\x12\x15\n\x06rev_id\x18\x02\x20\x01(\x03R\x05r\
evId\x12\x1d\n\ndelta_data\x18\x03\x20\x01(\x0cR\tdeltaData\x12\x10\n\
\x03md5\x18\x04\x20\x01(\tR\x03md5\x12\x15\n\x06doc_id\x18\x05\x20\x01(\

View File

@ -1,7 +1,7 @@
syntax = "proto3";
message RevId {
int64 inner = 1;
int64 value = 1;
}
message Revision {
int64 base_rev_id = 1;

View File

@ -1,7 +1,7 @@
use std::sync::Arc;
use bytes::Bytes;
use parking_lot::RwLock;
use tokio::time::{interval, Duration};
use flowy_database::{ConnectionPool, SqliteConnection};

View File

@ -212,7 +212,7 @@ impl ClientEditDoc {
server_rev_id,
} = rx.await.map_err(internal_error)??;
if self.rev_manager.rev_id() >= server_rev_id.0 {
if self.rev_manager.rev_id() >= server_rev_id.value {
// Ignore this push revision if local_rev_id >= server_rev_id
return Ok(());
}
@ -232,7 +232,7 @@ impl ClientEditDoc {
// save the revision
let revision = Revision::new(
server_rev_id.0,
server_rev_id.value,
local_rev_id,
client_prime.to_bytes().to_vec(),
&self.doc_id,
@ -242,7 +242,7 @@ impl ClientEditDoc {
// send the server_prime delta
let revision = Revision::new(
server_rev_id.0,
server_rev_id.value,
local_rev_id,
server_prime.to_bytes().to_vec(),
&self.doc_id,

View File

@ -1,7 +1,7 @@
use crate::{errors::DocResult, services::doc::UndoResult};
use flowy_ot::core::{Attribute, Delta, Interval};
use crate::entities::doc::{RevId, Revision};
use crate::entities::doc::RevId;
use bytes::Bytes;
use tokio::sync::oneshot;

View File

@ -1,20 +1,11 @@
use crate::{
entities::doc::{RevId, RevType, Revision, RevisionRange},
entities::doc::{RevId, Revision, RevisionRange},
errors::{internal_error, DocError},
services::{
doc::revision::store_actor::{RevisionCmd, RevisionStoreActor},
util::RevIdCounter,
ws::DocumentWebSocket,
},
};
use flowy_infra::{
future::ResultFuture,
retry::{ExponentialBackoff, Retry},
services::{doc::revision::store_actor::RevisionCmd, util::RevIdCounter, ws::DocumentWebSocket},
};
use flowy_infra::future::ResultFuture;
use flowy_ot::core::Delta;
use flowy_ws::WsState;
use parking_lot::RwLock;
use std::{collections::VecDeque, sync::Arc};
use tokio::sync::{mpsc, oneshot};
pub struct DocRevision {
@ -77,7 +68,7 @@ impl RevisionManager {
let (ret, rx) = oneshot::channel();
let sender = self.rev_store.clone();
let _ = sender.send(RevisionCmd::SendRevisions { range, ret }).await;
let revisions = rx.await.map_err(internal_error)??;
let _revisions = rx.await.map_err(internal_error)??;
unimplemented!()
// Ok(())

View File

@ -1,12 +1,5 @@
use crate::{
entities::doc::{NewDocUser, RevId, Revision},
errors::{DocError, DocResult},
services::ws::DocumentWebSocket,
sql_tables::RevState,
};
use flowy_infra::retry::Action;
use futures::future::BoxFuture;
use std::{future, sync::Arc};
use crate::{entities::doc::Revision, errors::DocResult, services::ws::DocumentWebSocket, sql_tables::RevState};
use tokio::sync::oneshot;
pub type Sender = oneshot::Sender<DocResult<()>>;

View File

@ -3,8 +3,7 @@ use bytes::Bytes;
use dashmap::DashMap;
use flowy_ws::WsState;
use std::{collections::HashMap, convert::TryInto, sync::Arc};
use tokio::sync::broadcast::error::RecvError;
use std::{convert::TryInto, sync::Arc};
pub(crate) trait WsDocumentHandler: Send + Sync {
fn receive(&self, data: WsDocumentData);

View File

@ -8,7 +8,7 @@ use flowy_document::{
use flowy_document::{entities::ws::WsDocumentData, errors::internal_error, services::ws::WsStateReceiver};
use flowy_user::{errors::ErrorCode, services::user::UserSession};
use flowy_ws::{WsMessage, WsMessageHandler, WsModule};
use parking_lot::RwLock;
use std::{path::Path, sync::Arc};
pub struct DocumentDepsResolver {

View File

@ -19,7 +19,7 @@ use flowy_database::{
use flowy_infra::kv::KV;
use flowy_net::config::ServerConfig;
use flowy_sqlite::ConnectionPool;
use flowy_ws::{WsController, WsMessage, WsMessageHandler, WsState};
use flowy_ws::{WsController, WsMessageHandler};
use parking_lot::RwLock;
use serde::{Deserialize, Serialize};
use std::sync::Arc;