9818835
Fix the log spam from the BlameBuffer request (#19921)
Click to expand commit body
Release Notes: - N/A
Mikayla Maki created
9818835
Fix the log spam from the BlameBuffer request (#19921)
Release Notes: - N/A
Mikayla Maki created
f3b7f59
Fix a rare crash on startup (#19922)
Release Notes: - Fixed a rare crash that could happen when certain SQL statements are prepared
Mikayla Maki created
fc5cde9
Fix quotes in Rust (#19914)
Release Notes: - (preview only) Fixed quote-autoclose in Rust
Conrad Irwin created
6ea4662
Initial Notebook UI structure (#19756)
This is the start of a notebook UI for Zed. `🔔 Note: This won't be useable yet when it is merged! Read below. 🔔` This is going to be behind a feature flag so that we can merge this initial PR and then make follow up PRs. Release notes will be produced in a future PR. Minimum checklist for merging this: * [x] All functionality behind the `notebooks` feature flag (with env var opt out) * [x] Open notebook files in the workspace * [x] Remove the "Open Notebook" button from title bar * [x] Incorporate text style refinements for cell editors * [x] Rely on `nbformat` crate for parsing the notebook into our in-memory format * [x] Move notebook to a `gpui::List` * [x] Hook up output rendering Release Notes: - N/A --------- Co-authored-by: Nate Butler <iamnbutler@gmail.com> Co-authored-by: Thorsten Ball <mrnugget@gmail.com>
Kyle Kelley , Nate Butler , and Thorsten Ball created
9d12308
Fix Julia icon extension lookup (#19916)
Release Notes: - Fixed a bug where the Julia icon was not displayed for Julia files.
Joseph T. Lyons created
21137d2
Delete /workflow (#19900)
This a separate PR from https://github.com/zed-industries/zed/pull/19705 so we can revert it more easily if we want it back later. Release Notes: - Added "Suggest Edit" button to the assistant panel if `"enable_experimental_live_diffs": true` is set in the `"assistant"` section of `settings.json`. This button takes the place of the previous `/workflow` command, but it is experimental and may change! --------- Co-authored-by: Nathan Sobo <nathan@zed.dev> Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com>
Richard Feldman , Nathan Sobo , and Danilo Leal created
273cb19
Fix wrong UpdateWorktree chunk size being used in release mode (#19912)
Release Notes: - Fixed slowness when collaborating Co-authored-by: Thorsten <thorsten@zed.dev>
Conrad Irwin and Thorsten created
cfa20ff
Sketch in assistant edit button (#19705)
Add an edit button to the assistant. This is totally hacked in for now, just to see how this would feel rendered simply in the UI.  cc @as-cii @danilo-leal Release Notes: - N/A --------- Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com> Co-authored-by: Richard Feldman <oss@rtfeldman.com>
Nathan Sobo , Danilo Leal , and Richard Feldman created
759d136
Update a few doc comments (#19911)
Release Notes: - N/A
Mikayla Maki created
322aa41
Add support for self-hosted GitLab instances for Git permalinks (#19909)
This PR adds support for self-hosted GitLab instances when generating Git permalinks. If the `origin` Git remote contains `gitlab` in the URL hostname we will then attempt to register it as a self-hosted GitLab instance. A note on this: I don't think relying on specific keywords is going to be a suitable long-term solution to detection. In reality the self-hosted instance could be hosted anywhere (e.g., `vcs.my-company.com`), so we will ultimately need a way to have the user indicate which Git provider they are using (perhaps via a setting). Closes https://github.com/zed-industries/zed/issues/18012. Release Notes: - Added support for self-hosted GitLab instances when generating Git permalinks. - The instance URL must have `gitlab` somewhere in the host in order to be recognized.
Marshall Bowers created
3e2f1d7
Fix horizontal scroll caused by diagnostic block width error (#19856)
Previously, when scrolling the diagnostics view with the mouse, we'd get a spurious horizontal scroll (even if the content was not overflowing horizontally) due to an error in the widths of the diagnostic blocks. Release Notes: - Fixed an issue where the project diagnostics view spuriously allowed horizontal scrolling by a small amount.
Max Brunsfeld created
3fed738
Use same logic for skipping single instance check on Linux as on Mac/Win (#19446)
Release Notes: - Linux: Now skips check which exits with "zed is already running" when in development mode or when run with `zed-local`, matching the behavior on Mac and Windows Co-authored-by: Nathan Sobo <nathan@zed.dev>
Michael Sloan and Nathan Sobo created
5893e85
Ensure shared ssh project propagates buffer changes to all participants (#19907)
Fixed the bug when shared ssh project did not account for client changing things in their buffers. Also ensures Prettier formatting workflow works for both ssh project owner and ssh project clients. Release Notes: - N/A --------- Co-authored-by: Conrad Irwin <conrad@zed.dev>
Kirill Bulatov and Conrad Irwin created
1356665
Update community links page url (#19899)
See: - https://github.com/zed-industries/zed.dev/pull/786 Release Notes: - N/A
Joseph T. Lyons created
9739da8
Add Gleam icon (#19887)
I took a shot at creating an icon version of the Gleam logo in response to https://github.com/zed-industries/zed/pull/19529 Release Notes: - Added an icon for Gleam files.  <img width="231" alt="Screenshot 2024-10-29 at 9 46 33 AM" src="https://github.com/user-attachments/assets/c957c98f-3da0-4b92-bc21-2a5adca1daa3"> --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Jen Stehlik and Marshall Bowers created
249c8a4
Remove community content from docs and point to zed.dev (#19895)
The community content now lives on zed.dev, discoverable via the navbar `resources` menu. See: - https://github.com/zed-industries/zed.dev/pull/783 Release Notes: - N/A
Joseph T. Lyons created
f919fa9
remote servers: Fix title from alpha to beta (#19889)
Discussed this in Slack yesterday. We use `beta` because that's what we use in the docs as well. Release Notes: - N/A
Thorsten Ball created
21b5864
vsc menu: Fix issue when switching branch while non-visible worktree is open (#19888)
Fixes a regression introduced in #19755 <img width="935" alt="Screenshot 2024-10-29 at 12 13 04" src="https://github.com/user-attachments/assets/7699b8da-631d-4932-89a8-bc5d7f2546f1"> Co-Authored-by: Thorsten <thorsten@zed.dev> Release Notes: - Fixed an issue where the branch switcher would show an error, when opening a file outside of the project Co-authored-by: Thorsten <thorsten@zed.dev>
Bennet Bo Fenner and Thorsten created
6a0bcca
ssh remoting: Hide share button while connecting to project (#19885)
Co-Authored-by: Thorsten <thorsten@zed.dev> Release Notes: - N/A Co-authored-by: Thorsten <thorsten@zed.dev>
Bennet Bo Fenner and Thorsten created
84328c3
Include commit summary in inline Git blame (#19759)
Closes #19758 Release Notes: - Added feature to show commit summary as part of the inline Git blame --------- Co-authored-by: Thorsten Ball <mrnugget@gmail.com>
PJ Tatlow and Thorsten Ball created
f7b2b41
ssh remoting: Check nightly version correctly by comparing commit SHA (#19884)
This ensures that we detect if a new nightly version of the remote server is available. Previously we would always mark a version as matching if they had the same semantic version. However, for nightly versions we also need to check if they have the same commit SHA. Co-Authored-by: Thorsten <thorsten@zed.dev> Release Notes: - N/A --------- Co-authored-by: Thorsten <thorsten@zed.dev>
Bennet Bo Fenner and Thorsten created
7a6b643
languages: Enable grammar loading when compiling with test feature (#19881)
This ensures that `cargo tests -p languages` will not fail with a confusing error message. Follow up to #19821 We opted to check the `test` feature flag instead of defining a runtime flag, because we only want to include the `tree-sitter-*` dependencies in some cases, which is not possible with a runtime flag. Co-Authored-by: Thorsten <thorsten@zed.dev> Release Notes: - N/A Co-authored-by: Thorsten <thorsten@zed.dev>
Bennet Bo Fenner and Thorsten created
bdb54de
ssh remoting: Show the host's GitHub name in the titlebar when sharing an SSH project (#19844)
The name (GitHub name) of the host was not displayed when sharing an ssh project. Previously we assumed that the a collaborator is a host if the `replica_id` of the collaborator was `0`, but for ssh project the `replica_id` is actually `1`. <img width="329" alt="Screenshot 2024-10-28 at 18 16 30" src="https://github.com/user-attachments/assets/c0151e12-a96f-4f38-aec1-4ed5475a9eaf"> Co-Authored-by: Thorsten <thorsten@zed.dev> Release Notes: - N/A --------- Co-authored-by: Thorsten <thorsten@zed.dev>
Bennet Bo Fenner and Thorsten created
b5c41ee
Future-proof indent guides settings for panels (#19878)
This PR ensures that we do not have to break the indent guides settings for the project/outline panel. In the future we might want to have a more granular way to control when to show indent guides, or control other indent guide properties, like its width. Release Notes: - N/A
Bennet Bo Fenner created
719a7f7
Fix block cursor on graphemes (#19867)
Release Notes: - Fixed block cursor rendering only first char of multii-char graphemes.
Conrad Irwin created
1b84fee
restore `editor::UnfoldRecursive` binding (#19865)
Joseph T. Lyons created
58e5d4f
Reland invisibles (#19846)
Release Notes: - Show invisibles in the editor Relands #19298 Trying to quantify a performance impact, it doesn't seem to impact much visible in Instruments or in a micro-benchmark of Editor#layout_lines. We're still taking a few hundred micro-seconds (+/- a lot) every time. The ascii file has just ascii, where as the cc file has one control character per line. <img width="1055" alt="Screenshot 2024-10-28 at 12 14 53" src="https://github.com/user-attachments/assets/1c382063-bb19-4e92-bbba-ed5e7c02309f"> <img width="1020" alt="Screenshot 2024-10-28 at 12 15 07" src="https://github.com/user-attachments/assets/1789f65e-5f83-4c32-be47-7748c62c3703">
Conrad Irwin created
85ff03c
Add more context to the save new file path picker (#19863)
Release Notes: - N/A Co-authored-by: Conrad <conrad@zed.dev>
Mikayla Maki and Conrad created
a3f0bb4
SSH Remoting: Document manual binary management (#19862)
Release Notes: - N/A
Conrad Irwin created
93b2000
Add support for Doxygen doc comments in C++ (#19858)
This PR adds support for Doxygen-style doc comments in C++. <img width="962" alt="Screenshot 2024-10-28 at 5 38 34 PM" src="https://github.com/user-attachments/assets/57d0fa4b-07c1-4b71-899a-fba78e822e8f"> https://www.doxygen.nl/manual/docblocks.html Closes https://github.com/zed-industries/zed/issues/18361. Release Notes: - C++: Added support for Doxygen-style doc comments starting with `/// ` or `//! `.
Marshall Bowers created
188a893
python: Enhance syntax highlighting for type hints (#18185)
Release Notes:
- Python: Improved syntax highlighting for type hints.
# Before

# After

---
Why manual recursion?
- Due to tree-sitter grammar not supporting recursion in query
(https://github.com/tree-sitter-grammars/tree-sitter-lua/issues/24),
currently only manual recursion is possible (refer to
https://github.com/projekt0n/github-nvim-theme/pull/250/files).
<br/>
Unable to highlight when simple structures appear before complex
structures, example:
```python
def t() -> str | dict[int, dict[int, dict[int, str]]]:
pass
```
Because complex structures are parsed as `subscript` rather than
`generic_type` by tree-sitter in this case ☹
<br/>
Related:
- https://github.com/zed-industries/zed/issues/14715
- [Union Type (Python
Doc)](https://docs.python.org/3/library/stdtypes.html#union-type)
- [Type parameter lists (Python
Doc)](https://docs.python.org/3/reference/compound_stmts.html#type-parameter-lists)
---------
Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
ClanEver and Marshall Bowers created
052b746
language_selector: Fix debug_assert firing off on context menu creation for LSP view (#19854)
Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
80f8905
Fix mouse clicks on remote-open-folder UI (#19851)
Also change Zed's standard style to use `.track_focus(&self.focus_handle(cx))`, instead of `.track_focus(&self.focus_handle)`, to catch these kinds of errors more easily in the future. Release Notes: - N/A --------- Co-authored-by: Conrad <conrad@zed.dev>
Mikayla Maki and Conrad created
826d83e
Fix backtrace spam on remote server (#19850)
Release Notes: - N/A Co-authored-by: conrad <conrad@zed.dev>
Mikayla Maki and conrad created
f5d5fab
Improve `fold_at_level` performance (#19845)
Just spotted a tiny error that was causing us to continue looking for nested folds 1 layer deeper than any fold already found at the target level. We shouldn't continue to seek for a deeper fold after the fold at the target level is found. Tested on a debug build and used `editor.rs` as the source material: ``` Old Level 1 fold: [crates/editor/src/editor.rs:10777:9] counter = 2806 [crates/editor/src/editor.rs:10778:9] time_elapsed = 320.570792ms Level 2 fold: [crates/editor/src/editor.rs:10777:9] counter = 5615 [crates/editor/src/editor.rs:10778:9] time_elapsed = 497.4305ms Level 3 fold: [crates/editor/src/editor.rs:10777:9] counter = 7528 [crates/editor/src/editor.rs:10778:9] time_elapsed = 619.818334ms New Level 1 fold: [crates/editor/src/editor.rs:10776:9] counter = 543 [crates/editor/src/editor.rs:10777:9] time_elapsed = 139.115625ms Level 2 fold: [crates/editor/src/editor.rs:10776:9] counter = 2806 [crates/editor/src/editor.rs:10777:9] time_elapsed = 312.560416ms Level 3 fold: [crates/editor/src/editor.rs:10776:9] counter = 5615 [crates/editor/src/editor.rs:10777:9] time_elapsed = 498.873292ms ``` Release Notes: - N/A
Joseph T. Lyons created
fab2f22
remote project: Fix project reference leak when waiting for prompt reply (#19838)
When the language server gave us a prompt and we'd close the window, we wouldn't release the `project` until the next `flush_effects` call that came in when opening a window. With this change, we no longer hold a strong reference to the project in the future. Fixes the leak and makes sure we clean up the SSH connection when closing a window. Release Notes: - N/A Co-authored-by: Bennet <bennet@zed.dev>
Thorsten Ball and Bennet created
a451bcc
collab: Exempt staff from LLM usage limits (#19836)
This PR updates the usage limit check to exempt Zed staff members from usage limits. We previously had some affordances for the rate limits, but hadn't yet updated it for the usage-based billing. Release Notes: - N/A
Marshall Bowers created
5e9ff3e
dart: Bump to v0.1.2 (#19835)
This PR bumps the Dart extension to v0.1.2. Changes: - https://github.com/zed-industries/zed/pull/19592 Release Notes: - N/A
Marshall Bowers created
cc81f19
remote server: Fix error log about inability to open buffer (#19824)
Turns out that we used client-side `fs` to check whether something is a directory or not, which obviously doesn't work with SSH projects. Release Notes: - N/A --------- Co-authored-by: Bennet <bennet@zed.dev>
Thorsten Ball and Bennet created
5e89fba
dart: Add support for documentation comments (#19592)
Closes #19590 Release Notes: - N/A --- I'm unable to test this because rebuilding Zed with the changes does not seem to use the changes. If maintainers could let me know how to test these changes I'd like to verify that this really fixes #19590. --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Ömer Sinan Ağacan and Marshall Bowers created
67eb652
remote servers: Always dismiss modal (#19831)
We display the errors in another window anyway and if the connection takes a while it looks like a bug that the modal stays open. Release Notes: - N/A Co-authored-by: Bennet <bennet@zed.dev>
Thorsten Ball and Bennet created
e0ea9a9
Remove leftover comments from previous PR (#19820)
Co-Authored-by: Thorsten <thorsten@zed.dev> Removes some leftover comments from #19766 Release Notes: - N/A Co-authored-by: Thorsten <thorsten@zed.dev>
Bennet Bo Fenner and Thorsten created
ff29a34
zig: Account for doctests in outline (#19776)
zig has a feature called [doctests](https://ziglang.org/documentation/master/#Doctests) where instead of providing a string as the name of a test you use an identifier so that the test is "tied" to it and can be used in documentation. this wasnt accounted for so any tests using this were unnamed in the outline Release Notes: - N/A
xdBronch created
6686f66
ollama: Ensure only single task fetches models (#19830)
Before this change, we'd see a ton of requests from the Ollama provider trying to fetch models: ``` [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: https://api.zed.dev/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ [2024-10-28T15:00:52+01:00 DEBUG reqwest::connect] starting new connection: http://localhost:11434/ ``` Turns out we'd send a request on *every* change to settings. Now, with this change, we only send a single request. Release Notes: - N/A Co-authored-by: Bennet <bennet@zed.dev>
Thorsten Ball and Bennet created
8a96ea2
context_servers: Support tools (#19548)
This PR depends on #19547 This PR adds support for tools from context servers. Context servers are free to expose tools that Zed can pass to models. When called by the model, Zed forwards the request to context servers. This allows for some interesting techniques. Context servers can easily expose tools such as querying local databases, reading or writing local files, reading resources over authenticated APIs (e.g. kubernetes, asana, etc). This is currently experimental. Things to discuss * I want to still add a confirm dialog asking people if a server is allows to use the tool. Should do this or just use the tool and assume trustworthyness of context servers? * Can we add tool use behind a local setting flag? Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
David Soria Parra and Marshall Bowers created
cdddb4d
Add language toolchains (#19576)
This PR adds support for selecting toolchains for a given language (e.g. Rust toolchains or Python virtual environments) with support for SSH projects provided out of the box. For Python we piggy-back off of [PET](https://github.com/microsoft/python-environment-tools), a library maintained by Microsoft. Closes #16421 Closes #7646 Release Notes: - Added toolchain selector to the status bar (with initial support for Python virtual environments)
Piotr Osiewicz created
03bd954
docs: Add diagram to remote development docs (#19827)
Release Notes: - N/A
Thorsten Ball created
177dfdf
Declare RUSTFLAGS env var for all CI jobs (#19826)
Follow-up of https://github.com/zed-industries/zed/pull/19149 Makes RUSTFLAGS propagation uniform, to ensure all `cargo ...` jobs get the same RUSTFLAGS env set. Release Notes: - N/A
Kirill Bulatov created
2ab0b3b
remote server: Fix language servers not starting (#19821)
PR #19653 change the code in this diff, which lead to the remote_server binary trying to load language grammars, which in turn failed, and stopped languages from being loaded correctly. That then lead to language servers not starting up. This change reintroduces what #19653 removed, so that we don't load the grammar on the remote_server, by ignoring the grammar name from the config. The tests still all work. Release Notes: - N/A Co-authored-by: Bennet <bennet@zed.dev>
Thorsten Ball and Bennet created
888fec9
outline panel: Add indent guides (#19719)
See #12673 | File | Search | |--------|--------| | <img width="302" alt="image" src="https://github.com/user-attachments/assets/44b8d5f9-8446-41b5-8c0f-e438050f0ac9"> | <img width="301" alt="image" src="https://github.com/user-attachments/assets/a2e6f77b-6d3b-4f1c-8fcb-16bd35274807"> | Release Notes: - Added indent guides to the outline panel
Bennet Bo Fenner created