8fa471f
zed 0.162.2
Peter Tripp created
8fa471f
zed 0.162.2
Peter Tripp created
182559a
context_servers: Upgrade protocol to version 2024-11-05 (#20615)
This updates context servers to the most recent version Release Notes: - N/A Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
David Soria Parra and Marshall Bowers created
88f20bb
zed_extension_api: Release v0.2.0 (#20683)
This PR releases v0.2.0 of the Zed extension API. Support for this version of the extension API will land in Zed v0.162.x. Release Notes: - N/A
Marshall Bowers created
f5f9ae1
Move `ExtensionStore` tests back to `extension_host` (#20682)
This PR moves the tests for the `ExtensionStore` back into the `extension_host` crate. We now have a separate `TestExtensionRegistrationHooks` to use in the test that implements the minimal required functionality needed for the tests. This means that we can depend on the `theme` crate only in the tests. Release Notes: - N/A
Marshall Bowers created
5832328
Use vim-like keybindings for splitting out of the file finder (#20680)
Follow-up of https://github.com/zed-industries/zed/pull/20507 Release Notes: - (breaking Preview) Adjusted file finder split keybindings to be less conflicting Co-authored-by: Conrad Irwin <conrad@zed.dev>
Kirill Bulatov and Conrad Irwin created
d51221e
Allow base64 encoded images to be decoded with or without padding (#20616)
The R kernel doesn't use base64 padding whereas the Python kernel (via matplotlib) sometimes uses padding. We have to use the `base64` crate's `Indifferent` mode. /cherry-pick v0.161.x Release Notes: - N/A
Kyle Kelley created
ba1fc41
Fix completions for non-built-in slash commands (#20632)
Release Notes: - N/A Co-authored-by: Marshall <marshall@zed.dev>
Max Brunsfeld and Marshall created
4f47278
Improve context server lifecycle management (#20622)
This optimizes and fixes bugs in our logic for maintaining a set of running context servers, based on the combination of the user's `context_servers` settings and their installed extensions. Release Notes: - N/A --------- Co-authored-by: Marshall <marshall@zed.dev> Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Max Brunsfeld , Marshall , and Marshall Bowers created
e9f4fac
Extract `ExtensionSlashCommand` to `assistant_slash_command` crate (#20617)
This PR extracts the `ExtensionSlashCommand` implementation to the `assistant_slash_command` crate. The slash command related methods have been added to the `Extension` trait. We also create separate data types for the slash command data within the `extension` crate so that we can talk about them without depending on the `extension_host` or `assistant_slash_command`. Release Notes: - N/A
Marshall Bowers created
baf0da2
Decouple extension `Worktree` resource from `LspAdapterDelegate` (#20611)
This PR decouples the extension `Worktree` resource from the `LspAdapterDelegate`. We now have a `WorktreeDelegate` trait that corresponds to the methods on the resource. We then create a `WorktreeDelegateAdapter` that can wrap an `LspAdapterDelegate` and implement the `WorktreeDelegate` trait. Release Notes: - N/A
Marshall Bowers created
0c6f5e2
zed 0.162.1
Peter Tripp created
ff3d693
Don't double-localize menu shortcuts (#20623)
Release Notes: - Don't have macOS localize our menu shortcuts that we already localized.
Conrad Irwin created
f468a2b
Don't send key equivalents to the input hanlder (#20621)
Release Notes: - Fix `cmd-backtick` to change windows
Conrad Irwin created
451409e
Deadkeys 2 (#20612)
Re-land of #20515 with less brokenness
In particular it turns out that for control, the .characters() method
returns the control code. This mostly didn't make a difference, except
when the control code matched tab/enter/escape (for
ctrl-y,ctrl-[/ctrl-c) as we interpreted the key incorrectly.
Secondly, we were setting IME key too aggressively. This led to (in vim
mode) cmd-shift-{ being interpreted as [, so vim would wait for a second
[ before letting you change tab.
Release Notes:
- N/A
Conrad Irwin created
888385d
Fix bad quote in script/determine-release-channel (#20613)
Peter Tripp created
1ceb653
v0.162.x preview
Joseph T. Lyons created
9d2fc69
project panel: Don't change label color even when file has errors (#20600)
With this PR, Git status is now the only thing that can change an item's label color. So, the summary of how status colors operate in the project panel is: - Item icon color is, by default, never changed, _not_ affected by either diagnostics or Git status - This should become configurable in the near future, though - However, a little x or triangle icon shows up on top of the file type icon to display diagnostics status - Label color is _not_ affected by diagnostics but it _is_ affected by Git status This aims to reduce color noise and clarify/simplify how each element is affected. Release Notes: - N/A
Danilo Leal created
b084d53
Extract `ExtensionIndexedDocsProvider` to `indexed_docs` crate (#20607)
This PR extracts the `ExtensionIndexedDocsProvider` implementation to the `indexed_docs` crate. To achieve this, we introduce a new `Extension` trait that provides an abstracted interface for calling an extension. This trait resides in the `extension` crate, which has minimal dependencies and can be depended on by other crates, like `indexed_docs`. We're then able to implement the `ExtensionIndexedDocsProvider` without having any knowledge of the Wasm-specific internals of the extension system. Release Notes: - N/A
Marshall Bowers created
7832883
terminal: Fix detection of ignored python venv (#20227)
Closes #19227 Since items listed in `.gitignore` file are not included in a worktree, python virtual environment cannot be detected until venv directory is unfolded from project panel and forcefully added into worktree. I didn't come up with anything better than scanning fs directly. I'm not sure how it will affect remote development. if at all. Release Notes: - Fixed detection of `detect_venv.directories` ignored by a worktree
Askar created
eb4e747
Improve terminal.working_directory for non-project files (#18251)
Peter Tripp created
27dfb48
project panel: Fix entries being marked when switching between tabs (#20596)
This is a follow-up (or related to) #20412. It fixes entries being marked when navigating between tabs with `cmd-[` and `cmd-]`. Turns out that deep in the bowels of the project panel, we check whether a `shift` modifier was pressed - which is the case with `cmd-[` on a US ANSI layout - and if so mark an entry. I think that's a left-over, because all the other code paths that select/reveal an entry mark it explicitly too. Release Notes: - Fixed entries in project panel being marked when navigating between tabs with keybinding that uses `shift` modifier.
Thorsten Ball created
3a319e6
docs: Improve formatter docs. Examples for C/C++ (#20553)
Peter Tripp created
84e47fb
Fix context menus not cycling over its edge when selecting items (#20592)
Kirill Bulatov created
7e82ca8
Always allow rerunning the tasks using the tab button (#20591)
Release Notes: - Improved task tabs to always rerun tasks on click
Kirill Bulatov created
b440787
Standardize button design in modal footers (#20585)
- Making sure this design and properties are the same across different places - No need for the `ButtonLike` here, we can use `Button` as it supports `key_binding` and makes it for a cleaner code! - Also, that ensures the binding is always to the right of the label, which makes more sense - Title-case the labels for consistency with other buttons across the app | File finder | Project finder | |--------|--------| | <img width="1136" alt="Screenshot 2024-11-13 at 09 21 06" src="https://github.com/user-attachments/assets/dd051514-d873-4b65-a08f-af0920f2c010"> | <img width="1136" alt="Screenshot 2024-11-13 at 09 21 12" src="https://github.com/user-attachments/assets/f958e3e7-4bfb-4752-839e-2bbc01334643"> | Release Notes: - N/A
Danilo Leal created
3b1f12a
chore: Cleanup dev_server_projects leftover files (#20581)
Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
b8cf0a1
chore: use codegen-units=1 for small crates (#20558)
These 500ms we'll save with this change will surely pay off. Release Notes: - N/A
Piotr Osiewicz created
3f22427
Restore the ability to navigate into project search input with the keyboard (#20579)
Kirill Bulatov created
56cf32c
Add a way to use splits when opening in file finder (#20507)
Kirill Bulatov created
90ffd65
Document use of `allow_concurrent_runs` with long-running tasks (#20539)
Markus Wüstenberg created
55cd99c
Revert "macOS: Improve deadkeys (#20515)" (#20570)
This reverts commit https://github.com/zed-industries/zed/pull/20515 I'm reverting for now to fix issues with key bindings on Nightly: * `ctrl-c` and `ctrl-m` are being treated as `ctrl-enter` * `ctrl-[` isn't working in vim mode * there's a delay before `cmd-shift-[` switches tabs w/ vim mode enabled Release Notes: - N/A
Max Brunsfeld created
0547748
Compare explicitly to YES/NO instead relying on booliness for objc (#20567)
Just x86_64-apple-darwin things. Fixes the build for nightly. Release Notes: - N/A
Kyle Kelley created
5473519
Be more explicit about BOOL (#20564)
On x86 Macs BOOL is not the same within the `objc` crate we're using. This only comes up on nightly builds (not on CI), so I don't think I have a way to trigger this issue locally. Release Notes: - N/A
Kyle Kelley created
466d331
Fix issue with image output from Jupyter kernels that didn't use base64 padding (#20561)
This upgrades `nbformat` and `runtimelib` to handle jupyter types with even more validation and flexiblity. This also processes any multiline string data coming from the kernel, including with image data (like `image/png`). While I was at it I also fixed a longstanding issue around images by eliminating all whitespace (something `atob` does) and using the no pad decoder. Fixes: #17956 Before: <img width="741" alt="image" src="https://github.com/user-attachments/assets/37ec2cae-ce78-4475-aaa3-4d785e4015d0"> After: <img width="727" alt="image" src="https://github.com/user-attachments/assets/e2431ba2-048b-4205-9898-54f357795a9c"> Release Notes: - Fixed issue with image output from REPL kernels that didn't use base64 padding
Kyle Kelley created
3ebb64e
Expose context server settings to extensions (#20555)
This PR exposes context server settings to extensions. Extensions can use `ContextServerSettings::for_project` to get the context server settings for the current project. The `experimental.context_servers` setting has been removed and replaced with the `context_servers` setting (which is now an object instead of an array). Release Notes: - N/A --------- Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Marshall Bowers and Max Brunsfeld created
0a9c78a
Show error and warning indicators in project panel items (#18182)
Closes #5016 Release Notes: - Add setting to display error and warning indicators in project panel items. https://github.com/user-attachments/assets/8f8031e6-ca47-42bf-a7eb-718eb1067f36 --------- Co-authored-by: Thorsten Ball <mrnugget@gmail.com> Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com>
Nils Koch , Thorsten Ball , and Danilo Leal created
a7eb3a9
Add "Book Onboarding" action across the app (#20503)
This PR adds a small UI touch-up to the welcome page so we can introduce the "Book Onboarding" over there, as well as adding it to the user menu (both in the signed in and signed out states). The actual URL these buttons take to will still be updated to the correct destination. <img width="700" alt="Screenshot 2024-11-12 at 12 45 27" src="https://github.com/user-attachments/assets/9933bf94-f57a-43e2-8da3-bfbfd9fd24d0"> Release Notes: - N/A
Danilo Leal created
47ca340
Disable ligatures in SSH connection dialogue (#20549)
Closes #20381 Release Notes: - Fixed password dialog for remote server showing ligatures
Conrad Irwin created
d1e2c6e
python: Add pylsp as the secondary language server (#20358)
Closes #ISSUE Release Notes: - Added python-lsp-server as a secondary built-in language server.
Piotr Osiewicz created
181c372
windows: Fix rust-analyzer download (#20408)
After https://github.com/rust-lang/rust-analyzer/pull/18412, there is no longer a .gz file for windows rust-analyzer targets, and the rust analyzer LSP fails to download. This fixes it by using the .zip version on windows. The .zip also extracts to a _folder_ containing rust-analyzer.exe rather than just a file. I've handled it in this code, but am not 100% sure if other parts of the code need too be aware of it. Release Notes: - N/A
Arthur Brussee created
aad3ed7
Fix window drawing when switching X11 workspaces by presenting when expose events occur (#20535)
Closes #18184 Release Notes: - Fix window drawing when switching X11 workspaces, particularly for tiling window managers such as i3wm and XMonad.
Michael Sloan created
ad3171d
Expose active key equivalents in the keymap context view (#20530)
Release Notes: - Added macOS key equivalents to cmd-shift-p `debug: Open Key Context View`
Conrad Irwin created
e4bf586
SSH Remoting: Improve unsupported error messages (#20529)
Updates #19697 Release Notes: - SSH Remoting: Improved error message on unsupported OS/Arch.
Conrad Irwin created
ab20681
Use char level diff for Rewrap action for cursor preservation + not reinserting all text (#20368)
Closes #18896 Release Notes: - Fixed #18896 - `editor::Rewrap` now preserves cursors and only inserts whitespace by using character-level diff instead of line-level diff.
Michael Sloan created
6819108
Bump rustls and async-tungstenite to remove child dep ring 0.16.20 (#20489)
Closes #18891 Tests: - I have cargo checked and built `remote-server` on my riscv64 dev board. - I have cargo checked and tested on my M1 Mac - Almost all test passed. Some (LLM tests, Postgres tests)failed due to, IMO, irrelevant reasons Release Notes: - Improved support of Zed remote server compilation for riscv64 cc @ConradIrwin PS: I didn't include the changes of `Cargo.lock`, which may look messy. Probably I should include these? Or, should a reviewer do this? The expected Cargo.lock should have only one version of `ring` with version > 0.17.0
ifsheldon created
2521ef7
Document why join_lines has a special case for single-line selections (#20528)
Release Notes: - N/A
Michael Sloan created
b08ac2a
Heaptrack documentation (#20266)
Release Notes: - N/A
Michael Sloan created
2ea4ede
macOS: Improve deadkeys (#20515)
Closes #19738 This change refactors how we handle input on macOS to avoid simulating our own IME. This fixes a number of small edge-cases, and also lets us remove a bunch of code that had been added to work around bugs in the previous version. Release Notes: - On macOS: Keyboard shortcuts are now handled before activating the IME system, this enables using vim's default mode on keyboards that use IME menus (like Japanese). - On macOS: Improvements to handling of dead-keys. For example when typing `""` on a Brazillian keyboard, you now get a committed " and a new marked ", as happens in other apps. Also, you can now type cmd-^ on an AZERTY keyboard for indent; and ^ on a QWERTZ keyboard now goes to the beginning of line in vim normal mode, or `d i "` no requires no space to delete within quotes on Brazilian keyboards (though `d f " space` is still required as `f` relies on the input handler, not a binding). - On macOS: In the terminal pane, holding down a key will now repeat that key (as happens in iTerm2) instead of opening the character selector.
Conrad Irwin created
38f2a91
Fix default project panel autofold docs (#20517)
Closes https://github.com/zed-industries/zed/issues/20511 Release Notes: - N/A
Kirill Bulatov created
82427e1
Add new `DecoratedIcon` component (#20516)
This PR creates a new, revamped `DecoratedIcon` component that enables using different SVGs, one for the knockout background and another for the actual icon. That's different than what we were doing before—copying the SVG and using slightly different positioning—because we wanted to unlock an aligned knockout effect, which was particularly hard to do with non-simple shapes such as an X. Release Notes: - N/A --------- Co-authored-by: Nate Butler <1714999+iamnbutler@users.noreply.github.com>
Danilo Leal and Nate Butler created