forked from zed-industries/zed
-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Transition to gpui3 #103
Merged
Merged
Transition to gpui3 #103
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Closes zed-industries#23342 Ran `nix flake update` and did some cleanup in shell.nix to follow nix [best practices](https://discourse.nixos.org/t/how-to-solve-libstdc-not-found-in-shell-nix/25458/6). Prior to running `nix flake update` `strings "$(echo "$LD_LIBRARY_PATH" | tr : "\n" | grep "gcc")/libstdc++.so.6" | grep "CXXABI_1.3.15" CXXABI_1.3.15` Does not find `CXXABI_1.3.15` After running `nix flake update` `strings "$(echo "$LD_LIBRARY_PATH" | tr : "\n" | grep "gcc")/libstdc++.so.6" | grep "CXXABI_1.3.15" CXXABI_1.3.15` Finds `CXXABI_1.3.15` Launching Zed 0.168.3 inside Zed's nix development shell now launches with no errors. Release Notes: - N/A
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [actions/upload-artifact](https://redirect.github.com/actions/upload-artifact) | action | digest | `6f51ac0` -> `65c4c4a` | --- ### Configuration 📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
…#22762) During my work on PR zed-industries#22616, while trying to fix the `test_reporting_fs_changes_to_language_servers` test case, I noticed that we are currently handling paths using `String` in some places. However, this approach causes issues on Windows. This draft PR modifies `rebuild_watched_paths_inner` and `glob_literal_prefix`. For example, take the `glob_literal_prefix` function modified in this PR: ```rust assert_eq!( glob_literal_prefix("node_modules/**/*.js"), "node_modules" ); // This works on Unix, fails on Windows assert_eq!( glob_literal_prefix("node_modules\\**\\*.js"), "node_modules" ); // This works on Windows assert_eq!( glob_literal_prefix("node_modules\\**/*.js"), "node_modules" ); // This fails on Windows ``` The current implementation treats path as `String` and relies on `\` as the path separator on Windows, but on Windows, both `/` and `\` can be used as separators. This means that `node_modules\**/*.js` is also a valid path representation. There are two potential solutions to this issue: 1. **Continue handling paths with `String`**, and on Windows, replace all `/` with `\`. 2. **Use `Path` for path handling**, which is the solution implemented in this PR. ### Advantages of Solution 1: - Simple and direct. ### Advantages of Solution 2: - More robust, especially in handling `strip_prefix`. Currently, the logic for removing a path prefix looks like this: ```rust let path = "/some/path/to/file.rs"; let parent = "/some/path/to"; // remove prefix let file = path.strip_prefix(parent).unwrap(); // which is `/file.rs` let file = file.strip_prefix("/").unwrap(); ``` However, using `Path` simplifies this process and makes it more robust: ```rust let path = Path::new("C:/path/to/src/main.rs"); let parent = Path::new("C:/path/to/src"); let file = path.strip_prefix(&parent).unwrap(); // which is `main.rs` let path = Path::new("C:\\path\\to/src/main.rs"); let parent = Path::new("C:/path/to\\src\\"); let file = path.strip_prefix(&parent).unwrap(); // which is `main.rs` ``` Release Notes: - N/A --------- Co-authored-by: Kirill Bulatov <[email protected]>
…d-industries#23317) This Pull Request introduces a new command `workspace: move focused panel to next position` which finds the currently focused panel, if such panel exists, and moves it to the next valid dock position, following the order of `Left → Bottom → Right` and then starting again from the left position. In order to achieve this the following changes have been introduced: * Add a new default implementation for `PanelHandle`, namely `PanelHandle::move_to_next_position` which leverages `PanelHandle::position`, `PanelHandle::position_is_valid` and `PanelHandle::set_position` methods to update the panel's position to the next valid position. * Add a new method to the `workspace` module, ` move_focused_panel_to_next_position`, which is responsible for finding the currently focused panel, if such a panel exists, and calling the `move_to_next_position` method in the panel's handle. * Add a new action to the `workspace` module, `MoveFocusedPanelToNextPosition`, which is handled by the `move_focused_panel_to_next_position` method. Tests have also been added to the `workspace` module in order to guarantee that the action is correctly updating the focused panel's position. Here's a quick video of it, in action 🔽 https://github.com/user-attachments/assets/264d382b-5239-40aa-bc5e-5d569dec0734 Closes zed-industries#23115 Release Notes: - Added new command to move the focused panel to the next valid dock position – `workspace: move focused panel to next position` .
) Closes zed-industries#22740 I haven't assigned any default keybindings to these actions because it might conflict with existing OS bindings. Preview: https://github.com/user-attachments/assets/7c62cb34-2747-4674-a278-f0998e7d17f9 Release Notes: - Added `workspace::ActivateNextWindow` and `workspace::ActivatePreviousWindow` actions for cycling between windows.
…es#22861) When the user closes a tab, the tab switcher will now select the tab at the same position. This feature is especially relevant for keyboard users when you want to close multiple consecutive tabs with `<Ctrl-Backspace>`. Please see the discussion at zed-industries#22791 for full motivation and the quick demo. Release Notes: - tab_switcher: Preserve selected position when tab is closed
…es#23357) Related issue: zed-industries#20167 Release Notes: - Changed the default keybinding to accept partial inline completions from `ctrl-right` to `ctrl-cmd-right` on macOS, because `ctrl-right` is already bound to jump to the end of the line. Co-authored-by: Antonio <[email protected]> Co-authored-by: Kirill <[email protected]> Co-authored-by: Bennet <[email protected]>
Note: Design hasn't been reviewed yet, but the logic is done When the user switches the inline completion provider to `zed`, we'll show a modal prompting them to accept terms if they haven't done so: https://github.com/user-attachments/assets/3fc6d368-c00a-4dcb-9484-fbbbb5eb859e If they dismiss the modal, they'll be able to get to it again from the inline completion button: https://github.com/user-attachments/assets/cf842778-5538-4e06-9ed8-21579981cc47 This also stops zeta sending requests that will fail immediately when ToS are not accepted. Release Notes: - N/A --------- Co-authored-by: Richard <[email protected]> Co-authored-by: Danilo Leal <[email protected]> Co-authored-by: Joao <[email protected]>
…d-industries#23364) Just a little design fine-tune. | Before | After | |--------|--------| | <img width="454" alt="Screenshot 2025-01-20 at 12 13 10 PM" src="https://github.com/user-attachments/assets/b27372f2-00f5-40f4-927d-0d831ec4b90d" /> | <img width="454" alt="Screenshot 2025-01-20 at 12 12 17 PM" src="https://github.com/user-attachments/assets/207d08da-d75e-4c60-a6eb-cb1549b5925c" /> | Release Notes: - N/A
To make the mention and keyboard navigability discoverable. Release Notes: - N/A
This PR capitalizes the co-author prefix, as this is the way GitHub writes it in their [docs](https://docs.github.com/en/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors#creating-co-authored-commits-on-the-command-line). Release Notes: - N/A
…ators, class inheritance, function arguments and definition keywords (zed-industries#21454) Add capture groups for builtin types, builtin attribute decorators, class inheritance, function arguments and definition keywords. Related to zed-industries#14892 Release Notes: - Improved syntax highlight for Python: new capture groups for `@function.arguments`, `@function.kwargs`, `@type.class.inheritance`, `@keyword.definition`, `@attribute.builtin` and `@type.builtin`.
The output of `git status --porcelain=v1` includes untracked directories, i.e. directories that have no tracked files beneath. Since we have our own way of computing a "summary" status for each directory in a repo, this is not helpful for Zed; and it interferes with our handling of nested repos. So just skip these lines in the output. Closes zed-industries#23133 Release Notes: - Fix project panel colors when one git repository is nested beneath another
…industries#23375) Release Notes: - N/A
…2997) Adds support for Cut, Copy, Paste, Undo, Redo, New, Open, Save, and Find keys to the default keymap. These keys can be found on old keyboards, but also custom layouts like [Extend](https://dreymar.colemak.org/layers-extend.html). Release Notes: - Added support for the Cut, Copy, Paste, Undo, Redo, New, Open, Save, and Find keys to the default keymap.
Release Notes: - N/A
…d-industries#23354) According to zed-industries#23223, manually setting `RUSTFLAGS` env var overrides settings in `.cargo/config.toml`. Since users possibly may set their own `RUSTFLAGS` when building, this creates an avenue where builds may fail for really strange reasons that are difficult to debug. This PR adds notes to the troubleshooting section to avoid setting `RUSTFLAGS`, and offers alternatives which do not conflict. This problem most recently affected nightly CI builders since we had been setting `RUSTFLAGS` in our workflows to enable custom things like gles or compiling with a specific target cpu. PR zed-industries#23117 caused builds to fail unless they were compiled with `-C target-feature=+crt-static`, which due to this issue the `RUSTFLAGS` env var we set overrode the `config.toml` compile flags, causing our builds to fail. Release Notes: - N/A
…ries#23378) Closes zed-industries#23015 Release Notes: - Improved which keybindings are selected for display. Now later entries within `bindings` will take precedence. The default keymaps have been updated accordingly.
`@mention`ed files in assistant2 now get replaced by the full path of the file in what gets sent to the model, while rendering visually as just the filename (in a crease, so they can only be selected/deleted as a whole unit, not character by character). https://github.com/user-attachments/assets/a5867a93-d656-4a17-aced-58424c6e8cf6 Release Notes: - N/A --------- Co-authored-by: João Marcos <[email protected]> Co-authored-by: Conrad <[email protected]>
I've noticed an occasional error: `ignoring event C:\some\path\to\file outside of root path \\?\C:\some\path`. This happens because UNC paths always fail to match with non-UNC paths during operations like `strip_prefix` or `starts_with`. To address this, I changed the types of some key parameters to `SanitizedPath`. With this adjustment, FS events are now correctly identified, and under the changes in this PR, the `test_rescan_and_remote_updates` test also passes successfully on Windows. Release Notes: - N/A
Also fixes issue introduced in zed-industries#23113 where changes to keyboard layout would not cause reload of keymap configuration. Closes zed-industries#20531 Release Notes: - N/A
Closes zed-industries#22883 To fix the problem, we move `handle_rename_project_entry` from `Worktree` to `LspStore` and register it there. This way it becomes available both in local and headless projects and this avoids the duplication. Release Notes: - Fixed renaming project entries in Remote Development
…ustries#23385) If a suggested edit is a single character insert or a single line deletion, we'll show the diff popover to make it stand out more. Release Notes: - N/A Co-authored-by: Danilo <[email protected]>
…ymbol highlighting (zed-industries#23401) This unblocks work on zed-industries#22182; a single language server might actually be required by multiple languages (think of e.g. C/C++, Javascript/Typescript), in which case it doesn't make sense to use a single grammar. We already use primary language of a buffer for highlights and this PR makes this the only supported syntax highlighting flavour for returned symbols. Closes #ISSUE Release Notes: - N/A
…ies#23403) Follow up to zed-industries#22658 This PR ensures the background and border color of a project panel entry is exactly the same with one exception: if the item is focused, active, and not with mouse down. The point is to not be able to see the border at all given they're there to act sort of akin to CSS's `outline` (which doesn't add up to the box model). Please let me know if there is any edge case I either messed up here or didn't account for. https://github.com/user-attachments/assets/29c74f6a-b027-4d19-a7de-b9614f0d7859 Release Notes: - N/A
| Before | After | |--------|--------| | <img width="1328" alt="Screenshot 2025-01-21 at 11 20 49 AM" src="https://github.com/user-attachments/assets/ad8e3017-122a-4ebd-b1f5-5eb41cc3725a" /> | <img width="1328" alt="Screenshot 2025-01-21 at 11 19 39 AM" src="https://github.com/user-attachments/assets/a0dcbd52-6aca-43fa-97ee-6efde15c8bc1" /> | Release Notes: - N/A
Updates zed-industries#21927 Replaces zed-industries#22904 Closes zed-industries#8580 Adds actions (default keybinds with emacs keymap): - editor::SetMark (`ctrl-space` and `ctrl-@`) - editor::ExchangeMark (`ctrl-x ctrl-x`) Co-Authored-By: Peter <[email protected]> Release Notes: - Add Emacs mark mode (`ctrl-space` / `ctrl-@` to set mark; `ctrl-x ctrl-x` to swap mark/cursor) - Breaking change: `selection` keyboard context has been replaced with `selection_mode` --------- Co-authored-by: Peter <[email protected]>
…on (zed-industries#23803) This PR updates the GitHub Action definitions to restrict more CI jobs to only run in the `zed-industries` organization (and thus, not on forks). Release Notes: - N/A
Closes #ISSUE Release Notes: - N/A
Closes: zed-industries#6884 (hopefully 🤞) Release Notes: - N/A
- Updates the bindings ([tree-sitter-prisma](https://github.com/victorhqc/tree-sitter-prisma)) to its latest update (recently updated to use latest tree-sitter) - Improves syntax highlighting - Adds the `view` keyword **After** <img width="1174" alt="Screenshot 2025-01-24 at 12 44 57" src="https://github.com/user-attachments/assets/84e6afe0-5340-4cdf-ad85-9a800a757323" /> **Before** <img width="1174" alt="Screenshot 2025-01-24 at 12 44 45" src="https://github.com/user-attachments/assets/11296998-fdfe-4fe8-8e5b-feeb41c24385" /> Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <[email protected]>
…#23811) This PR fixes a typo in the error that occurs when trying to construct an AWS Kinesis client and the `kinesis_region` value is missing. Release Notes: - N/A
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Transitions to gpui3
Co-authored-by: Remco Smits [email protected]