77f0d35
gleam: Add `gleam test` task (#11801)
Click to expand commit body
This PR adds a task for running `gleam test`. Release Notes: - N/A
Marshall Bowers created
77f0d35
gleam: Add `gleam test` task (#11801)
This PR adds a task for running `gleam test`. Release Notes: - N/A
Marshall Bowers created
5944caa
Add support for interacting with Claude in the assistant panel (#11798)
Release Notes:
- Added support for interacting with Claude in the assistant panel. You
can enable it by adding the following to your `settings.json`:
```json
"assistant": {
"version": "1",
"provider": {
"name": "anthropic"
}
}
```
Antonio Scandurra created
019d988
Add support for gpt-4o when using zed.dev as the model provider (#11794)
Release Notes: - N/A
Antonio Scandurra created
a13a92f
Introduce recent files ambient context for assistant (#11791)
<img width="1637" alt="image" src="https://github.com/zed-industries/zed/assets/482957/5aaec657-3499-42c9-9528-c83728f2a7a1"> Release Notes: - Added a new ambient context feature that allows showing the model up to three buffers (along with their diagnostics) that the user interacted with recently. --------- Co-authored-by: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
e4c95b2
Allow using the inline assistant within the assistant panel (#11754)
Release Notes: - Added the ability to use the inline assistant within the assistant panel.
Antonio Scandurra created
4766b41
docs: Document how to use custom `api_url` in Assistant (#11790)
This essentially documents the comment here: https://github.com/zed-industries/zed/issues/4424#issuecomment-2053646583 Release Notes: - N/A
Thorsten Ball created
95e0d5e
tasks: Reorganize task modal (#11752)
 Release Notes: - Improved tasks modal by highlighting a distinction between a task template and concrete task instance and surfacing available keybindings more prominently. Task templates are now always available in the modal, even if there's already a history entry with the same label. - Changed default key binding for "picker::UseSelectedQuery" to `opt-e`.
Piotr Osiewicz created
0a096bf
terminal: Fix Alacritty key bindings (#11782)
Close #10502 Release Notes: - Fixed `ctrl-space` not being forwarded correctly in the terminal view. ([#10502](https://github.com/zed-industries/zed/issues/10502))
CharlesChen0823 created
ec65035
inline blame: Match icon size to font size in buffer (#11788)
This fixes #11311. Release Notes: - Fixed icon in inline git blame entry not changing with the buffer font size. ([#11311](https://github.com/zed-industries/zed/issues/11311)). Before:  After: 
Thorsten Ball created
9b74acc
Add GPT-4o as possible model (#11764)
Resolves: #11766 Release Notes: - Add GPT-4o support (see: https://openai.com/index/hello-gpt-4o/). GPT-4o is better and faster than 4-turbo, at half the price.
Toon Willems created
43da37b
shell: Load SHELL from passwd entry if launched as desktop app (#11758)
This fixes #8794 and other related problems. The problem, in short, is this: `$SHELL` might be outdated. This code ensures that we update `$SHELL` to what we can deem the newest version, if we're started as a desktop application. The background is that you can get the user's preferred shell in two ways: 1. Read the `SHELL` env variable 2. Read the `/etc/passwd` file and check which shell is set Most applications should and do prefer (1) over (2). Why is it preferred? Reading `SHELL` means that processes can inherit the variable from each other. And you can do something like `SHELL=/bin/cool-shell ./my-cool-app` But what happens if the application was launched from the desktop? Which SHELL env does it inherit then? It inherits the env from the process that launched it, which is Finder.app or launchd or GNOME or something else — these are all long-running processes that get their environment when the user logs in. They do *not* get a new environment unless restarted (either process restarted or computer restarted) That means the `SHELL` env variable they have might be outdated. That's a problem if you, for example, change your shell with `chsh` and then launch the app from the desktop. That change of the default shell is not reflected in the app if the app only reads from SHELL. Because that hasn’t been updated. Instead it should read from passwd file to get the newest value. Release Notes: - Fixed SHELL being outdated if Zed was launched via Finder or Raycast or other desktop launchers. ([#8794](https://github.com/zed-industries/zed/issues/8794))
Thorsten Ball created
15e1895
Try some more linker magic to get it working on ubuntu 20 (#11784)
Release Notes: - N/A
Conrad Irwin created
aee00d4
Fix script/bundle-linux (#11783)
Release Notes: - N/A
Conrad Irwin created
172cb81
xtask: Check for licenses that are duplicated instead of being symlinked (#11777)
This PR updates `cargo xtask licenses` to also check for license files that are not symlinks. Release Notes: - N/A
Marshall Bowers created
b01878a
Add `xtask` for finding crates with missing licenses (#11776)
This PR adds a new `cargo xtask licenses` command for finding crates with missing license files. A number of crates were uncovered that were missing a license file, and have had the appropriate license file added. Release Notes: - N/A
Marshall Bowers created
ff2eace
Add missing LICENSE file to `http` crate (#11773)
This PR adds a missing LICENSE file to the recently-extracted `http` crate. Release Notes: - N/A
Marshall Bowers created
fcd5fa9
Remove selection highlights from deleted diff editors on blur (#11772)
Follow-up of https://github.com/zed-industries/zed/pull/11710 Release Notes: - Removed extra line highlights when deleted diff editors loose focus
Kirill Bulatov created
cb34507
docs: Fix typos on the Assistant Panel page (#11725)
Fix typos on the Assistant Panel page, also including removal of unnecessary commas and standardization to US English. Release Notes: - N/A PS: Assuming here US English is the preferred style (e.g., "canceled" vs. "cancelled".) Happy to revert if that's not the case! :)
Danilo Leal created
1ab2477
Add Tool Strip (#11756)
Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Nate Butler and Marshall Bowers created
335636c
ruby: Bump to v0.0.2 (#11769)
This PR bumps the Ruby extension to v0.0.2. Changes: - #11768 Release Notes: - N/A
Marshall Bowers created
24cc4c6
ruby: Add ruby-lsp as an experimental language server (#11768)
Adds [ruby-lsp](https://shopify.github.io/ruby-lsp/) as an alternative LS for Ruby language. While support for fully functional `ruby-lsp` is limited due to some limitations (see https://github.com/zed-industries/zed/pull/8613) I think it's OK to add it but disable by default. Thanks! Resolves #4834. Release Notes: - N/A ### Some screenshots Completion support  Symbol search  --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Vitaly Slobodin and Marshall Bowers created
9af1298
Bundle linux deps (#11681)
Inlcude linux deps in the bundle Release Notes: - N/A
Conrad Irwin created
8e92f19
editor: Current line highlight options (#11710)
None: <img width="717" alt="none" src="https://github.com/zed-industries/zed/assets/2101250/b2a741db-c64a-4275-a612-5a0d15c9cab7"> Gutter: <img width="715" alt="gutter" src="https://github.com/zed-industries/zed/assets/2101250/f7a68a6e-6eba-41b4-9042-5a5fe2ee21a4"> Line: <img width="717" alt="line" src="https://github.com/zed-industries/zed/assets/2101250/117f5b00-abd7-425b-8047-1a6fab8293a7"> All: <img width="715" alt="all" src="https://github.com/zed-industries/zed/assets/2101250/ebccc0da-0fa0-44e5-903c-cc49d975db76"> This PR adds the `current_line_highlight` setting that defines how to highlight the current line in the editor: - `none`: Don't highlight the current line. - `gutter`: Highlight the gutter area only. - `line`: Highlight the editor area only. - `all` (default): Highlight the whole line. The options have been borrowed from VSCode. Fixes #5222 Part of #4382 Release Notes: - Added the `current_line_highlight` setting that defines how to highlight the current line in the editor (#5222).
Andrew Lygin created
cf97b99
Fix panic when accepting completions (#11762)
Release Notes: - Fixed a panic caused by missing bounds check in completion handler
Conrad Irwin created
bc29218
Fix key-bindings.md example (#11415)
Fixed obselete command name in keymap example. From "zed::OpenKeyMap" to "zed::OpenKeymap". Release Notes: - N/A
sebbeutler created
2e8197c
docs: Standardize "Note" blockquote usage (#11724)
Standardize the blockquote "Notes" usage, so all places are using the `>` blockquote notation, as well as a consistent style for the "Note" word. PS: Thought that bolding the word "**Note**" would make for a higher visual distinction, so went for it in all existing cases! No strong feelings, though; happy to roll back to just "Note:" if that's preferrable! Release Notes: - N/A
Danilo Leal created
7613933
vue: Bump to v0.0.2 (#11747)
This PR bumps the Vue extension to v0.0.2. Changes: - #11743 Release Notes: - N/A
Marshall Bowers created
c769d58
vue: Fix Vue.js language server not starting (#11743)
This fixes #10871. The introduction of #11412 broke Vue.js language support, since it made Zed rely more heavily on correct language name -> language ID mappings, which the Vue.js extension didn't have. Release Notes: - N/A
Thorsten Ball created
c90263d
editor: Use proper rows for fold indicators in the gutter (#11741)
Follow-up to #11656 Release Notes: - N/A --------- Co-authored-by: Kirill <kirill@zed.dev>
Piotr Osiewicz and Kirill created
1afcd12
snippets: Fix <tab> not working when at end of snippet (#11740)
This fixes #10185 by not keeping snippet state around when already at the end of the snippet and the tabstop is empty (i.e. it's not a selection) and we're already on it. The reason for the fix is outlined in the comments of #10185 but to repeat: 1. `gopls` sends completions with type "snippet" even when suggesting single word completions that don't contain tabstops 2. We use a default behavior and add an "end tabstop" by default so that the cursor jumps to the end of the snippet when accepting it. 3. We'd then push the state of the snippet on the stack which is where it would stay, with the cursor already at the end and the user unable to get rid of the tabstop state. This fixes the issue by not pushing snippet state when the tabstop we accepted is the "end tabstop". Release Notes: - Fixed completions inside snippets breaking the jump-to-next-tabstop behaviour when using Go/`gopls` ([#10185](https://github.com/zed-industries/zed/issues/10185)). Demo: https://github.com/zed-industries/zed/assets/1185253/35384e5e-45c6-46ab-870d-b48e56d8786b
Thorsten Ball created
6df1bc8
Fix runnable, code_actions button can not trigger when editor not focused (#11729)
## Before https://github.com/zed-industries/zed/assets/5518/546450fc-ad2c-45d0-8bdb-7b15cfebe235 ## After https://github.com/zed-industries/zed/assets/5518/efc4f863-9db1-4846-83ae-c99ae4dcb3ed Release Notes: - Fixed code actions/runnable buttons not triggering when editor is not focused.
Jason Lee created
91b9e4e
git blame: add "Open permalink" to right-click menu (#11734)
This adds a new option to the right click menu for git blame entries in the gutter: "Open permalink". If there is a URL for the code host, then this will open it. Release Notes: - Added "Open permalink" option to right-click menu of git blame entries in gutter. Demo: 
Thorsten Ball created
8dd2655
docs: Fix broken link (#11685)
configuration link in `javascript.md` https://zed.dev/docs/languages/javascript Release Notes: - N/A
Gu created
78f1482
Add autosave with delay (#11325)
Implemented autosave functionality with a delay, which now refrains from formatting the code upon triggering unless the user manually saves it. Additionally, enhanced documentation for the `format_on_save` setting has been added. This resolves the issue where autosave with delay would inadvertently format the code, disrupting the user experience, as reported in the corresponding issue. Release Notes: - Fixed a bug where autosave after_delay would auto-format the buffer ([#9787](https://github.com/zed-industries/zed/issues/9787)). --------- Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
João Miguel Nogueira and Conrad Irwin created
9fdfe5c
Don't hide last symbol under the scrollbar (#11696)
This PR adds an extra scrollbar-wide margin to the right side of the editor. This prevents hiding the last character under the scrollbar. Fixes #7098 Release Notes: - Fixed hiding of the last character under the scrollbar (#7098).
Andrew Lygin created
4446c38
docs: Add link for "Configuring Zed" mention (#11723)
Release Notes: - N/A
Danilo Leal created
692afdc
Remove deploy artifacts after uploads (#11726)
Release Notes: - N/A
Kirill Bulatov created
6657e30
Update reference to keymap.json in tasks docs (#11711)
I assume this was an older file name or just a typo as I can't find any other references to a `keybindings.json` file. Either way it was confusing for a bit :) Release Notes: - N/A
Erik Simmler created
f990f70
Bring the Tool Calling README up to date (#11683)
Kyle Kelley created
f550f23
vim test redux (#11709)
This cleans up the neovim-backed vim tests: - removed exempted tests (we'll rely on bug reports to find missing edge cases) - moved all assertions into non-async fn's so that failures are reporting on the right file/line - removed the NeovimBackedBindingTestContext - renamed a few things to make them clearer - reduced the number of permutations tested in some cases to reduce slowest test from 60s to 5s Release Notes: - N/A
Conrad Irwin created
48cba32
Revert "Use sha in the names of Linux nightly archives (#11693)"
This reverts commit 6a64360ec82d5309890e042c5305edfebb9ae59a.
Kirill Bulatov created
6a64360
Use sha in the names of Linux nightly archives (#11693)
Release Notes: - N/A
Kirill Bulatov created
fa04f75
chore: Improve dev build startup time (#11692)
RustEmbed repeatedly compiled regexes for handling of 'include='/'exclude' statements in a hot loop, which caused each call to Assets::iter() to take 600ms. Since it is being called twice on our startup path, that alone contributed over a second to startup time in debug builds. I've filed a PR with them https://github.com/pyrossh/rust-embed/pull/244 which brings down the time for a single iter() call to 6ms. Release Notes: - N/A
Piotr Osiewicz created
69676c9
update ring dependency (#11689)
this updates ring dependency to 0.17.x version, which has Windows on ARM support Release Notes: - N/A
Maksim Bondarenkov created
b8a8344
editor: Support walking through overlapping diagnostics (#11139)
While looking into how to implement #4901, noticed that the current `Goto next/previous diagnostic` behaved a bit weirdly. That is, when there are multiple errors that have overlapping ranges, only the first one can be chosen to be active by the `go_to_diagnostic_impl`. ### Previous behavior: https://github.com/zed-industries/zed/assets/71292737/95897675-f5ee-40e5-869f-0a40066eb8e3 Doesn't go through all the diagnostics, and going backwards and forwards doesn't show the same diagnostic always. ### New behavior: https://github.com/zed-industries/zed/assets/71292737/81f7945a-7ad8-4a34-b286-cc2799b10500 Should always go through the diagnostics in a consistent manner. Release Notes: * Improved the behavioral consistency of "Go to Next/Previous Diagnostic"
Kalle Ahlström created
c71cfd5
Change `ToolOutput` to `ToolView` (#11682)
Additionally, the internal `ToolView` trait used by the registry is now called `InternalToolView`. This should make it a bit easier to understand that the `ToolView` is intended for a `gpui::View` (implementing `Render`). It does still feel like more could be merged here but I think the built tools are now a bit clearer. Release Notes: - N/A
Kyle Kelley created
5515ba6
Extract `http` from `util` (#11680)
This avoids the CLI linking libssl etc... Release Notes: - N/A
Conrad Irwin created
df41435
Introduce DisplayRow, MultiBufferRow newtypes and BufferRow type alias (#11656)
Part of https://github.com/zed-industries/zed/issues/8081 To avoid confusion and bugs when converting between various row `u32`'s, use different types for each. Further PRs should split `Point` into buffer and multi buffer variants and make the code more readable. Release Notes: - N/A --------- Co-authored-by: Piotr <piotr@zed.dev>
Kirill Bulatov and Piotr created
38f1108
Improve prompts for tools (#11669)
Improves the descriptions for some of the tools. I wish we had metrics to back up changes in how the model responds to tool schema changes so anecdotally I'm just going to say this _seems_ improved. Release Notes: - N/A
Kyle Kelley created
fc58401
ruby: Add `embedded_template` grammar (#11677)
This PR adds the `embedded_template` grammar to the Ruby extension, as we need it present for ERB. Release Notes: - N/A
Marshall Bowers created