From 4a30b960d4099ff82f86cc209253dee203238cdb Mon Sep 17 00:00:00 2001 From: Marshall Bowers Date: Tue, 25 Mar 2025 14:30:46 -0400 Subject: [PATCH] language_model: Remove dependency on `ui` (#27448) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This PR removes the dependency on the `ui` crate from the `language_model` crate. We were only depending on it to import `IconName`—which now lives in `icons`—and some re-exported GPUI items. Release Notes: - N/A --- Cargo.lock | 2 +- crates/language_model/Cargo.toml | 2 +- crates/language_model/src/language_model.rs | 2 +- crates/language_model/src/model/cloud_model.rs | 2 +- crates/language_model/src/request.rs | 4 ++-- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 95b5c25374..649ad79d16 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -7311,6 +7311,7 @@ dependencies = [ "google_ai", "gpui", "http_client", + "icons", "image", "log", "open_ai", @@ -7323,7 +7324,6 @@ dependencies = [ "strum", "telemetry_events", "thiserror 2.0.12", - "ui", "util", ] diff --git a/crates/language_model/Cargo.toml b/crates/language_model/Cargo.toml index e279c6989b..b33a64a57d 100644 --- a/crates/language_model/Cargo.toml +++ b/crates/language_model/Cargo.toml @@ -25,6 +25,7 @@ futures.workspace = true google_ai = { workspace = true, features = ["schemars"] } gpui.workspace = true http_client.workspace = true +icons.workspace = true image.workspace = true log.workspace = true open_ai = { workspace = true, features = ["schemars"] } @@ -37,7 +38,6 @@ smol.workspace = true strum.workspace = true telemetry_events.workspace = true thiserror.workspace = true -ui.workspace = true util.workspace = true [dev-dependencies] diff --git a/crates/language_model/src/language_model.rs b/crates/language_model/src/language_model.rs index a016ae0b37..7620e50732 100644 --- a/crates/language_model/src/language_model.rs +++ b/crates/language_model/src/language_model.rs @@ -13,6 +13,7 @@ use client::Client; use futures::FutureExt; use futures::{future::BoxFuture, stream::BoxStream, StreamExt, TryStreamExt as _}; use gpui::{AnyElement, AnyView, App, AsyncApp, SharedString, Task, Window}; +use icons::IconName; use proto::Plan; use schemars::JsonSchema; use serde::{de::DeserializeOwned, Deserialize, Serialize}; @@ -20,7 +21,6 @@ use std::fmt; use std::ops::{Add, Sub}; use std::{future::Future, sync::Arc}; use thiserror::Error; -use ui::IconName; use util::serde::is_default; pub use crate::model::*; diff --git a/crates/language_model/src/model/cloud_model.rs b/crates/language_model/src/model/cloud_model.rs index 3a610cad73..3d01affb7e 100644 --- a/crates/language_model/src/model/cloud_model.rs +++ b/crates/language_model/src/model/cloud_model.rs @@ -6,13 +6,13 @@ use client::Client; use gpui::{ App, AppContext as _, AsyncApp, Context, Entity, EventEmitter, Global, ReadGlobal as _, }; +use icons::IconName; use proto::{Plan, TypedEnvelope}; use schemars::JsonSchema; use serde::{Deserialize, Serialize}; use smol::lock::{RwLock, RwLockUpgradableReadGuard, RwLockWriteGuard}; use strum::EnumIter; use thiserror::Error; -use ui::IconName; use crate::LanguageModelAvailability; diff --git a/crates/language_model/src/request.rs b/crates/language_model/src/request.rs index 7b36216b91..3666394ee0 100644 --- a/crates/language_model/src/request.rs +++ b/crates/language_model/src/request.rs @@ -5,11 +5,11 @@ use crate::role::Role; use crate::{LanguageModelToolUse, LanguageModelToolUseId}; use base64::write::EncoderWriter; use gpui::{ - point, size, App, AppContext as _, DevicePixels, Image, ObjectFit, RenderImage, Size, Task, + point, px, size, App, AppContext as _, DevicePixels, Image, ObjectFit, RenderImage, + SharedString, Size, Task, }; use image::{codecs::png::PngEncoder, imageops::resize, DynamicImage, ImageDecoder}; use serde::{Deserialize, Serialize}; -use ui::{px, SharedString}; use util::ResultExt; #[derive(Clone, PartialEq, Eq, Serialize, Deserialize, Hash)]