109ebc5
ui: Add Scrollbar component (#18927)
Click to expand commit body
Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
109ebc5
ui: Add Scrollbar component (#18927)
Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
eddf70b
Revert "lsp: Do not notify all language servers on file save" (#19183)
Reverts zed-industries/zed#17756. According to the existing implementations of the LSP specification, namely [Helix](https://github.com/helix-editor/helix/blob/a7651f5bf027ec98645d571ab05a685d97e1b772/helix-view/src/document.rs#L1038) and, if I'm not wrong, [VSCode](https://github.com/microsoft/vscode-languageserver-node/blob/main/client/src/common/textSynchronization.ts#L580), `textDocument/didSave` has nothing to do with the watched files and should be sent to the language servers connected to the buffers even if the files are not watched by those. As the LSP spec doesn't say anything about `didSave` being related to the watched files, and the reference implementation in VSCode seemingly does not filter the notifications according to those, it seems like this is an incorrect interpretation of the specification This also causes issues with language servers. See [Metals issue](https://github.com/scalameta/metals-zed/issues/28#issuecomment-2410393150) for example Closes #18636 Release Notes: - N/A
Stanislav Alekseev created
1286198
Environment loading fixes (#19144)
Closes #19040 Addresses the problem with annoying error messages on windows (see comment from SomeoneToIgnore on #18567) Release Notes: - Fixed the bug where language servers from PATH would sometimes be prioritised over the ones from `direnv` - Stopped running environment loading on windows as it didn't work anyways due to `SHELL` not being set
Stanislav Alekseev created
a77ec94
vim: Add support for insert button (#19245)
This commit adds support for using the physical insert-button. First click toggles insert mode and subsequent clicks toggle back and forth between replace and insert mode. Closes #19224 Release Notes: - Added support for using the insert button for vim_mode.
Axel Carlsson created
a56f946
Force astro-language-server to be the primary one for Astro (#19266)
Part of https://github.com/zed-industries/zed/issues/19239 Overall, this hardcoding approach has to stop and Zed better show some notification/modal that proposes to select a primary language server, when launching with the language that has no such settings. Release Notes: - Fixed Astro LSP interactions
Kirill Bulatov created
f944ebc
Add settings to remote servers, use XDG paths on remote, and enable node LSPs (#19176)
Supersedes https://github.com/zed-industries/zed/pull/19166 TODO: - [x] Update basic zed paths - [x] update create_state_directory - [x] Use this with `NodeRuntime` - [x] Add server settings - [x] Add an 'open server settings command' - [x] Make sure it all works Release Notes: - Updated the actions `zed::OpenLocalSettings` and `zed::OpenLocalTasks` to `zed::OpenProjectSettings` and `zed::OpenProjectTasks`. --------- Co-authored-by: Conrad <conrad@zed.dev> Co-authored-by: Richard <richard@zed.dev>
Mikayla Maki , Conrad , and Richard created
1dda039
remote_server: local build also need feature `debug-embed` (#19265)
it's waste me one more hour. IMO, this also need for `build_local` Release Notes: - N/A
CharlesChen0823 created
182230a
Fix C++ configuration documentation (#19258)
- Update the binary JSON object - Add .clangd configuration file summary  Release Notes: - N/A
Alvaro Gaona created
b64919a
ssh: Refine the modal UI (#19256)
This PR refines the SSH modal UI, adjusting spacing and alignment. Via these changes, I'm also introducing the ability for the `empty_message` on the `List` component to receive not just a string but any element. The custom way in which the SSH modal was designed made it feel like this was needed for proper spacing. <img width="700" alt="Screenshot 2024-10-16 at 1 20 54 AM" src="https://github.com/user-attachments/assets/f2e0586b-4c9f-4497-b4cb-e90c8157512b"> Release Notes: - N/A
Danilo Leal created
b752548
storybook: Load GPUI with default features (#19253)
This PR makes it so the Storybook loads GPUI with the default features enabled. This fixes a panic that would occur when trying to run any of the stories. Release Notes: - N/A
Marshall Bowers created
d63a496
Glob documentation (#18789)
Leaving this unlinked for now because I'm not sure where it belongs. Plan to write up something for regexes too.
Peter Tripp created
c00f2d8
Add Diff language (#19129)
Peter Tripp created
973143f
Fix variable name typo (#19244)
Release Notes: - N/A
Joseph T. Lyons created
d806df9
Ensure issues without core labels have triage labels (#19243)
Sometimes, issues are created outside of issue templates (which we don't prefer, but we can't prevent). This updates our top-ranking issues script such that it will add `triage` and `admin read` labels to any issue that is missing a core label, so that we don't miss the issues when doing the next triage. Release Notes: - N/A
Joseph T. Lyons created
b682fc6
Use multi-line regex for '\s' (#19241)
Peter Tripp created
5445f89
ruby: Move Ruby extension to zed-extensions/ruby repo (#19098)
Peter Tripp created
56163b1
Add ability to reload a file (#18395)
Closes #13212 Release Notes: - Added reload command - vim: Added `:e[dit]`, `:e[dit]!` which calls reload
Peter Schilling created
6951768
project_search: Fix message displayed when no results are found (#19108)
when no result found, always display `Search all files`, which is confused. Release Notes: - Fixed an issue where the project search would sometimes show "Search all files" when there were no results. --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
CharlesChen0823 and Marshall Bowers created
e3c6ba4
ssh remote: Revert #19193 and treat killed proxy as non-zero (#19234)
This does two things. Important one: it reverts #19193, which lead to our whole process handling breaking. When the `proxy` process was killed, it apparently didn't close the stdout/stderr anymore, which meant we would not detect when it died. (Watching its `status()` in the io loop also didn't work!) We should figure out how to keep our process handling working before we make this change in #19193, which sounds reasonable. Second, less important thing: I think we should treat the process being killed from a signal as non-zero, as an error. Release Notes: - N/A
Thorsten Ball created
8924b3f
Fix block cursor obscuring placeholder text and editor text in some cases (#18114)
thataboy created
1732441
Use python 3.13 (#19225)
Release Notes: - N/A
Joseph T. Lyons created
096d37a
Remove outdated requirements.txt (#19223)
Release Notes: - N/A
Joseph T. Lyons created
ba69f48
docs: Add Helm extension docs (#19095)
Merge after this: - https://github.com/zed-industries/extensions/pull/746 Release Notes: - N/A --------- Co-authored-by: Peter Tripp <peter@zed.dev> Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
cabrinha , Peter Tripp , and Marshall Bowers created
0eb6bfd
ssh remoting: Treat other message as heartbeat (#19219)
This improves the heartbeat detection logic. We now treat any other incoming message from the ssh remote server as a heartbeat message, meaning that we can detect re-connects earlier. It also changes the connection handling to await futures detached. Co-Authored-by: Thorsten <thorsten@zed.dev> Release Notes: - N/A --------- Co-authored-by: Thorsten <thorsten@zed.dev> Co-authored-by: Antonio <antonio@zed.dev>
Bennet Bo Fenner , Thorsten , and Antonio created
4fa75a7
gpui: Improve performance of laying out long lines (#19215)
TL;DR: Another O(n^2) strikes. In #19194 we received a report about a 7Mb JSON file that Zed struggles with. Naturally this file showcased a O(n^2) in line layout; this file has one long line. During line layout for Mac we have to convert between UTF-16 and UTF-8 indices in the string, as CoreText works with UTF-16 and Rust strings are UTF-8. The problem stemmed from the fact that we were re-seeking our string converter on each glyph, which boils down to: we were reparsing [0..curr_string_position] bytes up to full length of the string, which is the O(n^2) in question. This PR changes this behaviour to reuse the Index Converter if the position we're seeking to is not yet reached. Basically, we're treating the converter as forward iterator and we try to seek with the same iterator, if possible. Where previously you could not even open the file in OP (within reasonable time frame, I waited for 40 seconds before giving up), now you can do it in.. slightly over a second. The best part is: the experience is still not ideal. Typing in the buffer is sluggish. Still, this is a start. Release Notes: - Mac: Improved performance with very long lines
Piotr Osiewicz created
397e4be
ssh remoting: Forward LSP logs to client (#19212)
Release Notes: - N/A --------- Co-authored-by: Bennet Bo Fenner <bennet@zed.dev>
Thorsten Ball and Bennet Bo Fenner created
db7417f
Rework file picker for SSH modal (#19020)
This PR changes the SSH modal design so its more keyboard navigation-friendly and adds the server nickname feature. Release Notes: - N/A --------- Co-authored-by: Danilo <danilo@zed.dev> Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com>
Piotr Osiewicz , Danilo , and Danilo Leal created
be7b24f
ssh remote: Shutdown SSH & server process correctly on app quit (#19210)
Release Notes: - N/A Co-authored-by: Bennet <bennet@zed.dev>
Thorsten Ball and Bennet created
62de03f
tab: Fix copy wrong relative path for tab (#19206)
Closes #19204 Release Notes: - Fixed relative paths copied incorrectly from tabs ([#19204](https://github.com/zed-industries/zed/issues/19204))
CharlesChen0823 created
41ba417
gpui: Fix crash caused by ownership leak (#19185)
- Closes #18811 Release Notes: - N/A
wannacu created
6e2869a
Prevent deadlock when create a new meter/price on Stripe (#19196)
This also puts the entire state of `StripeBilling` behind a `RwLock`. When fetching the existing prices and meters, or when inserting new ones, we acquire a write lock and hold it until the Stripe request completes. This prevents two concurrent calls to `get_or_insert_price` from inserting the same data twice. Creating a new meter/price is unusual, so in practice we'll acquire a read lock most of the time. /cc @rtfeldman @maxdeviant Release Notes: - N/A
Antonio Scandurra created
6986f08
supermaven: Fix crash when editing non-ASCII text (#19153)
Closes #19051 Closes #19182 #### How to reproduce this crash: 1. Open any file and input some ASCII characters. 2. Replace these characters with `你好`. 3. Press `backspace`. 4. Crash. https://github.com/user-attachments/assets/ea5c5340-29a5-42c8-98c5-6e60770445a4 The issue lies with the `prefix_offset` introduced in #18858. After the buffer is modified, this value is not always valid and may fall within a `char boundary`, which results in a crash. Release Notes: - Fixed Supermaven crashing on deleting non-ASCII text
张小白 created
3ff52a8
windows: Fix opening wrong path when clicking path in the terminal view (#18726)
Closes #18550 This PR removes the prefix `\\?\`. https://github.com/user-attachments/assets/f4f4333c-5d87-4f0f-b12c-fb2108703b6a Release Notes: - N/A
张小白 created
7d5fe66
remote: Disable ControlPersist for master ssh connection (#19193)
remote: Disable ControlPersist for master ssh connection `ControlPersist=yes` combined with `ControlMaster=yes` silently forces `ForkAfterAuthentication=yes` (even when the user has explicitly set it to `no` - reported upstream in [0]) - and the latter makes the ssh subprocess disappear, which makes us think that the connection died (This is only an issue for people who have `ControlPersist=yes` in their `ssh_config`, and perhaps the answer is "if that option breaks things, don't use that option?" - but it's an option that makes sense _most_ of the time, it's just in this edge-case of "creating an ssh connection with -N and expecting the process to stay in the foreground" where it _must_ be set to no) I think the alternative approach is to tell people "if you want to use persistent connections, have a separate ~/.ssh/config entry for servername (to ssh into) and servername-no-persist (to zed into)", which is possible, but ugh. Kind of a messy situation >.< Tests: - Before: Connections to my server result in "Failed to connect: ." (The error message is attempting to show stderr, but stderr is empty) - After: Connections to my server work reliably [0] https://bugzilla.mindrot.org/show_bug.cgi?id=3743 Release Notes: - N/A
Shish created
792f583
Revert "chore: Bump taffy to 0.5.2 (#18729)" (#19189)
This reverts commit a99750fd35ef4f44409f474228285b1842c1b7d3. @huacnlee found that commit to have a bad impact on perf and triaged it for us in https://github.com/zed-industries/zed/pull/18729#issuecomment-2410445980 Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
6ec00cd
ssh remoting: Restore SSH projects when reopening Zed (#19188)
Release Notes: - N/A --------- Co-authored-by: Bennet <bennet@zed.dev>
Thorsten Ball and Bennet created
71a878a
remote ssh: Fix asset embedding in cross-compilation (#19180)
This fixes the panic from the settings file not being embedded. Release Notes: - N/A --------- Co-authored-by: Bennet <bennet@zed.dev>
Thorsten Ball and Bennet created
f2337bb
Redirect to checkout page when payment is required (#19179)
Previously, we were redirecting to a non-existant page. Release Notes: - N/A
Antonio Scandurra created
fcf9e54
project: Fix content not displaying when selecting a folder in Windows (#18946)
- Closes #16998
This PR resolves issues with the /file and /diagnostics commands in the
assistant panel, which previously failed to display the contents of a
directory when searching for a folder instead of using the arrow button.
- Changed the format in `project.rs` (located at
`crates/project/src/project.rs`) to use `std::path::MAIN_SEPARATOR` for
cross-platform compatibility, which resolves errors encountered on
Windows that originally used the format `format!("{}/", ...)`.
Release Notes:
- N/A
Lilith Iris created
7dc0691
Improve macOS build guide (#19172)
- `mold` moved to `sold` long time ago. And https://github.com/bluewhalesystems/sold/issues/43... - And add a step for accepting xcodebuild license Signed-off-by: Xavier Lau <x@acg.box>
Xavier Lau created
5b207ba
vim: Add some "z" keybindings for scrolling (#18928)
Release Notes: - vim: Added a few "z" keybindings for scrolling
Frank Sheiness created
325f106
Add vim::Search command option for non-regex search (#19177)
Similar to e2647025ac833856961a1234ed2bd0202f9c4746, this adds a `regex`
option to `vim::Search` command to allow disabling regex search.
Release Notes:
- Added `regex` option to `vim::Search` command to allow disabling regex
search by default in the keymap. Example usage:
```yaml
{
"context": "VimControl && !menu",
"bindings": {
"/": ["vim::Search", { "regex": false }],
}
}
```
Ömer Sinan Ağacan created
ec5d6e9
Make `danger` to output less false-positives (#19151)
Kirill Bulatov created
54683ff
docs: Fix typo in environment documentation (#19164)
Update incorrect spelling of Raycast in environment.md
Bolaji Olajide created
cdead57
docs: Formatter arguments, document `{buffer_path}` usage (#19156)
Peter Tripp created
39468de
Return back to history-based tabs activation on close (#19150)
Closes https://github.com/zed-industries/zed/issues/19036 Alters https://github.com/zed-industries/zed/pull/18168 and moves its change behind a settings flag, restoring the previous behavior. Release Notes: - Fixed tab closing not respecting history. Use `tabs.activate_on_close = neighbour` settings to activate near tabs instead.
Kirill Bulatov created
6491148
Fail on warnings during CI builds (#19149)
Forbid things like https://github.com/zed-industries/zed/pull/19144#issuecomment-2408871788 Release Notes: - N/A
Kirill Bulatov created
0b10fd5
cpp: Better icon support (#19146)
Peter Tripp created
74cc908
ci: Give names to all github actions (#19080)
Shish created
875c0cb
Bytes 1.7.2 merge fix (#19145)
Peter Tripp created