Compare commits

...

12 Commits

Author SHA1 Message Date
Zed Bot
f6c7d03357 Bump to 0.133.3 for @ConradIrwin 2024-04-26 14:35:01 -07:00
gcp-cherry-pick-bot[bot]
d7e3b79243 Fix panic in Diagnostics (cherry-pick #11066) (#11068)
Cherry-picked Fix panic in Diagnostics (#11066)

cc @maxbrunsfeld

Release Notes:

- Fixed a panic in populating diagnostics

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
2024-04-26 14:17:56 -06:00
gcp-cherry-pick-bot[bot]
7a0f039414 Fix panic in rename selections (cherry-pick #11033) (#11034)
Cherry-picked Fix panic in rename selections (#11033)

cc @someonetoignore

Release Notes:

- Fixed a panic when renaming with a selection (preview only)

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
2024-04-25 23:21:02 -06:00
gcp-cherry-pick-bot[bot]
e8ea7cfc88 Fix panic in vim search (cherry-pick #11022) (#11030)
Cherry-picked Fix panic in vim search (#11022)

Release Notes:

- vim: Fixed a panic when searching

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
2024-04-25 20:45:19 -06:00
Zed Bot
759c3417d0 Bump to 0.133.2 for @maxdeviant 2024-04-25 06:33:36 -07:00
gcp-cherry-pick-bot[bot]
09c37027ce Revert "Changed cmd+w with no open tabs to close window (#10740)" (cherry-pick #10986) (#10988)
Cherry-picked Revert "Changed cmd+w with no open tabs to close window
(#10740)" (#10986)

This PR reverts #10740, as it makes it too easy to close Zed
accidentally.

Quitting Zed when you don't mean to is disruptive and can break your
flow. This is even more the case when you're collaborating.

Therefore, we shouldn't make it easy to quit Zed when you don't mean to.

If we want to bring back this behavior it needs to have a corresponding
setting that should, in my opinion, be **off** by default. Additionally,
someone made the good point that this behavior should not be present on
Linux or Windows.

This reverts commit 5102e37a5b.

Release Notes:

- Changed `cmd-w` with no open tabs to no longer close the window
(preview-only).

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
2024-04-25 09:27:07 -04:00
Marshall Bowers
26c5f035c6 Ignore errors drafting release notes 2024-04-24 18:31:39 -04:00
Marshall Bowers
fedb2aa949 Try fetch-depth: 25 2024-04-24 18:19:59 -04:00
Marshall Bowers
de4e77c380 Try fetching tags 2024-04-24 18:12:46 -04:00
Zed Bot
99007ab26f Bump to 0.133.1 for @maxdeviant 2024-04-24 14:54:49 -07:00
gcp-cherry-pick-bot[bot]
f9e59f0213 Restore the previous styles for single-line editors (cherry-pick #10951) (#10952)
Cherry-picked Restore the previous styles for single-line editors
(#10951)

This PR fixes a bug introduced in #10870 that caused editors used as
single-line inputs to have the wrong text style.

If this change was intentional for something relating to the new
Assistant panel, we'll need to figure out a way to change it without
breaking these other usages.

### Before

<img width="589" alt="Screenshot 2024-04-24 at 5 35 36 PM"

src="https://github.com/zed-industries/zed/assets/1486634/31624cfd-75d1-4771-9402-c14ef9e9483e">

<img width="326" alt="Screenshot 2024-04-24 at 5 35 46 PM"

src="https://github.com/zed-industries/zed/assets/1486634/1b76a3ef-7205-49ee-b391-7609f90461bd">

### After

<img width="588" alt="Screenshot 2024-04-24 at 5 36 14 PM"

src="https://github.com/zed-industries/zed/assets/1486634/9d550ee2-80c0-4afb-9b45-a2956471c546">

<img width="260" alt="Screenshot 2024-04-24 at 5 36 31 PM"

src="https://github.com/zed-industries/zed/assets/1486634/63240f27-1679-45d5-b39c-016860ff9683">

Release Notes:

- Fixed a bug where some inputs were using the wrong font style
(preview-only).

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
2024-04-24 17:54:12 -04:00
Joseph T. Lyons
0689ef4369 v0.133.x preview 2024-04-24 12:46:14 -04:00
8 changed files with 55 additions and 20 deletions

View File

@@ -173,6 +173,11 @@ jobs:
- name: Checkout repo
uses: actions/checkout@v4
with:
# We need to fetch more than one commit so that `script/draft-release-notes`
# is able to diff between the current and previous tag.
#
# 25 was chosen arbitrarily.
fetch-depth: 25
clean: false
submodules: "recursive"
@@ -206,7 +211,8 @@ jobs:
exit 1
fi
mkdir -p target/
script/draft-release-notes "$version" "$channel" > target/release-notes.md
# Ignore any errors that occur while drafting release notes to not fail the build.
script/draft-release-notes "$version" "$channel" > target/release-notes.md || true
- name: Generate license file
run: script/generate-licenses

2
Cargo.lock generated
View File

@@ -12607,7 +12607,7 @@ dependencies = [
[[package]]
name = "zed"
version = "0.133.0"
version = "0.133.3"
dependencies = [
"activity_indicator",
"anyhow",

View File

@@ -887,22 +887,27 @@ fn diagnostic_header_renderer(diagnostic: Diagnostic) -> RenderBlock {
})
}
fn compare_diagnostics<L: language::ToOffset, R: language::ToOffset>(
lhs: &DiagnosticEntry<L>,
rhs: &DiagnosticEntry<R>,
fn compare_diagnostics(
old: &DiagnosticEntry<language::Anchor>,
new: &DiagnosticEntry<language::Anchor>,
snapshot: &language::BufferSnapshot,
) -> Ordering {
lhs.range
use language::ToOffset;
// The old diagnostics may point to a previously open Buffer for this file.
if !old.range.start.is_valid(snapshot) {
return Ordering::Greater;
}
old.range
.start
.to_offset(snapshot)
.cmp(&rhs.range.start.to_offset(snapshot))
.cmp(&new.range.start.to_offset(snapshot))
.then_with(|| {
lhs.range
old.range
.end
.to_offset(snapshot)
.cmp(&rhs.range.end.to_offset(snapshot))
.cmp(&new.range.end.to_offset(snapshot))
})
.then_with(|| lhs.diagnostic.message.cmp(&rhs.diagnostic.message))
.then_with(|| old.diagnostic.message.cmp(&new.diagnostic.message))
}
#[cfg(test)]

View File

@@ -8200,9 +8200,13 @@ impl Editor {
cursor_offset_in_rename_range_end..cursor_offset_in_rename_range
}
};
editor.change_selections(Some(Autoscroll::fit()), cx, |s| {
s.select_ranges([rename_selection_range]);
});
if rename_selection_range.end > old_name.len() {
editor.select_all(&SelectAll, cx);
} else {
editor.change_selections(Some(Autoscroll::fit()), cx, |s| {
s.select_ranges([rename_selection_range]);
});
}
editor
});
@@ -10323,7 +10327,19 @@ impl Render for Editor {
let settings = ThemeSettings::get_global(cx);
let text_style = match self.mode {
EditorMode::SingleLine | EditorMode::AutoHeight { .. } => cx.text_style(),
EditorMode::SingleLine | EditorMode::AutoHeight { .. } => TextStyle {
color: cx.theme().colors().editor_foreground,
font_family: settings.ui_font.family.clone(),
font_features: settings.ui_font.features,
font_size: rems(0.875).into(),
font_weight: FontWeight::NORMAL,
font_style: FontStyle::Normal,
line_height: relative(settings.buffer_line_height.value()),
background_color: None,
underline: None,
strikethrough: None,
white_space: WhiteSpace::Normal,
},
EditorMode::Full => TextStyle {
color: cx.theme().colors().editor_foreground,
font_family: settings.buffer_font.family.clone(),

View File

@@ -159,11 +159,21 @@ fn search_submit(workspace: &mut Workspace, _: &SearchSubmit, cx: &mut ViewConte
search_bar.select_match(direction, count, cx);
search_bar.focus_editor(&Default::default(), cx);
let prior_selections = state.prior_selections.drain(..).collect();
let mut prior_selections: Vec<_> = state.prior_selections.drain(..).collect();
let prior_mode = state.prior_mode;
let prior_operator = state.prior_operator.take();
let new_selections = vim.editor_selections(cx);
// If the active editor has changed during a search, don't panic.
if prior_selections.iter().any(|s| {
vim.update_active_editor(cx, |_vim, editor, cx| {
!s.start.is_valid(&editor.snapshot(cx).buffer_snapshot)
})
.unwrap_or(true)
}) {
prior_selections.clear();
}
if prior_mode != vim.state().mode {
vim.switch_mode(prior_mode, true, cx);
}

View File

@@ -5,7 +5,7 @@ use crate::{
},
toolbar::Toolbar,
workspace_settings::{AutosaveSetting, TabBarSettings, WorkspaceSettings},
CloseWindow, NewCenterTerminal, NewFile, NewSearch, OpenInTerminal, OpenTerminal, OpenVisible,
NewCenterTerminal, NewFile, NewSearch, OpenInTerminal, OpenTerminal, OpenVisible,
SplitDirection, ToggleZoom, Workspace,
};
use anyhow::Result;
@@ -879,8 +879,6 @@ impl Pane {
cx: &mut ViewContext<Self>,
) -> Option<Task<Result<()>>> {
if self.items.is_empty() {
// Close the window when there's no active items to close.
cx.dispatch_action(Box::new(CloseWindow));
return None;
}
let active_item_id = self.items[self.active_item_index].item_id();

View File

@@ -2,7 +2,7 @@
description = "The fast, collaborative code editor."
edition = "2021"
name = "zed"
version = "0.133.0"
version = "0.133.3"
publish = false
license = "GPL-3.0-or-later"
authors = ["Zed Team <hi@zed.dev>"]

View File

@@ -1 +1 @@
dev
preview