ada2220
Insert a user reply when hitting `cmd-enter` in an assistant message
Antonio Scandurra created
ada2220
Insert a user reply when hitting `cmd-enter` in an assistant message
Antonio Scandurra created
f4f0606
Add assertion to pinpoint how deletion works across excerpts
Antonio Scandurra created
337dda8
Only remove excerpts when an edit touches them
Antonio Scandurra created
8032324
Prevent moving across excerpts on `Editor::delete`
Antonio Scandurra created
e46d154
Retain selection's head (as opposed to its end) on insertion
This makes a difference when an edit spans two excerpts and the selection start won't necessarily be the same as the selection end after the edit.
Antonio Scandurra created
23836eb
Not working yet: Remove empty messages unless they contain the cursor
Problem is, I'm trying to trust the excerpt id of the selection head, but it's a sentinel value and not the actual excerpt id of the message. I think we probably need to resolve to offsets instead.
Nathan Sobo created
296a0bf
Populate created local settings file with an empty JSON object and comments
Max Brunsfeld created
cb975f1
Add Zed > Preferences > Local Settings to application menu
Max Brunsfeld created
0949ee8
:art: Move OpenSettings action back to the zed crate
Max Brunsfeld created
398b0f3
Apply bounds to all windows when using start-local-collaboration script (#2570)
The `start-local-collaboration` script opens two instances of Zed, each
logged in as a different user, and each one taking up half of the
screen. But previously, when joining a remote project as one of the
collaborators, that newly-opened window would be full screen.
Now, each instance of Zed keeps *all* of its windows on its half of the
screen. This is implemented by respecting the `ZED_WINDOW_{SIZE,BOUNDS}`
env vars, even when joining *remote* projects.
Release Notes:
- N/A
Max Brunsfeld created
3d1ba1b
Apply bounds to all windows when using start-local-collaboration script
Max Brunsfeld created
5711511
Fix copilot state corruption when there are multiple buffers with the same remote id in different projects (#2569)
Fixes https://linear.app/zed-industries/issue/Z-1511/thread-main-panicked-at-assertion-failed-left-==-right-left-local-0-1 Previously, when exchanging messages about buffers with a copilot language server, we identified buffers using their **remote id**. This caused problems when there were multiple projects open, where one or more were remote, because buffers' remote ids are only unique within a given project. When you have multiple projects open, and one or more of the projects is remote, it's pretty easy to have two buffers open with the same remote id. In my testing, when this happened, copilot would stop working in both buffers. But I believe that depending on the editing patterns that occur in the two buffers, it could cause the crash reported in the Linear issue above. This PR changes our copilot logic to use buffers' local handle ids for identifying them. This fixed the problems I was able to reproduce when using copilot in both remote and local projects. Release Notes: - Fixed a crash that would sometimes occur when editing buffers after having collaborated on a remote project.
Max Brunsfeld created
12dd91c
Use local ids, not remote ids, to identify buffers to copilot
Max Brunsfeld created
5e4da64
Add file and line number information to logs (#2568)
This PR adds codegen from rustc to track the file and line number of calls to `log_err()`. I haven't noticed much longer compile times on my machine, and looking at the [implementation](https://rustc-dev-guide.rust-lang.org/backend/implicit-caller-location.html) it essentially adds an extra argument and secret reference pass. However, this will show a lot more data in our logs on user machines. Requesting review from @ForLoveOfCats, who usually knows a bunch about this kind of thing :)
Mikayla Maki created
624467e
Add file and line number information to logs
Mikayla Maki created
7fbafc8
Remove code sending zed events to mixpanel (#2567)
Release Notes: - N/A
Joseph T. Lyons created
311074e
Remove code sending zed events to mixpanel
Joseph Lyons created
2190a27
Stop sending editor events to mixpanel (#2566)
Release Notes: - N/A
Joseph T. Lyons created
70c5489
Stop sending editor events to mixpanel
Joseph Lyons created
4f31656
Move app version into panic object (#2565)
Final tweaks to clean up how we structure our panic data Release Notes: - N/A
Joseph T. Lyons created
917d894
Move app version into panic object
Joseph Lyons created
6b89243
Update rust-bindgen dev-dependencies (#2563)
I did \*something\* Friday afternoon which changed something about my system SDK to break the `media` crate's bindings generation. Some of the types and consts were not being generated despite being able to prove that they exist in the source, such as when running the header through the preprocessor myself and feeding that through the generator. Updating my OS, XCode, command line tools, and reinstalling Rust as well as working from fresh clones of the repo had no effect. Updating rust-bindgen resolved the issue and downgrading the version back to the original version caused the issue to reappear. I'm still not sure what happened to change the SDK but at this point with being able to build the project again I'm not going to look a gift horse in the mouth. Release Notes: - N/A
Julia created
0ed8bbc
Query `rect_for_text_range` on focused view instead of root element (#2564)
This was causing IME input to be drawn in the wrong place when there were splits or panels in the window. Release Notes: - Fixed a bug that was causing IME input to sometimes be rendered in the wrong position.
Antonio Scandurra created
c872f58
Query `rect_for_text_range` on focused view instead of root element
This was causing IME input to be drawn in the wrong place when there were splits or panels in the window.
Antonio Scandurra created
bef6932
Avoid accidentally taking the `api_key` when requesting an assist
Antonio Scandurra created
5790d69
Update rust-bindgen dev-dependencies
Julia created
a89f3ed
Fix typos (#2562)
Quite literally just ran `typos --write-changes` from https://crates.io/crates/typos. Its pretty impressive - wonder if we should run it on CI. Release Notes: - N/A
Joseph T. Lyons created
7c60f63
Fix typos
Joseph Lyons created
46d2cba
Improve panic reports (#2560)
* Add an `identifying_backtrace` field that only contains symbols in
*our* own codebase, which can be used for better deduplication.
* In the main backtrace, include file and line numbers for all symbols
in our codebase
* Exclude any stack frames within the panic handling/hooking system
itself, so that the top line of the backtrace is where the panic
originated in our codebase.
This should improve our panic deduplication, and also make panic reports
a bit more readable.
example:
```
{
"thread": "main",
"payload": "wtf",
"location_data": {
"file": "crates/zed/src/zed.rs",
"line": 459
},
"backtrace": [
"zed::open_log_file::{{closure}}::{{closure}}::{{closure}}",
" crates/zed/src/zed.rs:459",
"gpui::app::AppContext::spawn_internal::{{closure}}",
" crates/gpui/src/app.rs:2073",
"gpui::executor::any_local_future::{{closure}}",
" crates/gpui/src/executor.rs:1026",
"<core::pin::Pin<P> as core::future::future::Future>::poll",
"<async_task::runnable::spawn_local::Checked<F> as core::future::future::Future>::poll",
"async_task::raw::RawTask<F,T,S>::run",
"async_task::runnable::Runnable::run",
"<gpui::platform::mac::dispatcher::Dispatcher as gpui::platform::Dispatcher>::run_on_main_thread::trampoline",
" crates/gpui/src/platform/mac/dispatcher.rs:40",
"<() as objc::message::MessageArguments>::invoke",
"objc::message::platform::send_unverified",
"objc::message::send_message",
"<gpui::platform::mac::platform::MacForegroundPlatform as gpui::platform::ForegroundPlatform>::run",
" crates/gpui/src/platform/mac/platform.rs:366",
"gpui::app::App::run",
" crates/gpui/src/app.rs:251",
"Zed::main",
" crates/zed/src/main.rs:118",
"core::ops::function::FnOnce::call_once",
"std::sys_common::backtrace::__rust_begin_short_backtrace",
"std::rt::lang_start::{{closure}}",
"core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once",
"std::rt::lang_start"
],
"release_channel": "dev",
"os_name": "macOS",
"os_version": "12.6.1",
"architecture": "aarch64",
"panicked_on": 1685734744050,
"identifying_backtrace": [
"zed::open_log_file::{{closure}}::{{closure}}::{{closure}}",
"gpui::app::AppContext::spawn_internal::{{closure}}",
"gpui::executor::any_local_future::{{closure}}",
"<gpui::platform::mac::dispatcher::Dispatcher as gpui::platform::Dispatcher>::run_on_main_thread::trampoline",
"<gpui::platform::mac::platform::MacForegroundPlatform as gpui::platform::ForegroundPlatform>::run",
"gpui::app::App::run",
"Zed::main"
]
}
```
Release Notes:
N/A
Max Brunsfeld created
33c4c32
Avoid writing spurious nulls to the settings file when updating it programatically (#2561)
Thanks for catching this @iamnbutler.
Max Brunsfeld created
7417835
Avoid writing spurious nulls to settings file when updating it programatically
Max Brunsfeld created
f6a4706
Improve panic reports
* Add an 'identifying_backtrace' field that only contains symbols in our codebase, which can be used for better deduplication. * In the main backtrace, include file and line numbers for all symbols in our codebase
Max Brunsfeld created
00265c1
Add additional panic information to panic events (#2555)
Adds the following to the panic event release_channel os_name os_version architecture Merge first: https://github.com/zed-industries/zed.dev/pull/322 Release Notes: - N/A
Joseph T. Lyons created
345fad3
editor: add select previous command (#2556)
Added a `select previous` command to complement `select next`. Release Notes: - Added "Select previous" editor command, mirroring `Select next`. Ticket number: Z-366
Piotr Osiewicz created
f00f16f
Show remaining tokens
Antonio Scandurra created
3750e64
Save OpenAI API key in the keychain
Antonio Scandurra created
571d2f4
Z-1074/search default label (#2547)
This commit adds a default "Project search" tooltip for empty search panes. Fixes Linear ticket Z-1074 Release Notes: - Added default tooltip to empty search panes. ([#1533](https://github.com/zed-industries/community/issues/1533)).
Piotr Osiewicz created
a81d164
Allow saving the OpenAI API key in the assistant panel
Antonio Scandurra created
d0aff65
Allow moving the assistant panel to other docks
Antonio Scandurra created
55c8c6d
Allow adding new contexts
Antonio Scandurra created
cf934ab
Fix compile errors
Antonio Scandurra created
20e65a5
Merge remote-tracking branch 'origin/main' into assistant-2
Antonio Scandurra created
c55aee8
Rename field to panicked_on
Joseph Lyons created
cc05590
Add additional panic information to panic events
Joseph Lyons created
0bd9d5b
Zoom out all panes when opening a dock (#2554)
Fixes https://linear.app/zed-industries/issue/Z-2051/center-zoom-isnt-unset-when-opening-project-panel Release Notes: - Fixed a bug where opening the project panel did not reset the zoom state of a pane.
Max Brunsfeld created
585d13d
Unzoom all panes when opening a dock
Max Brunsfeld created
a55eafa
Fix ambiguous glob export warnings in rust 1.70 (#2553)
This fixes a warning that is introduced when upgrading to Rust 1.70. Release Notes: - N/A
Max Brunsfeld created
e67e6e6
Fix ambiguous glob export warnings in rust 1.70
Max Brunsfeld created
6d24a8a
Add panic events (#2552)
Adds a time field to support panic events. See https://github.com/zed-industries/zed.dev/pull/321 Release Notes: - N/A
Joseph T. Lyons created
0065f57
Add panic events
Joseph Lyons created