diff --git a/Cargo.lock b/Cargo.lock index e51968b0262a91d3a1ed78a10656e75b9d0d4523..450d59e73b6ce48f86abe17d6bd27df98f1e7df4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -17195,7 +17195,6 @@ dependencies = [ "fs", "futures 0.3.31", "gpui", - "indexmap 2.9.0", "log", "palette", "parking_lot", diff --git a/Dockerfile-collab b/Dockerfile-collab index c1621d6ee67e42117315ea49eac99f6f6260f4b7..a85fe93f198475534cb7396abe594f9d02eeb57b 100644 --- a/Dockerfile-collab +++ b/Dockerfile-collab @@ -1,6 +1,6 @@ # syntax = docker/dockerfile:1.2 -FROM rust:1.89-bookworm as builder +FROM rust:1.90-bookworm as builder WORKDIR app COPY . . diff --git a/crates/collab/src/db/queries/channels.rs b/crates/collab/src/db/queries/channels.rs index 4bb82865e73968e2861777d5cd0f700675366e81..3f5c8b6a885f4fa47bf868e3a2c564cc2067428e 100644 --- a/crates/collab/src/db/queries/channels.rs +++ b/crates/collab/src/db/queries/channels.rs @@ -1129,8 +1129,3 @@ async fn max_order(parent_path: &str, tx: &TransactionHandle) -> Result { enum QueryIds { Id, } - -#[derive(Copy, Clone, Debug, EnumIter, DeriveColumn)] -enum QueryUserIds { - UserId, -} diff --git a/crates/command_palette/src/persistence.rs b/crates/command_palette/src/persistence.rs index 01cf403083b2de4ed7919801ab33e4aae947007e..feaed72570d56f4895ff05eef891fc81c2e5e0b6 100644 --- a/crates/command_palette/src/persistence.rs +++ b/crates/command_palette/src/persistence.rs @@ -10,6 +10,7 @@ use db::{ use serde::{Deserialize, Serialize}; use time::OffsetDateTime; +#[cfg(test)] #[derive(Debug, Clone, Deserialize, Serialize, PartialEq)] pub(crate) struct SerializedCommandInvocation { pub(crate) command_name: String, @@ -39,6 +40,7 @@ impl Column for SerializedCommandUsage { } } +#[cfg(test)] impl Column for SerializedCommandInvocation { fn column(statement: &mut Statement, start_index: i32) -> Result<(Self, i32)> { let (command_name, next_index): (String, i32) = Column::column(statement, start_index)?; @@ -84,8 +86,9 @@ impl CommandPaletteDB { .await } + #[cfg(test)] query! { - pub fn get_last_invoked(command: &str) -> Result> { + pub(crate) fn get_last_invoked(command: &str) -> Result> { SELECT command_name, user_query, diff --git a/crates/context_server/src/listener.rs b/crates/context_server/src/listener.rs index 4e5da2566ee25ee70e1687cf5f0806e19789a824..b71d59d760242d7f927e35dc1fef2351b462af32 100644 --- a/crates/context_server/src/listener.rs +++ b/crates/context_server/src/listener.rs @@ -438,13 +438,3 @@ struct RawRequest { #[serde(skip_serializing_if = "Option::is_none")] params: Option>, } - -#[derive(Serialize, Deserialize)] -struct RawResponse { - jsonrpc: &'static str, - id: RequestId, - #[serde(skip_serializing_if = "Option::is_none")] - error: Option, - #[serde(skip_serializing_if = "Option::is_none")] - result: Option>, -} diff --git a/crates/extension_host/src/wasm_host/wit/since_v0_0_6.rs b/crates/extension_host/src/wasm_host/wit/since_v0_0_6.rs index 084c24f2ec2d5c0071e894acf1a4a1050ed14c40..2fc29abadb2eb60d051b37e072727931aee72d69 100644 --- a/crates/extension_host/src/wasm_host/wit/since_v0_0_6.rs +++ b/crates/extension_host/src/wasm_host/wit/since_v0_0_6.rs @@ -23,6 +23,7 @@ wasmtime::component::bindgen!({ }); mod settings { + #![allow(dead_code)] include!(concat!(env!("OUT_DIR"), "/since_v0.0.6/settings.rs")); } diff --git a/crates/extension_host/src/wasm_host/wit/since_v0_2_0.rs b/crates/extension_host/src/wasm_host/wit/since_v0_2_0.rs index c6c3a8475f4b230947e03285e851c332fcdef7f6..9475438b660d2e126ae6ca24d276795d51d4ce8b 100644 --- a/crates/extension_host/src/wasm_host/wit/since_v0_2_0.rs +++ b/crates/extension_host/src/wasm_host/wit/since_v0_2_0.rs @@ -30,6 +30,7 @@ wasmtime::component::bindgen!({ pub use self::zed::extension::*; mod settings { + #![allow(dead_code)] include!(concat!(env!("OUT_DIR"), "/since_v0.2.0/settings.rs")); } diff --git a/crates/extension_host/src/wasm_host/wit/since_v0_3_0.rs b/crates/extension_host/src/wasm_host/wit/since_v0_3_0.rs index a2d02cc07a2496e13b9d344ee339a0a4f1e1e124..b6a75ba7dda6ded2e074a2ece35b4b3f881f1619 100644 --- a/crates/extension_host/src/wasm_host/wit/since_v0_3_0.rs +++ b/crates/extension_host/src/wasm_host/wit/since_v0_3_0.rs @@ -30,6 +30,7 @@ wasmtime::component::bindgen!({ }); mod settings { + #![allow(dead_code)] include!(concat!(env!("OUT_DIR"), "/since_v0.3.0/settings.rs")); } diff --git a/crates/extension_host/src/wasm_host/wit/since_v0_4_0.rs b/crates/extension_host/src/wasm_host/wit/since_v0_4_0.rs index 4e2650bba7d4b44557f091e697bf8f25a9403fa2..7c8be1322f94e35ded911d64e13f5afb4bf3702c 100644 --- a/crates/extension_host/src/wasm_host/wit/since_v0_4_0.rs +++ b/crates/extension_host/src/wasm_host/wit/since_v0_4_0.rs @@ -30,6 +30,7 @@ wasmtime::component::bindgen!({ }); mod settings { + #![allow(dead_code)] include!(concat!(env!("OUT_DIR"), "/since_v0.4.0/settings.rs")); } diff --git a/crates/extension_host/src/wasm_host/wit/since_v0_5_0.rs b/crates/extension_host/src/wasm_host/wit/since_v0_5_0.rs index bb73d77f7f0470a0b700e87931be9cac2bb51a86..6d04663de7772e9c965cf1b88840727cfdcb4b59 100644 --- a/crates/extension_host/src/wasm_host/wit/since_v0_5_0.rs +++ b/crates/extension_host/src/wasm_host/wit/since_v0_5_0.rs @@ -31,6 +31,7 @@ wasmtime::component::bindgen!({ }); mod settings { + #![allow(dead_code)] include!(concat!(env!("OUT_DIR"), "/since_v0.5.0/settings.rs")); } diff --git a/crates/extension_host/src/wasm_host/wit/since_v0_6_0.rs b/crates/extension_host/src/wasm_host/wit/since_v0_6_0.rs index be4f3ca71a3f392965488bd2d30eab556d8fb300..790a75e896dc0a440bc27d8972c09b879020e9c2 100644 --- a/crates/extension_host/src/wasm_host/wit/since_v0_6_0.rs +++ b/crates/extension_host/src/wasm_host/wit/since_v0_6_0.rs @@ -52,6 +52,7 @@ wasmtime::component::bindgen!({ pub use self::zed::extension::*; mod settings { + #![allow(dead_code)] include!(concat!(env!("OUT_DIR"), "/since_v0.6.0/settings.rs")); } diff --git a/crates/git_ui/src/git_panel_settings.rs b/crates/git_ui/src/git_panel_settings.rs index b137988539510a3d3242656bd1f6cc6d85a07703..342b0105cd5f92b8228572391cd4ddac7256a7a7 100644 --- a/crates/git_ui/src/git_panel_settings.rs +++ b/crates/git_ui/src/git_panel_settings.rs @@ -9,14 +9,6 @@ use ui::{ }; use workspace::dock::DockPosition; -#[derive(Copy, Clone, Debug, Serialize, Deserialize, JsonSchema, PartialEq, Eq)] -pub struct ScrollbarSettingsContent { - /// When to show the scrollbar in the git panel. - /// - /// Default: inherits editor scrollbar settings - pub show: Option>, -} - #[derive(Copy, Clone, Debug, Serialize, Deserialize, JsonSchema, PartialEq, Eq)] pub struct ScrollbarSettings { pub show: Option, diff --git a/crates/gpui/examples/data_table.rs b/crates/gpui/examples/data_table.rs index 10e22828a8e8f5c8778cbcb06a087d4bdfac3adc..e176c44d530ecbc6d5d3140f5c2defaa30a6149e 100644 --- a/crates/gpui/examples/data_table.rs +++ b/crates/gpui/examples/data_table.rs @@ -238,7 +238,7 @@ impl RenderOnce for TableRow { .flex_row() .border_b_1() .border_color(rgb(0xE0E0E0)) - .bg(if self.ix % 2 == 0 { + .bg(if self.ix.is_multiple_of(2) { rgb(0xFFFFFF) } else { rgb(0xFAFAFA) diff --git a/crates/gpui/src/text_system/line_layout.rs b/crates/gpui/src/text_system/line_layout.rs index 43694702a82566b8f84199dcfc4ff996da93588e..eff4e640efb28a9b70c0da2008cd2293ee2dae47 100644 --- a/crates/gpui/src/text_system/line_layout.rs +++ b/crates/gpui/src/text_system/line_layout.rs @@ -634,15 +634,15 @@ struct CacheKeyRef<'a> { force_width: Option, } -impl PartialEq for (dyn AsCacheKeyRef + '_) { +impl PartialEq for dyn AsCacheKeyRef + '_ { fn eq(&self, other: &dyn AsCacheKeyRef) -> bool { self.as_cache_key_ref() == other.as_cache_key_ref() } } -impl Eq for (dyn AsCacheKeyRef + '_) {} +impl Eq for dyn AsCacheKeyRef + '_ {} -impl Hash for (dyn AsCacheKeyRef + '_) { +impl Hash for dyn AsCacheKeyRef + '_ { fn hash(&self, state: &mut H) { self.as_cache_key_ref().hash(state) } diff --git a/crates/project_panel/src/project_panel.rs b/crates/project_panel/src/project_panel.rs index debe3fc32a002b7a78806e3d6979f028cdc665b0..9b6d9093b219479f811e019c811ad4d7a22d32f8 100644 --- a/crates/project_panel/src/project_panel.rs +++ b/crates/project_panel/src/project_panel.rs @@ -3579,7 +3579,7 @@ impl ProjectPanel { let entry_range = range.start.saturating_sub(ix)..end_ix - ix; let entries = visible .index - .get_or_init(|| visible.entries.iter().map(|e| (e.path.clone())).collect()); + .get_or_init(|| visible.entries.iter().map(|e| e.path.clone()).collect()); let base_index = ix + entry_range.start; for (i, entry) in visible.entries[entry_range].iter().enumerate() { let global_index = base_index + i; @@ -3623,7 +3623,7 @@ impl ProjectPanel { let entry_range = range.start.saturating_sub(ix)..end_ix - ix; let entries = visible .index - .get_or_init(|| visible.entries.iter().map(|e| (e.path.clone())).collect()); + .get_or_init(|| visible.entries.iter().map(|e| e.path.clone()).collect()); for entry in visible.entries[entry_range].iter() { let status = git_status_setting .then_some(entry.git_summary) @@ -4968,7 +4968,7 @@ impl ProjectPanel { visible_worktree .entries .iter() - .map(|e| (e.path.clone())) + .map(|e| e.path.clone()) .collect() }); diff --git a/crates/task/src/vscode_debug_format.rs b/crates/task/src/vscode_debug_format.rs index 5e21cd65302a11a8106881077b0f08c118ed215e..9b3f2e808b750e60d494c0b92abf78bb8c698227 100644 --- a/crates/task/src/vscode_debug_format.rs +++ b/crates/task/src/vscode_debug_format.rs @@ -6,13 +6,6 @@ use crate::{ DebugScenario, DebugTaskFile, EnvVariableReplacer, TcpArgumentsTemplate, VariableName, }; -#[derive(Clone, Debug, Deserialize, PartialEq)] -#[serde(rename_all = "camelCase")] -enum Request { - Launch, - Attach, -} - // TODO support preLaunchTask linkage with other tasks #[derive(Clone, Debug, Deserialize, PartialEq)] #[serde(rename_all = "camelCase")] diff --git a/crates/theme/Cargo.toml b/crates/theme/Cargo.toml index 9f84b523af48e5e2645ea7b850f526db2c2ebb7f..306733bf3496ae0c122b73fbd109eb46f3662b8a 100644 --- a/crates/theme/Cargo.toml +++ b/crates/theme/Cargo.toml @@ -23,7 +23,6 @@ derive_more.workspace = true fs.workspace = true futures.workspace = true gpui.workspace = true -indexmap.workspace = true log.workspace = true palette = { workspace = true, default-features = false, features = ["std"] } parking_lot.workspace = true diff --git a/crates/theme/src/schema.rs b/crates/theme/src/schema.rs index 945517daea904e3bb5bdfe4954813a81af2a9e2b..2d7e1ff9d823eae0d48b375592c6d1f91318f472 100644 --- a/crates/theme/src/schema.rs +++ b/crates/theme/src/schema.rs @@ -1,11 +1,9 @@ #![allow(missing_docs)] use gpui::{FontStyle, FontWeight, HighlightStyle, Hsla}; -use indexmap::IndexMap; use palette::FromColor; use schemars::JsonSchema; use serde::{Deserialize, Serialize}; -use settings::{AccentContent, PlayerColorContent}; pub use settings::{FontWeightContent, WindowBackgroundContent}; use crate::{StatusColorsRefinement, ThemeColorsRefinement}; @@ -49,30 +47,6 @@ pub struct ThemeContent { pub style: settings::ThemeStyleContent, } -/// The content of a serialized theme. -#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonSchema, PartialEq)] -#[serde(default)] -pub struct ThemeStyleContent { - #[serde(default, rename = "background.appearance")] - pub window_background_appearance: Option, - - #[serde(default)] - pub accents: Vec, - - #[serde(flatten, default)] - pub colors: settings::ThemeColorsContent, - - #[serde(flatten, default)] - pub status: settings::StatusColorsContent, - - #[serde(default)] - pub players: Vec, - - /// The styles for syntax nodes. - #[serde(default)] - pub syntax: IndexMap, -} - /// Returns the syntax style overrides in the [`ThemeContent`]. pub fn syntax_overrides(this: &settings::ThemeStyleContent) -> Vec<(String, HighlightStyle)> { this.syntax diff --git a/crates/theme_importer/src/main.rs b/crates/theme_importer/src/main.rs index e10d21e4e297fef1ec96d98dea0e45de0ec7e73f..0ea6bbc4bcfba6196031b705f92771c753b9dc50 100644 --- a/crates/theme_importer/src/main.rs +++ b/crates/theme_importer/src/main.rs @@ -19,37 +19,6 @@ use crate::vscode::VsCodeThemeConverter; const ZED_THEME_SCHEMA_URL: &str = "https://zed.dev/schema/themes/v0.2.0.json"; -#[derive(Debug, Deserialize)] -struct FamilyMetadata { - #[expect( - unused, - reason = "This field was found to be unused with serde library bump; it's left as is due to insufficient context on PO's side, but it *may* be fine to remove" - )] - pub name: String, - #[expect( - unused, - reason = "This field was found to be unused with serde library bump; it's left as is due to insufficient context on PO's side, but it *may* be fine to remove" - )] - pub author: String, - #[expect( - unused, - reason = "This field was found to be unused with serde library bump; it's left as is due to insufficient context on PO's side, but it *may* be fine to remove" - )] - pub themes: Vec, - - /// Overrides for specific syntax tokens. - /// - /// Use this to ensure certain Zed syntax tokens are matched - /// to an exact set of scopes when it is not otherwise possible - /// to rely on the default mappings in the theme importer. - #[serde(default)] - #[expect( - unused, - reason = "This field was found to be unused with serde library bump; it's left as is due to insufficient context on PO's side, but it *may* be fine to remove" - )] - pub syntax: IndexMap>, -} - #[derive(Debug, Clone, Copy, Deserialize)] #[serde(rename_all = "snake_case")] pub enum ThemeAppearanceJson { diff --git a/crates/vim/src/object.rs b/crates/vim/src/object.rs index e6eb46c0faeba8a80608259189577d73fcbb2599..8ae163b17266bf77716d6643495c1b55657f8c5f 100644 --- a/crates/vim/src/object.rs +++ b/crates/vim/src/object.rs @@ -1039,7 +1039,7 @@ fn text_object( .text_object_ranges(offset..offset, TreeSitterOptions::default()) .filter_map(|(r, m)| if m == target { Some(r) } else { None }) .collect(); - matches.sort_by_key(|r| (r.end - r.start)); + matches.sort_by_key(|r| r.end - r.start); if let Some(buffer_range) = matches.first() { let range = excerpt.map_range_from_buffer(buffer_range.clone()); return Some(range.start.to_display_point(map)..range.end.to_display_point(map)); @@ -1050,7 +1050,7 @@ fn text_object( .text_object_ranges(offset..offset, TreeSitterOptions::default()) .filter_map(|(r, m)| if m == around { Some(r) } else { None }) .collect(); - matches.sort_by_key(|r| (r.end - r.start)); + matches.sort_by_key(|r| r.end - r.start); let around_range = matches.first()?; let mut matches: Vec> = buffer diff --git a/flake.lock b/flake.lock index d96f0a998ff47958a7b605d61e1bf539929555f5..ced528afa60cb567b291c6962c80e503845b08fc 100644 --- a/flake.lock +++ b/flake.lock @@ -2,11 +2,11 @@ "nodes": { "crane": { "locked": { - "lastModified": 1755993354, - "narHash": "sha256-FCRRAzSaL/+umLIm3RU3O/+fJ2ssaPHseI2SSFL8yZU=", + "lastModified": 1758215636, + "narHash": "sha256-8nkzkPbdxze8CxWhKWlcLbJEU1vfLM/nVqRlTy17V54=", "owner": "ipetkov", "repo": "crane", - "rev": "25bd41b24426c7734278c2ff02e53258851db914", + "rev": "a669fe77a8b0cd6f11419d89ea45a16691ca5121", "type": "github" }, "original": { @@ -33,10 +33,10 @@ "nixpkgs": { "locked": { "lastModified": 315532800, - "narHash": "sha256-E8CyvVDZuIsF7puIw+OLkrFmhj3qUV+iwPcNbBhdcxM=", - "rev": "a918bb3594dd243c2f8534b3be01b3cb4ed35fd1", + "narHash": "sha256-YPoFUJMpbuPvIS4FJBn2Sv/iWsui9S26gu2ufFWEY0g=", + "rev": "a1f79a1770d05af18111fbbe2a3ab2c42c0f6cd0", "type": "tarball", - "url": "https://releases.nixos.org/nixpkgs/nixpkgs-25.11pre854010.a918bb3594dd/nixexprs.tar.xz" + "url": "https://releases.nixos.org/nixpkgs/nixpkgs-25.11pre864673.a1f79a1770d0/nixexprs.tar.xz" }, "original": { "type": "tarball", @@ -58,11 +58,11 @@ ] }, "locked": { - "lastModified": 1756607787, - "narHash": "sha256-ciwAdgtlAN1PCaidWK6RuWsTBL8DVuyDCGM+X3ein5Q=", + "lastModified": 1758508617, + "narHash": "sha256-kx2uELmVnAbiekj/YFfWR26OXqXedImkhe2ocnbumTA=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "f46d294b87ebb9f7124f1ce13aa2a5f5acc0f3eb", + "rev": "d2bac276ac7e669a1f09c48614538a37e3eb6d0f", "type": "github" }, "original": { diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 2c909e0e1e66a7198c32e48805206cde77d9152c..6ef0865182f1d5ef79cebdcbeacd52d5f71b72ae 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,5 +1,5 @@ [toolchain] -channel = "1.89" +channel = "1.90" profile = "minimal" components = [ "rustfmt", "clippy" ] targets = [ diff --git a/script/generate-licenses b/script/generate-licenses index 771ce2363d0e46856393d0aea3d72d484519353a..5deed400e4e173b4ce4bb88e4b36469cd176a9ad 100755 --- a/script/generate-licenses +++ b/script/generate-licenses @@ -2,7 +2,7 @@ set -euo pipefail -CARGO_ABOUT_VERSION="0.7" +CARGO_ABOUT_VERSION="0.8" OUTPUT_FILE="${1:-$(pwd)/assets/licenses.md}" TEMPLATE_FILE="script/licenses/template.md.hbs" diff --git a/script/generate-licenses-csv b/script/generate-licenses-csv index 7ffe0f3f1445d113c24644c61e00f90a4463a066..0e40c69d47a0d769e25fe1d45df18bdc439720d8 100755 --- a/script/generate-licenses-csv +++ b/script/generate-licenses-csv @@ -2,7 +2,7 @@ set -euo pipefail -CARGO_ABOUT_VERSION="0.6" +CARGO_ABOUT_VERSION="0.8" OUTPUT_FILE="${1:-$(pwd)/assets/licenses.csv}" TEMPLATE_FILE="script/licenses/template.csv.hbs" diff --git a/script/generate-licenses.ps1 b/script/generate-licenses.ps1 index 52a6fe0118b9979be23d0c584bc0facdd4ce8f1e..ab7df73e5696e7fbbceb236766ae35c3360a3afe 100644 --- a/script/generate-licenses.ps1 +++ b/script/generate-licenses.ps1 @@ -1,4 +1,4 @@ -$CARGO_ABOUT_VERSION="0.7" +$CARGO_ABOUT_VERSION="0.8" $outputFile=$args[0] ? $args[0] : "$(Get-Location)/assets/licenses.md" $templateFile="script/licenses/template.md.hbs"