e6eb47d
      fix compile
    
    
    
     HactarCE created
e6eb47d
      fix compile
    HactarCE created
926afb0
      Remove `snippets_only` and replicate similar behavior but only in `impl
    CompletionProvider for Entity<Project>` Co-authored-by: Cole Miller <cole@zed.dev>
HactarCE and Cole Miller created
6f43bcc
      fix clippy lints
    HactarCE created
b548319
      Add test & fix bugs
    Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
HactarCE and Conrad Irwin created
edbe9f5
      Remove todos
    Co-authored-by: Cole Miller <cole@zed.dev>
HactarCE and Cole Miller created
ce11794
      Merge branch 'main' into ajf-snippet-fix
    HactarCE created
4a7a21a
      wip
    Co-authored-by: Cole Miller <cole@zed.dev>
HactarCE and Cole Miller created
e54c9da
      Fix include ignored migration rerunning (#41114)
    Closes #ISSUE Release Notes: - Fixed an issue where having a correct `file_finder.include_ignored` setting would result in failed to migrate errors
Ben Kunkle created
bcbc6a3
      Use ShellKind::try_quote whenever we need to quote shell args (#41104)
    Re-reverts https://github.com/zed-industries/zed/commit/8f4646d6c357409cfc286104088b4d21f2bea851 with fixes Release Notes: - N/A
Jakub Konka created
f213f4b
      Fix duplicate process entries in WSL debug attach list (#40591)
    Closes #40589 Replaced `System::new_all()` with `System::new_with_specifics` to fetch only essential process information and exclude non-main threads from the process list after fix: <img width="641" height="474" alt="image" src="https://github.com/user-attachments/assets/32335552-2f7a-4317-8c01-f37b2eadfdc1" /> Release Notes: - Fix duplicate process entries in WSL debug attach list
feeiyu created
0ee6ca1
      project: Fix inability to open file after save as (#41012)
    Update `project::buffer_store::BufferStore.save_buffer_as` in order to correctly update the `path_to_buffer_id` hash map, ensuring that the currently open file's path is dissociated from the buffer's id, to prevent the new buffer from being open when trying to open the original file. Closes #29783 Release Notes: - Fixed issue where using `workspace: save as` would prevent users from opening the original file from which the new file was created --------- Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Dino and Piotr Osiewicz created
762082b
      ui_input: Donβt focus previous on decrement in `NumberField` (#41095)
    This PR removes the behavior that the number_field changes focus to the previous element when using the decrement button. I mainly noticed this while decreasing the tab-size of a language, since it there closes the page... Please note that I am unsure what if any purpose this code has. I was unable to find a use case and since it is not present in the `increment_handler` I guess it should never have been here --- Release Notes: * Fixed wrongly focus previous element on number_field decrement
ToBinio created
fcd690d
      Enable `source.organizeImports.ruff` by default for Python (#41103)
    Release Notes:
- Enabled automatic import organization, via
[ruff](https://github.com/astral-sh/ruff), when saving Python files. To
disable this, use:
```json
"Python": {
  "code_actions_on_format": { "source.organizeImports.ruff": false }
}
```
    Joseph T. Lyons created
8de4b36
      ACP Extensions (#40663)
    Adds the ability to install ACP agents via extensions Release Notes: - N/A *or* Added/Fixed/Improved ...
Richard Feldman created
7644e79
      agent: Fix edit_agent evals (#40921)
    Release Notes: - N/A
Bennet Fenner created
4fb9113
      ui: Use `focus_visible` method for some components (#41077)
    Using the cool, [recently added](https://github.com/zed-industries/zed/pull/40940) `focus-visible` support in some components. This will be particularly nice in the settings UI, as it will not display the focus styles if you're navigating it with a pointer device as opposed to the keyboard. Release Notes: - N/A
Danilo Leal created
f45a9b3
      git: Branch diff (#40188)
    Release Notes: - git: Adds the ability to view the diff of the current branch since main --------- Co-authored-by: Cole Miller <cole@zed.dev>
Conrad Irwin and Cole Miller created
f11a3dc
      settings_ui: Add small UI adjustments (#41065)
    Super tiny changes that impact mostly Windows/Linux. Release Notes: - N/A
Danilo Leal created
5aa8288
      rules library: Improve empty state & fix quirks on Windows (#41064)
    Just got a new Windows machine and realized that the rules library empty state was completly busted. Ended up also adding some little UI tweaks to make it better for both Windows and Linux. Release Notes: - N/A
Danilo Leal created
fe730e9
      Fix typo in Font Features description, s/b "OpenType" (#41058)
    Fix typo (regression?), "Opentype" should be "OpenType" Closes #ISSUE Release Notes: - N/A
warrenjokinen created
59a98ba
      Add attribution for code sourced from Windows Terminal (#41061)
    Release Notes: - N/A
John Tur created
1cf765e
      Revert: Spawn terminal process on background executor  (#41060)
    Reverts https://github.com/zed-industries/zed/pull/40774 and https://github.com/zed-industries/zed/pull/40824 since they introduce a bug where Nushell processes are leaked and Ctrl+C doesn't kill the current process. Release Notes: - Fix a bug where nushell processes wouldn't get killed after closing a terminal tab
Agus Zubiaga created
79eff1f
      Make cursor move to duplicated line when duplicating line up (#41004)
     Closes #40919 Follow-up of #39610 Release Notes: - When duplicating line up, fixed cursor to move to the duplicated line
Tom Planche created
af0d2ad
      docs: Fix small grammatical typo in JSX section (#41055)
    Happened to notice this typo while going through the docs. Release Notes: - N/A --- π
Kunall Banerjee created
f0ac54e
      settings_ui: Fix memory leak (#41036)
    Closes #40351 The leak mainly showed up in the appearance page because it had a lot of dropdown menus. The problem occurred because the drop-down menus were creating a new entity on each frame instead of using the `window.use_state...` API. Release Notes: - settings ui: Fixed memory leak in UI --------- Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
Anthony Eid and Mikayla Maki created
68707ff
      crashes: Avoid crash handler on detached threads (#40883)
    Set a TLS bit to skip invoking the crash handler when a detached thread panics. cc @P1n3appl3 - is this at odds with what we need the crash handler to do? May close #39289, cannot repro without a nightly build Release Notes: - Fixed extension panics crashing Zed on Linux Co-authored-by: dino <dinojoaocosta@gmail.com>
Nia and dino created
1ce9a85
      git: Only save dirty files during staging (#41047)
    Closes #40581 Release Notes: - git: No longer save clean files when staging (to avoid triggering unnecessary rebuilds in external file watchers like vite)
Conrad Irwin created
1966d4c
      Add an issue template for Git bugs (#41048)
    Release Notes: - N/A
Joseph T. Lyons created
b6a1867
      settings_ui: Fix settings window doesn't inherit Zed icon  (#41031)
    Closes #40946 Release Notes: - N/A
Smit Barmase created
c0ff8ef
      remote: Do not compress remote by default when building from source (#40994)
    Release Notes: - N/A
Jakub Konka created
66ec0fc
      Revert zero-width non-joiner insertion in text shaping (#41043)
    Reverts parts of https://github.com/zed-industries/zed/pull/39928 Closes https://github.com/zed-industries/zed/issues/40987 Release Notes: - Fixed some fonts rendering with absurd spacing on MacOS
Lukas Wirth created
435eab6
      Fix ESLint linebreak-style errors by preserving line endings in LSP communication (#38773)
    Closes https://github.com/zed-industries/zed/issues/38453 Current `Buffer` API only allows getting buffer text with `\n` line breaks β even if the `\r\n` was used in the original file's text. This it not correct in certain cases like LSP formatting, where language servers need to have original document context for e.g. formatting purposes. Added new `Buffer` API, replaced all buffer LSP registration places with the new one and added more tests. Release Notes: - Fixed ESLint linebreak-style errors by preserving line endings in LSP communication --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Kirill Bulatov <kirill@zed.dev>
Devdatta Talele , Claude , and Kirill Bulatov created
67094c2
      remove unnecessary todo!s
    Co-authored-by: Cole Miller <cole@zed.dev>
HactarCE and Cole Miller created
d404043
      Merge remote-tracking branch 'origin/main' into ajf-snippet-fix
    Co-authored-by: Cole Miller <cole@zed.dev>
HactarCE and Cole Miller created
d5946c5
      wip
    Co-authored-by: Cole Miller <cole@zed.dev>
HactarCE and Cole Miller created
55bc679
      docs: Ensure macOS and Linux keybindings are escaped in HTML (#39802)
    Closes #39654 Release Notes: - Fixed the formatting of macOS and Linux keybindings in the Zed docs to escape the backslash character when templating.
Sean Hagstrom created
6aaf19f
      multi_buffer: Split multi_buffer into more modules (#41033)
    There are a of separate APIs in this, partially interleaved making it difficult to grasp. Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
d83ed4e
      docs: Update docs for `theme_overrides` setting (#41038)
    This PR updates the docs to reference the `theme_overrides` setting instead of the old `experimental.theme_overrides` setting. Release Notes: - N/A
Marshall Bowers created
11eba64
      Rename `assistant_context` crate to `assistant_text_thread` (#41024)
    Previously we had `Context` and `ContextStore` in both `agent_ui` (used to store context for the inline assistant) and `assistant_context` (used for text threads) which is confusing. This PR makes it so that the `assistant_context` concepts are now called `TextThread*`, the crate was renamed to `assistant_text_thread` Release Notes: - N/A
Bennet Fenner created
63fe1ea
      Fix overly noisy direnv error notification (#41029)
    Updates #40531, restoring the previous behavior which didn't surface an error when no direnv binary was found. Release Notes: - N/A
Cole Miller created
8b6f3ec
      Fix the project diff sometimes missing updates (#40662)
    This PR does two related things: - First, it gets rid of the undifferentiated `RepositoryEvent::Updated` in favor of three new events that have clearer definitions: `BranchChanged`, `StashEntriesChanged`, and `StatusesChanged`. An implication of this is that we no longer emit a `RepositoryEvent` unless some git state changed; previously we would emit `RepositoryUpdated` after doing a git status scan even if no statuses changed. - Second, it changes the subscription strategy of the project diff to make it update more robustly. Previously, the project diff only subscribed to the `GitStore`, so it relied on getting a `GitStoreEvent` when some buffer's diff hunks changed, even if the git status of the buffer's file didn't change (e.g. a second hunk in a file that was already modified). After this PR, it also subscribes to the individual `BufferDiff` entities for buffers that have a git status, so the `GitStore` is freed from that responsibility. This also fixes some real cases where the previous strategy was not effective in keeping the project diff up to date (captured in a test). Release Notes: - Fixed some cases where the project diff would fail to update in response to git events.
Cole Miller created
a66098b
      gpui: Revert `reuse_prepaint` change of #40767 (#41025)
    https://github.com/zed-industries/zed/pull/40767/files/c95ae84d919462393455d858836f479dd24bd620#r2455674159 Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
b519ab2
      rope: Improve chunk slicing panic messages (#41023)
    We still see a bunch of panics here but the default slicing panic doesn't tell which side of the range is bad Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
023ac1b
      Revert "Use ShellKind::try_quote whenever we need to quote shell args" (#41022)
    Reverts zed-industries/zed#40912 Closes https://github.com/zed-industries/zed/issues/41010
Jakub Konka created
738e248
      gpui: Small perf optimizations (#40767)
    Some random findings based on profiling Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
4f0a448
      Fix anchor-related panic when gathering applicable inlay chunks (#41002)
    Before, inlay chunks were retrieved from the cache based on actualized anchor ranges, but using an old buffer snapshot. Now, update all chunks and snapshot to the actual before returning the applicable ones. Follow-up of https://github.com/zed-industries/zed/pull/40183 Release Notes: - N/A
Kirill Bulatov created
9a6397f
      Add keybindings for menu navigation in vim.json (#40877)
    - Added "ctrl-p" for selecting the previous menu item - Added "ctrl-n" for selecting the next menu item Closes #40619 Release Notes: - Ctrl+P now moves to the previous result; Ctrl+N moves to the next.
Viraj Bhartiya created
93ef194
      vim: Fix cursor movement after entering Helix normal mode (#40528)
    Closes #40009 Release Notes: - `vim::NormalBefore` now enters `helix_normal` correctly.
paneutral created
8c1b4cb
      Re-order Helix keymaps and add alt-o/i/p/n (#40527)
    Release Notes:
- helix: Re-ordered `helix_normal || helix_select` keybindings to follow the
same order as the keymap on the helix-editor
[documentation](https://docs.helix-editor.com/keymap.html).
- helix: Added `alt-o` & `alt-i` to Select larger and smaller syntax node
respectively
- helix: Added `alt-p` & `alt-n` to Select Next Syntax Node and Previous Syntax
Node respectively
--- 
The new main helix normal & select context looks like follows
```jsonc
{
    "context": "(vim_mode == helix_normal || vim_mode == helix_select) && !menu",
    "bindings": {
      // Movement
      "h": "vim::WrappingLeft",
      "left": "vim::WrappingLeft",
      "l": "vim::WrappingRight",
      "right": "vim::WrappingRight",
      "t": ["vim::PushFindForward", { "before": true, "multiline": true }],
      "f": ["vim::PushFindForward", { "before": false, "multiline": true }],
      "shift-t": ["vim::PushFindBackward", { "after": true, "multiline": true }],
      "shift-f": ["vim::PushFindBackward", { "after": false, "multiline": true }],
      "alt-.": "vim::RepeatFind",
      
      // Changes
      "shift-r": "editor::Paste",
      "`": "vim::ConvertToLowerCase",
      "alt-`": "vim::ConvertToUpperCase",
      "insert": "vim::InsertBefore",
      "shift-u": "editor::Redo",
      "ctrl-r": "vim::Redo",
      "y": "vim::HelixYank",
      "p": "vim::HelixPaste",
      "shift-p": ["vim::HelixPaste", { "before": true }],            
      ">": "vim::Indent",
      "<": "vim::Outdent",
      "=": "vim::AutoIndent",
      "d": "vim::HelixDelete",
      "c": "vim::HelixSubstitute",
      "alt-c": "vim::HelixSubstituteNoYank",
      
      // Selection manipulation
      "s": "vim::HelixSelectRegex",
      "alt-s": ["editor::SplitSelectionIntoLines", { "keep_selections": true }],
      ";": "vim::HelixCollapseSelection",
      "alt-;": "vim::OtherEnd",
      ",": "vim::HelixKeepNewestSelection",
      "shift-c": "vim::HelixDuplicateBelow",
      "alt-shift-c": "vim::HelixDuplicateAbove",
      "%": "editor::SelectAll",
      "x": "vim::HelixSelectLine",
      "shift-x": "editor::SelectLine",
      "ctrl-c": "editor::ToggleComments",
      "alt-o": "editor::SelectLargerSyntaxNode",
      "alt-i": "editor::SelectSmallerSyntaxNode",
      "alt-p": "editor::SelectPreviousSyntaxNode",
      "alt-n": "editor::SelectNextSyntaxNode",
      // Goto mode
      "g e": "vim::EndOfDocument",
      "g h": "vim::StartOfLine",
      "g l": "vim::EndOfLine",
      "g s": "vim::FirstNonWhitespace", // "g s" default behavior is "space s"
      "g t": "vim::WindowTop",
      "g c": "vim::WindowMiddle",
      "g b": "vim::WindowBottom",
      "g r": "editor::FindAllReferences", // zed specific
      "g n": "pane::ActivateNextItem",
      "shift-l": "pane::ActivateNextItem",      
      "g p": "pane::ActivatePreviousItem",
      "shift-h": "pane::ActivatePreviousItem",
      "g .": "vim::HelixGotoLastModification", // go to last modification
      
      // Window mode
      "space w h": "workspace::ActivatePaneLeft",
      "space w l": "workspace::ActivatePaneRight",
      "space w k": "workspace::ActivatePaneUp",
      "space w j": "workspace::ActivatePaneDown",
      "space w q": "pane::CloseActiveItem",
      "space w s": "pane::SplitRight",
      "space w r": "pane::SplitRight",
      "space w v": "pane::SplitDown",
      "space w d": "pane::SplitDown",
      // Space mode
      "space f": "file_finder::Toggle",
      "space k": "editor::Hover",
      "space s": "outline::Toggle",
      "space shift-s": "project_symbols::Toggle",
      "space d": "editor::GoToDiagnostic",
      "space r": "editor::Rename",
      "space a": "editor::ToggleCodeActions",
      "space h": "editor::SelectAllMatches",
      "space c": "editor::ToggleComments",
      "space p": "editor::Paste",
      "space y": "editor::Copy",
      // Other
      ":": "command_palette::Toggle",
      "m": "vim::PushHelixMatch",
      "]": ["vim::PushHelixNext", { "around": true }],
      "[": ["vim::PushHelixPrevious", { "around": true }],
      "g q": "vim::PushRewrap",
      "g w": "vim::PushRewrap",
      // "tab": "pane::ActivateNextItem",
      // "shift-tab": "pane::ActivatePrevItem",
    }
  }
  ```
    Abderrahmane TAHRI JOUTI created
3bb4c94
      Revert "Round the scroll offset in editor to fix jumping text (#40401)" (#40982)
    This reverts commit 3da4cddce205d71dcad760c6af66a8985b16ffbe. The scrolling is ~30% less for the same gesture, and I'm not using anything lodpi: https://github.com/user-attachments/assets/b19521fc-9e29-4bfd-9660-dc1e4c8ae846 Release Notes: - N/A
Kirill Bulatov created