65c6bfe
get-preview-channel-changes errors on invalid token (#9616)
Click to expand commit body
Release Notes: - N/A
Conrad Irwin created
65c6bfe
get-preview-channel-changes errors on invalid token (#9616)
Release Notes: - N/A
Conrad Irwin created
ac4c6c6
Make it (a tiny bit) easier to run your own collab (#9557)
* Allow creating channels when seeding * Allow configuring a custom `SEED_PATH` * Seed the database when creating/migrating it so you don't need a separate step for this. Release Notes: - N/A
Conrad Irwin created
1062c5b
Fix copilot modal (#9613)
Release Notes: - Fixed copilot modal not responding ([#9596](https://github.com/zed-industries/zed/issues/9596)). (preview only)
Conrad Irwin created
0b01928
Wayland: double click (#9608)
This PR builds off of an earlier version of https://github.com/zed-industries/zed/pull/9595, rearranges some of the logic, and removes an unused platform API. Release Notes: - N/A --------- Co-authored-by: apricotbucket28 <agustin.nicolas.marcos@outlook.com>
Mikayla Maki and apricotbucket28 created
9b0949b
Allow specifying no base keymap (#9471)
This PR is a bit of a shot in the dark. I'm not sure if this will be acceptable and I understand if it gets rejected. I've been trying to integrate Zed as my daily driver and the key bindings have been a major hurdle for me. Mostly due to the windows/linux keybindings being messed up, but also me wanting to have more chained key bindings similar to helix or common in custom neovim configurations. I think having a `None` base keymap would allow someone to more easily implement a new base keymap (#4642) and would make my daily use of Zed a little nicer 😅. Also I am aware that there would need to be a little more work done in this PR for the other base keymaps such as 'atom' since they assume the 'default' (vscode) base keymaps are loaded. I'm happy to do that work if a 'none' base keymap is acceptable. Release Notes: - Added ability to specify no base keymap which allows for full keybinding customization
Ezekiel Warren created
5602c48
Action release handlers (#8782)
This PR adds support for handling action releases — events that are fired when the user releases all the modifier keys that were part of an action-triggering shortcut. If the user holds modifiers and invokes several actions sequentially via shortcuts (same or different), only the last action is "released" when its modifier keys released. ~The following methods were added to `Div`:~ - ~`capture_action_release()`~ - ~`on_action_release()`~ - ~`on_boxed_action_release()`~ ~They work similarly to `capture_action()`, `on_action()` and `on_boxed_action()`.~ See the implementation details in [this comment](https://github.com/zed-industries/zed/pull/8782#issuecomment-2009154646). Release Notes: - Added a fast-switch mode to the file finder: hit `p` or `shift-p` while holding down `cmd` to select a file immediately. (#8258). Related Issues: - Implements #8757 - Implements #8258 - Part of #7653 Co-authored-by: @ConradIrwin
Andrew Lygin and @ConradIrwin created
91ab95e
Fix bugs in linux text system (#9604)
Supersedes https://github.com/zed-industries/zed/pull/9579 by manually including it. Release Notes: - N/A
Mikayla Maki created
585e867
Add a schema to extensions, to prevent installing extensions on too old of a Zed version (#9599)
Release Notes: - N/A --------- Co-authored-by: Marshall <marshall@zed.dev>
Max Brunsfeld and Marshall created
b1feeb9
Windows: Refactoring (#9580)
Aggregate `DefWindowProc` calls with individual handler return value as `Option<isize>` Release Notes: - N/A
白山風露 created
78e116c
Fix skip prompt warning (#9590)
This fixes a non-panicking log error caused by https://github.com/zed-industries/zed/pull/9452 Release Notes: - N/A
Mikayla Maki created
d699b8e
Allow extensions to define more of the methods in the LspAdapter trait (#9554)
Our goal is to extract Svelte support into an extension, since we've seen problems with the Tree-sitter Svelte parser crashing due to bugs in the external scanner. In order to do this, we need a couple more capabilities in LSP extensions: * [x] `initialization_options` - programmatically controlling the JSON initialization params sent to the language server * [x] `prettier_plugins` - statically specifying a list of prettier plugins that apply for a given language. * [x] `npm_install_package` 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
0ce5cdc
Only allow opening one Extensions view (#9569)
Release Notes: - Changed the extensions view to only allow one open instance at a time. ## Before <img width="494" alt="image" src="https://github.com/zed-industries/zed/assets/5518/9329e685-1946-4384-bec3-f7eadf18a0cc">
Jason Lee created
3853991
Format `prettier_server.js` (#9583)
This PURELY formats the file by opening it in Zed and hitting save with save-on-format on. It's been bugging me that I can't change the file without the whole thing getting reformatted, so here we are. Release Notes: - N/A
Thorsten Ball created
3a2eb12
Fix binary name for extension CLI (#9591)
This PR fixes the binary name for the extension CLI. This was originally done in #9541, but got accidentally reverted in #9549. Release Notes: - N/A
Marshall Bowers created
59bc81d
v0.129.x dev
Mikayla created
88857f8
VS Code -> Zed tasks converter (#9538)
We can convert shell, npm and gulp tasks to a Zed format. Additionally, we convert a subset of task variables that VsCode supports. Release notes: - Zed can now load tasks in Visual Studio Code task format --------- Co-authored-by: Piotr Osiewicz <piotr@zed.dev> Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Anthony Eid , Piotr Osiewicz , and Piotr Osiewicz created
269d251
Add support for applying theme after extension is installed (#9529)
Release Notes: - Added support for opening the theme selector with installed themes after installing an extension containing themes. ([#9228](https://github.com/zed-industries/zed/issues/9228)). <img width="1315" alt="Screenshot 2024-03-20 at 11 00 35 AM" src="https://github.com/zed-industries/zed/assets/1486634/593389b3-eade-4bce-ae17-25c02a074f21"> --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Jason Lee and Marshall Bowers created
6cec389
ui: Make `top_padding` an associated function on the `TitleBar` (#9577)
This PR makes the function for computing the top padding for the `TitleBar` an associated function. Release Notes: - N/A
Marshall Bowers created
9ab7a22
Fix licensing errors
Antonio Scandurra created
f2394c7
Fix licensing
Antonio Scandurra created
7855b9e
Allow to handle autoclosed characters differently (#8666)
Adds the `always_treat_brackets_as_autoclosed` setting to control how the autoclosed characters are handled. The setting is off by default, meaning the behaviour stays the same (following how VSCode handles autoclosed characters). When set to `true`, the autoclosed characters are always skipped over and auto-removed no matter how they were inserted (following how Sublime Text/Xcode handle this). https://github.com/zed-industries/zed/assets/471335/304cd04a-59fe-450f-9c65-cc31b781b0db https://github.com/zed-industries/zed/assets/471335/0f5b09c2-260f-48d4-8528-23f122dee45f Release Notes: - Added the setting `always_treat_brackets_as_autoclosed` (default: `false`) to always treat brackets as "auto-closed" brackets, i.e. deleting the pair when deleting start/end, etc. ([#7146](https://github.com/zed-industries/zed/issues/7146)). --------- Co-authored-by: Thorsten Ball <mrnugget@gmail.com>
Tim Masliuchenko and Thorsten Ball created
d5e0817
windows: Fix title bar height when maximized (#9449)
screenshots and description incoming ## title bar when window is maximized | before | after | | --- | --- | |  |  | ## ~~caption buttons at 200%~~ ~~buttons are now properly responsive at different scales~~ ~~closes #9438~~ ~~proper scale factor handling in follow up PR (possibly #9440)~~ <details> <summary>out of date image</summary>  </details> should be fixed by https://github.com/zed-industries/zed/pull/9456 Release Notes: - N/A
Ezekiel Warren created
3dadfe4
Channel chat: Add edit message (#9035)
**Summary**: - Removed reply message from message_menu - Made render_popover_buttons a bit more reusable - Fixed issue that you can't close the reply/edit preview when you are not focusing the message editor - Notify only the new people that were mentioned inside the edited message **Follow up** - Fix that we update the notification message for the people that we mentioned already - Fix that we remove the notification when a message gets deleted. - Fix last acknowledge message id is in correct now **Todo**: - [x] Add tests - [x] Change new added bindings to the `Editor::Cancel` event. Release Notes: - Added editing of chat messages ([#6707](https://github.com/zed-industries/zed/issues/6707)). <img width="239" alt="Screenshot 2024-03-09 at 11 55 23" src="https://github.com/zed-industries/zed/assets/62463826/b0949f0d-0f8b-43e1-ac20-4c6d40ac41e1"> <img width="240" alt="Screenshot 2024-03-13 at 13 34 23" src="https://github.com/zed-industries/zed/assets/62463826/d0636da2-c5aa-4fed-858e-4bebe5695ba7"> --------- Co-authored-by: Bennet Bo Fenner <53836821+bennetbo@users.noreply.github.com> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Remco Smits , Bennet Bo Fenner , and Conrad Irwin created
5139aa3
Fix merge conflict in collab (#9550)
Release Notes: - N/A
Conrad Irwin created
86a86a9
Fix incorrect git ref check in publish extension cli workflow
Co-authored-by: Marshall <marshall@zed.dev>
Max Brunsfeld and Marshall created
fd11bd6
Perform extension packaging in extension-cli (#9549)
Release Notes: - N/A --------- Co-authored-by: Marshall <marshall@zed.dev>
Max Brunsfeld and Marshall created
85c294d
windows: Implement `app_version` (#9410)
#### Call `app_version`:  #### `Zed.exe` info:  Release Notes: - N/A
张小白 created
cfa0fc9
wayland: change some borrow_mut to borrow, reduce borrow scopes, fix two crashes (#9306)
Release Notes: - N/A
Luke Jones created
086f4e6
windows: Properly handle `DPI` (#9456)
As I mentioned before, there are the following issues with how GPUI handles scale factors greater than 1.0: 1. The title bar buttons do not function correctly, with minimizing button performing maximization and maximizing button performing closure. 2. As discussed in #8809, setting a scale factor greater than 1.0 causes GPUI's drawing content to be pushed off the screen. This PR introduces `LogicalSize` and `PhysicalSize` to differentiate between coordinate systems for proper GPUI rendering, and now scale factors above 1.5 are working correctly. `Zed` with a scale factor equals 1.5, and change between different scale factors: https://github.com/zed-industries/zed/assets/14981363/3348536d-8bd3-41dd-82f6-052723312a5b Release Notes: - N/A
张小白 created
2c36652
wayland: fix handling of non-discrete scroll events (#9548)
https://github.com/zed-industries/zed/pull/9103 broke touchpad scrolling on Wayland This PR correctly filters the `Axis` to handle all non-discrete scroll events (see https://wayland.app/protocols/wayland#wl_pointer:enum:axis_source) Should fix https://github.com/zed-industries/zed/issues/9525 Release Notes: - N/A
apricotbucket28 created
8ae5a3b
Allow AI interactions to be proxied through Zed's server so you don't need an API key (#7367)
Co-authored-by: Antonio <antonio@zed.dev> Resurrected this from some assistant work I did in Spring of 2023. - [x] Resurrect streaming responses - [x] Use streaming responses to enable AI via Zed's servers by default (but preserve API key option for now) - [x] Simplify protobuf - [x] Proxy to OpenAI on zed.dev - [x] Proxy to Gemini on zed.dev - [x] Improve UX for switching between openAI and google models - We current disallow cycling when setting a custom model, but we need a better solution to keep OpenAI models available while testing the google ones - [x] Show remaining tokens correctly for Google models - [x] Remove semantic index - [x] Delete `ai` crate - [x] Cloud front so we can ban abuse - [x] Rate-limiting - [x] Fix panic when using inline assistant - [x] Double check the upgraded `AssistantSettings` are backwards-compatible - [x] Add hosted LLM interaction behind a `language-models` feature flag. Release Notes: - We are temporarily removing the semantic index in order to redesign it from scratch. --------- Co-authored-by: Antonio <antonio@zed.dev> Co-authored-by: Antonio Scandurra <me@as-cii.com> Co-authored-by: Thorsten <thorsten@zed.dev> Co-authored-by: Max <max@zed.dev>
Nathan Sobo , Antonio , Antonio Scandurra , Thorsten , and Max created
905a240
Add GitHub Action for publishing the extension CLI (#9542)
This PR adds a GitHub Action for publishing the extension CLI. When the `extension-cli` tag is pushed, this Action will run, build the `zed-extension` binary, and upload it to DigitalOcean for consumption. This will allow us to consume the pre-built binary in the CI for the extensions repo. Release Notes: - N/A --------- Co-authored-by: Max <max@zed.dev>
Marshall Bowers and Max created
2ea333f
Insert hitbox if div contains tooltip (#9545)
Release Notes: - Fixed a bug that would cause certain tooltips to not show up (preview-only).
Antonio Scandurra created
ac6c4f3
windows: fix 'space' keystroke keydown event (#9476)
the space key was being reported as key " " which didn't allow it to be used in keybindings Release Notes: - N/A
Ezekiel Warren created
fd0071f
Add an animation to the LSP checking indicator (#9463)
Spinner go spinny. Extra thanks to @kvark for helping me with the shaders. https://github.com/zed-industries/zed/assets/2280405/9d5f4f4e-0d43-44d2-a089-5d69939938e9 Release Notes: - Added a spinning animation to the LSP checking indicator --------- Co-authored-by: Dzmitry Malyshau <kvark@fastmail.com>
Mikayla Maki and Dzmitry Malyshau created
56bd96b
Image viewer (#9425)
This builds on #9353 by adding an image viewer to Zed. Closes #5251. Release Notes: - Added support for rendering image files ([#5251](https://github.com/zed-industries/zed/issues/5251)). <img width="1840" alt="image" src="https://github.com/zed-industries/zed/assets/836375/3bccfa8e-aa5c-421f-9dfa-671caa274c3c"> --------- Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Kyle Kelley and Mikayla Maki created
8d515a6
Update binary name for extension CLI (#9541)
This PR updates the binary name used by the extension CLI from `extension_cli` to `zed-extension`. Release Notes: - N/A
Marshall Bowers created
d6b7f14
suggested extensions (#9526)
Follow-up from #9138 Release Notes: - Adds suggested extensions for some filetypes ([#7096](https://github.com/zed-industries/zed/issues/7096)). --------- Co-authored-by: Felix Zeller <felixazeller@gmail.com>
Conrad Irwin and Felix Zeller created
7573f35
Simplify and document parts of linux text system code (#9443)
I mainly focused on improving the `font_id` function, see the description of e286483262e525c64c29d3747838ea9d2bac7bad for more details. The rest are some drive-by changes I could not resist to. When I am right about af4d6c43ce87ff5f16ad39c223e13326550010dd, someone with a Mac could change it there as well. This PR is probably best reviewed commit by commit :) cc @gabydd @h3mosphere Release Notes: - N/A --------- Signed-off-by: Niklas Wimmer <mail@nwimmer.me>
Niklas Wimmer created
250528d
Windows: Auto close HANDLE (#9429)
`HANDLE` is wrapped in a RAII struct. Release Notes: - N/A Co-authored-by: Mikayla Maki <mikayla@zed.dev>
白山風露 and Mikayla Maki created
868616d
Introduce `extension-cli` binary, for packaging extensions in CI (#9523)
This will be used in the [extensions](https://github.com/zed-industries/extensions) repository for packaging the extensions that users submit. Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Max Brunsfeld and Marshall Bowers created
7ef6600
Improve Ruby language to recognize Guardfiles (#9530)
Release Notes: - Improved Ruby language to recognize Guardfile.
Ben Hamment created
97fbec9
Clean up the live_kit_client manifest file (#9532)
Removes some redundant dependency defenitions and updates one dependency.
Tobias Decking created
080e25d
chore: Merge zed lib with zed binary.
TL;DR: - shaves off about 0.5 seconds from most of our debug builds. - It would've slightly regressed release build due to preventing build pipelining, but as a tradeoff I've bumped up codegen-units for zed. \# What did you come up with this time Piotr In our zed repository I've noticed that merely *loading dependencies* in each crate takes non-trivial amount of time (~800ms in case of editor). That is to say, the moment you \`use editor\`, your build time increases by 800ms - this happens just once in crate though, as it looks like compiler has to load .rlibs of all of the referenced dependencies. This is visible under rustc's self-profile. Repro steps on twitter: https://twitter.com/PiotrOsiewicz/status/1762845413072101567 \# How does this commit alleviate this? zed lib + zed bin are on critical path of every build and cumulatively take about 3s to build. This commit bundles all of this up into ~2.2s of bin build time instead. \# Wait, splitting binary targets is good, no? Splitting up a binary target into lib + bin is generally considered to be a good practice, as you can then reuse the lib part elsewhere if needed. It also allows the build to kick off the moment metadata for all of the dependencies is available (thus, you don't need to wait for codegen). However, we do not really use zed as a lib, so the first benefit is not really a thing for us. The latter *is* indeed something we lose out on in release mode (in dev codegen phase of leaf-ish crates is insignificant, as we use shared generics - thus we don't spend much time codegening). That's why I've bumped codegen units for zed crate to 16 in release mode to keep build times in tact.
Piotr Osiewicz created
79a424f
Add Vue language server auto update (#9474)
For #9401 --------- Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>
Hans and Joseph T. Lyons created
192cd5f
Fix file git status refresh on .gitignore update (#9466)
This PR fixes file name coloring in the project panel and tabs when .gitignore file is updated. It's intended to fix #7831. There's another, less vivid, problem with git-aware labels coloring. It's about files that are both ignored and contained in the git index. I'll file a separate issue for it to keep this fix focused. Release Notes: - Fixed file Git status refreshing on .gitignore update (#7831).
Andrew Lygin created
1e1fb21
Merge prost dependecies (#9522)
This patch puts the prost, prost-build, and prost-types dependencies together and unifies their version. This improves organization a bit in addition to improving build time slightly, since a redundant version of prost is now removed. The dependencies are _not_ updated to the newest versions, because the newest versions add a dependency on the `protoc` application, which is not provided by cargo and thus breaks the building process.
Tobias Decking created
0c82585
Bump collab min version (#9521)
We made a change last week to allow creating files with names. This means some files have null saved_mtime, which old versions of zed panic on. A fix is available in 0.126.3 and above Release Notes: - N/A
Conrad Irwin created
d8e32c3
linux: scrolling improvements (#9103)
This PR adjusts scrolling to be a lot faster on Linux and also makes terminal scrolling work. For Wayland, it makes scrolling faster by handling the `AxisValue120` event (which also allows high-resolution scrolling on supported mice) On X11, changed the 1 line per scroll to 3. ### Different solutions I tried replicating Chromium's scrolling behaviour, but it was inconsistent in X11/Wayland and found it too fast on Wayland. Plus, it also didn't match VSCode, since it seems that they do something different. Release Notes: - Made scrolling faster on Linux - Made terminal scroll on Linux
apricotbucket28 created
c0f8581
Windows: implement symlink (#9508)
Since Windows has a distinction between symlinks for directories and symlinks for files, the implementation is adapted to this distinction. Release Notes: - N/A
白山風露 created