From a0f7a8b91c37688734e6f67a42fbac34e2ac57d1 Mon Sep 17 00:00:00 2001 From: Meng Zhang Date: Sun, 12 Nov 2023 21:26:31 -0800 Subject: [PATCH] lift api into sub packages --- crates/tabby/src/api/mod.rs | 7 ++----- crates/tabby/src/routes/events.rs | 2 +- crates/tabby/src/routes/search.rs | 2 +- crates/tabby/src/serve/mod.rs | 8 ++++---- crates/tabby/src/services/code.rs | 2 +- crates/tabby/src/services/completions.rs | 12 ++++++++---- .../src/services/completions/completions_prompt.rs | 2 +- crates/tabby/src/services/event.rs | 2 +- 8 files changed, 19 insertions(+), 18 deletions(-) diff --git a/crates/tabby/src/api/mod.rs b/crates/tabby/src/api/mod.rs index b099be4..cebf170 100644 --- a/crates/tabby/src/api/mod.rs +++ b/crates/tabby/src/api/mod.rs @@ -1,5 +1,2 @@ -mod code; -mod event; - -pub use code::*; -pub use event::*; +pub mod code; +pub mod event; diff --git a/crates/tabby/src/routes/events.rs b/crates/tabby/src/routes/events.rs index 99061f3..cbe61fb 100644 --- a/crates/tabby/src/routes/events.rs +++ b/crates/tabby/src/routes/events.rs @@ -7,7 +7,7 @@ use axum::{ use hyper::StatusCode; use utoipa::ToSchema; -use crate::api::{Event, EventLogger, LogEventRequest, SelectKind}; +use crate::api::event::{Event, EventLogger, LogEventRequest, SelectKind}; #[utoipa::path( post, diff --git a/crates/tabby/src/routes/search.rs b/crates/tabby/src/routes/search.rs index 5bcea1a..89932b1 100644 --- a/crates/tabby/src/routes/search.rs +++ b/crates/tabby/src/routes/search.rs @@ -10,7 +10,7 @@ use serde::Deserialize; use tracing::{instrument, warn}; use utoipa::IntoParams; -use crate::api::{CodeSearch, CodeSearchError, SearchResponse}; +use crate::api::code::{CodeSearch, CodeSearchError, SearchResponse}; #[derive(Deserialize, IntoParams)] pub struct SearchQuery { diff --git a/crates/tabby/src/serve/mod.rs b/crates/tabby/src/serve/mod.rs index 3fb2b71..8d19667 100644 --- a/crates/tabby/src/serve/mod.rs +++ b/crates/tabby/src/serve/mod.rs @@ -42,7 +42,7 @@ Install following IDE / Editor extensions to get started with [Tabby](https://gi ), paths(routes::log_event, routes::completions, routes::completions, routes::health, routes::search), components(schemas( - api::LogEventRequest, + api::event::LogEventRequest, completions::CompletionRequest, completions::CompletionResponse, completions::Segments, @@ -55,9 +55,9 @@ Install following IDE / Editor extensions to get started with [Tabby](https://gi chat::ChatCompletionChunk, health::HealthState, health::Version, - api::SearchResponse, - api::Hit, - api::HitDocument + api::code::SearchResponse, + api::code::Hit, + api::code::HitDocument )) )] struct ApiDoc; diff --git a/crates/tabby/src/services/code.rs b/crates/tabby/src/services/code.rs index 71c1ea6..1abc586 100644 --- a/crates/tabby/src/services/code.rs +++ b/crates/tabby/src/services/code.rs @@ -16,7 +16,7 @@ use tantivy::{ use tokio::{sync::Mutex, time::sleep}; use tracing::{debug, log::info}; -use crate::api::{CodeSearch, CodeSearchError, Hit, HitDocument, SearchResponse}; +use crate::api::code::{CodeSearch, CodeSearchError, Hit, HitDocument, SearchResponse}; struct CodeSearchImpl { reader: IndexReader, diff --git a/crates/tabby/src/services/completions.rs b/crates/tabby/src/services/completions.rs index 3f04c45..b0b58f0 100644 --- a/crates/tabby/src/services/completions.rs +++ b/crates/tabby/src/services/completions.rs @@ -9,7 +9,11 @@ use thiserror::Error; use tracing::debug; use utoipa::ToSchema; -use crate::api::{self, CodeSearch, Event, EventLogger}; +use crate::api::{ + self, + code::CodeSearch, + event::{Event, EventLogger}, +}; #[derive(Error, Debug)] pub enum CompletionError { @@ -95,9 +99,9 @@ pub struct Segments { suffix: Option, } -impl From for api::Segments { +impl From for api::event::Segments { fn from(val: Segments) -> Self { - api::Segments { + Self { prefix: val.prefix, suffix: val.suffix, } @@ -234,7 +238,7 @@ impl CompletionService { language: &language, prompt: &prompt, segments: &segments, - choices: vec![api::Choice { + choices: vec![api::event::Choice { index: 0, text: &text, }], diff --git a/crates/tabby/src/services/completions/completions_prompt.rs b/crates/tabby/src/services/completions/completions_prompt.rs index 4a0e79b..627916f 100644 --- a/crates/tabby/src/services/completions/completions_prompt.rs +++ b/crates/tabby/src/services/completions/completions_prompt.rs @@ -8,7 +8,7 @@ use textdistance::Algorithm; use tracing::warn; use super::{Segments, Snippet}; -use crate::api::{CodeSearch, CodeSearchError}; +use crate::api::code::{CodeSearch, CodeSearchError}; static MAX_SNIPPETS_TO_FETCH: usize = 20; static MAX_SNIPPET_CHARS_IN_PROMPT: usize = 768; diff --git a/crates/tabby/src/services/event.rs b/crates/tabby/src/services/event.rs index bf910e5..9c77391 100644 --- a/crates/tabby/src/services/event.rs +++ b/crates/tabby/src/services/event.rs @@ -13,7 +13,7 @@ use tokio::{ time::{self}, }; -use crate::api::{Event, EventLogger}; +use crate::api::event::{Event, EventLogger}; lazy_static! { static ref WRITER: UnboundedSender = {