From 778d624868dda2b6c7a6ee704ec32dc184adacf0 Mon Sep 17 00:00:00 2001 From: ZoOL Date: Mon, 1 Jul 2024 11:07:17 +0800 Subject: [PATCH] add justfile --- .gitattributes | 16 ++++++++++++++++ .gitignore | 4 +++- examples/api/drive/v1/files/upload_all.rs | 2 +- examples/api/im/v1/create_message.rs | 2 +- examples/ws_client.rs | 17 ++++++++++++----- justfile | 3 +++ src/client/ws_client.rs | 14 +++++++------- src/service/im/v1/p2_im_message_receive_v1.rs | 2 -- 8 files changed, 43 insertions(+), 17 deletions(-) create mode 100644 .gitattributes create mode 100644 justfile diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..ff8054b --- /dev/null +++ b/.gitattributes @@ -0,0 +1,16 @@ +# From: https://docs.github.com/en/github/getting-started-with-github/configuring-git-to-handle-line-endings +# Set the default behavior, in case people don't have core.autocrlf set. +* text=auto + +# Explicitly declare text files you want to always be normalized and converted +# to native line endings on checkout. +*.rs text eol=lf +*.toml text eol=lf + +# Declare files that will always have CRLF line endings on checkout. +*.sln text eol=crlf + +# Denote all files that are truly binary and should not be modified. +*.png binary +*.jpg binary +*.ttf binary diff --git a/.gitignore b/.gitignore index 79007d4..070f139 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,6 @@ /.idea .env /tmp -/**/target \ No newline at end of file +crates/*/target +**/*.rs.bk +Cargo.lock \ No newline at end of file diff --git a/examples/api/drive/v1/files/upload_all.rs b/examples/api/drive/v1/files/upload_all.rs index d902b58..d4841cc 100644 --- a/examples/api/drive/v1/files/upload_all.rs +++ b/examples/api/drive/v1/files/upload_all.rs @@ -30,7 +30,7 @@ async fn main() { .parent_node("nodcnBh4MAgg2GpI5IkRVZuw3Jd") .size(file_size as i32) .checksum(checksum.to_string()) - .file(buffer.into()) + .file(buffer) .build(); // 发起请求 diff --git a/examples/api/im/v1/create_message.rs b/examples/api/im/v1/create_message.rs index 71ed933..efc6fe8 100644 --- a/examples/api/im/v1/create_message.rs +++ b/examples/api/im/v1/create_message.rs @@ -68,7 +68,7 @@ async fn main() { println!("response: {:?}", resp); } Err(err) => { - println!("send message http error: {} ", err.to_string()); + println!("send message http error: {} ", err); } } } diff --git a/examples/ws_client.rs b/examples/ws_client.rs index 686c052..50bf686 100644 --- a/examples/ws_client.rs +++ b/examples/ws_client.rs @@ -3,18 +3,17 @@ use std::{env, sync::Arc}; use dotenvy::dotenv; use lazy_static::lazy_static; use log::info; -use serde_json::json; use tokio::sync::Mutex; use open_lark::{ - client::{ws_client::LarkWsClient, LarkClient}, + client::{LarkClient, ws_client::LarkWsClient}, event::dispatcher::EventDispatcherHandler, service::im::v1::{ - chats::ListChatRequest, p2_im_message_read_v1::P2ImMessageReadV1, + message::{CreateMessageRequest, CreateMessageRequestBody}, + p2_im_message_read_v1::P2ImMessageReadV1, p2_im_message_receive_v1::P2ImMessageReceiveV1, }, }; -use open_lark::service::im::v1::message::{CreateMessageRequest, CreateMessageRequestBody, MessageText}; #[tokio::main] async fn main() { @@ -67,7 +66,15 @@ async fn handle_p2_im_message_receive_v1( .build(); // 发起请求 - api_client.lock().await.im.v1.message.create(req, None).await.unwrap(); + api_client + .lock() + .await + .im + .v1 + .message + .create(req, None) + .await + .unwrap(); } fn handle_p2_im_message_read_v1(data: P2ImMessageReadV1) { diff --git a/justfile b/justfile new file mode 100644 index 0000000..a10d862 --- /dev/null +++ b/justfile @@ -0,0 +1,3 @@ +lint: + @echo "Lint" + cargo clippy --workspace --all-targets --all-features -- -Dwarnings \ No newline at end of file diff --git a/src/client/ws_client.rs b/src/client/ws_client.rs index 2968bd1..ea57f5f 100644 --- a/src/client/ws_client.rs +++ b/src/client/ws_client.rs @@ -4,8 +4,8 @@ use std::{ }; use futures_util::{ - stream::{SplitSink, SplitStream}, - SinkExt, StreamExt, + SinkExt, + stream::{SplitSink, SplitStream}, StreamExt, }; use lark_websocket_protobuf::pbbp2::{Frame, Header}; use log::{debug, error, info, trace}; @@ -16,8 +16,8 @@ use serde_json::json; use tokio::{net::TcpStream, sync::mpsc, time::Interval}; use tokio_tungstenite::{ connect_async, - tungstenite::protocol::{frame::coding::CloseCode, Message}, - MaybeTlsStream, WebSocketStream, + MaybeTlsStream, + tungstenite::protocol::{frame::coding::CloseCode, Message}, WebSocketStream, }; use url::Url; @@ -167,7 +167,7 @@ impl LarkWsClient { if val.is_none() { let mut buf = vec![Vec::new(); sum]; buf[seq] = bs.to_vec(); - self.cache.set(&msg_id, buf, 5); + self.cache.set(msg_id, buf, 5); return None; } @@ -176,7 +176,7 @@ impl LarkWsClient { let mut pl = Vec::new(); for v in val.iter() { if v.is_empty() { - self.cache.set(&msg_id, val, 5); + self.cache.set(msg_id, val, 5); return None; } pl.extend_from_slice(v); @@ -448,7 +448,7 @@ async fn client_loop( let res = ctx.process_loop().await; match res { - Ok(()) => return, + Ok(()) => (), Err(err) => { ctx.send_event(WsEvent::Error(err)); } diff --git a/src/service/im/v1/p2_im_message_receive_v1.rs b/src/service/im/v1/p2_im_message_receive_v1.rs index 05ff98e..bdfce77 100644 --- a/src/service/im/v1/p2_im_message_receive_v1.rs +++ b/src/service/im/v1/p2_im_message_receive_v1.rs @@ -120,8 +120,6 @@ mod test { use crate::event::context::EventContext; - use super::*; - #[test] fn test_decode() { let p1 = json!({"schema":"2.0","header":{"event_id":"7db4fd0bb90cfa6127e3aaa446d39b37","token