b9fdfd6
catch up with main
KCaverly created
b9fdfd6
catch up with main
KCaverly created
192f747
Detect Node broken-ness initially (#2745)
This will help cases where Node is broken causing Copilot to fail to start but because it doesn't install via NPM we would not have caught it prior. Release Notes: - Improved detection of broken Node installation impacting Copilot ([#1551](https://github.com/zed-industries/community/issues/1551)).
Julia created
aee0084
Detect Node broken-ness initially
This will help cases where Node is broken causing Copilot to fail to start but because it doesn't install via NPM we would not have caught it prior. Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Julia and Antonio Scandurra created
137734c
Piotr/z 2588 php (#2721)
Release Notes: - Added syntax highlighting & Intelephense LSP support for PHP language. ([#46](https://github.com/zed-industries/community/issues/406)).
Piotr Osiewicz created
009cf48
Slightly tidy up vector_db code (#2744)
Code snippet
```rust
fn main() {
//√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√
}
```
has length of 191, but consists of 87 chars, and the debug code with
`.truncate(100)` panicked.
Fixed that issue, cc @KCaverly
Release Notes:
- N/A
Kirill Bulatov created
a884bd7
Slightly tidy up vector_db code
Avoid panicking when truncating code with special chars
Kirill Bulatov created
fa529d9
Remove redundant debug impl
Piotr Osiewicz created
7fde361
Remove leftover comment
Piotr Osiewicz created
afc4c10
Start work on exposing semantic search via project search view
Co-authored-by: Kyle <kyle@zed.dev>
Max Brunsfeld and Kyle created
d83c4ff
remove debug logging for enabled settings
KCaverly created
96abba2
vim: Allow ctrl+[ as an alias for escape (#2741)
Also remove unneeded mappings in `g` and `z` modes Release Notes: - Adds `ctrl+[` as an alias for escape ([#538](https://github.com/zed-industries/community/issues/538)).
Conrad Irwin created
8b42f5b
rename vector_store crate to semantic_index
KCaverly created
9e44de9
Allow ctrl+[ as an alias for escape
Also remove unneeded mappings in `g` and `z` modes Fixes: zed-industries/community#358
Conrad Irwin created
e630ff3
add embedding treesitter queries for elixir
KCaverly created
9f650df
Prevent multiple submissions of the same feedback text (#2740)
Fixes: https://linear.app/zed-industries/issue/Z-2416/improvements-to-feedback-submission We get a lot of duplicate messages through our in-app feedback. My best guess is that because we do not tell the user we are doing anything, and because submission takes awhile, users are hitting the submission button mutliple times. This PR blocks the submission code, once an initial submission is sent. If the original submission fails, we unblock the submission code. The submit button is disabled and enabled accordingly as well. Release Notes: - N/A
Joseph T. Lyons created
1a8bfdf
feat(workspace): add option for moving the tab close button to the left (#2739)
Fixes https://github.com/zed-industries/community/issues/1760 Release Notes: - Add option for chosing where the close button should be displayed on editor tabs
Mikayla Maki created
ede86a6
Prevent multiple submissions of the same feedback text
Co-Authored-By: Julia <30666851+ForLoveOfCats@users.noreply.github.com>
Joseph T. Lyons and Julia created
4efcf49
feat(workspace): add option for moving the tab close button to the left
Alex Viscreanu created
04625fe
feat(workspace): show git status on editor tabs (#2736)
Fixes https://github.com/zed-industries/community/issues/1674 Release Notes: - Added option for showing git status on editor tabs
Mikayla Maki created
f0bf60f
add css as a embeddable file type in which the entire file is embedded individually
KCaverly created
6793d4b
feat(workspace): show git status on editor tabs
Alex Viscreanu created
c9bf407
Avoid optional on select_match
Conrad Irwin created
1362c5a
add embedding treesitter query for cpp
KCaverly created
fef73ae
Make macOS application menu aware of which key bindings are disabled (#2735)
Follow-up of https://github.com/zed-industries/zed/pull/2678 Deals with https://github.com/zed-industries/community/issues/772 Refreshes macOs menu panel on keymap file change and properly ignore disabled actions. Release Notes: - Fixes a bug when disabled actions from macOs menu were still working
Max Brunsfeld created
3e13694
After first panic, ignore others and tear down process even if in thread (#2725)
Spent a bit in a deep dive into how to handle this and honestly the situation is rather unfortunate. The core problem is that when we have a panic anywhere we need to tear down the app, and we'd like to do that as cleanly as possible, avoiding throwing any other panics along the way if possible. We've been seeing a number of panics being reported which are nonsensical, seemingly pointing to being a fallout panic from a worker thread panic-ing, at which point we would write multiple panics to the panic file, and we could possibly upload either both or the wrong panic causing a wild goose chase. Unfortunately I've been entirely unable to reproduce the specific panic we've been seeing but I was able to read through the code responsible and confirm that under specific situations a panic on one worker can cause another worker or the main thread to also panic. An easy solution to this is just to ignore any panics after the first one. I'm thinking that *hopefully* we can trust the first panic to reach the panic hook first so that the flag doesn't accidentally filter out the panic we actually care about. That being said we were expecting that to have already been the case about which panic gets written to the panic file first, the first one in the file being the one we upload, which doesn't seem to have been the case. I'm hoping it was IO silliness causing that and that the flag shouldn't be race-y, however this is still a shot in the dark. 🤞 As for cleanly shutting down, there's not really much we can do. One thread physically cannot cause another to unwind without somehow sending a message which isn't super useful. The only way for a thread to shut down all threads and the process is to go nuclear and abort/exit the process. This will never unwind other threads, effectively having the same effect on those threads as compiling with `panic = "abort"` would. With some (mis)use of `std::panic::resume_unwind` we can at least say that for whatever thread actually panic-ed we will unwind, and any other threads that panic as a result will probably get at least partway through unwinding. This is weird, almost a combination of panic rewinding and aborting, and may actually be worse than just biting the bullet and aborting immediately. I'm really not a fan of where I've ended up but it does seem to at the very least an improvement. The main question in my mind at this point is whether it would be better to attempt to unwind what we can or go all in on abort. I'd love some input on that. Release Notes: - Improved panic reporting when a background thread panics.
Julia created
6770aee
After first panic, ignore others and tear down process even if in thread
Julia created
a4bf19c
Simplify NoAction filtering logic
co-authored-by: Max Brunsfeld <max@zed.dev>
Kirill Bulatov and Max Brunsfeld created
cb8762d
chore: add theme types docs
Sergey Onufrienko created
4cc0674
Ignore keybindings with NoAction in config overrides
Kirill Bulatov created
f887a17
Merge branch 'main' into vim-search
Conrad Irwin created
cf0dd09
update vector_store to accomodate for full file parsing for JSON, TOML and YAML files
KCaverly created
4bece54
update jsx family of languages for preceeding comments and nested exports
KCaverly created
dd6b674
Remove dbg calls
Piotr Osiewicz created
8642a1d
Remove dbg! calls
Piotr Osiewicz created
ee9123a
Remove test
Piotr Osiewicz created
5b6582a
rustfmt
Piotr Osiewicz created
6c7a6d4
Cargo fix
Piotr Osiewicz created
94796e9
Set language id for PHP. LSP works!
Piotr Osiewicz created
965cc2e
Fix a crash in tree-sitter-php
Piotr Osiewicz created
11173b2
Merge branch 'main' into piotr/z-2588-php
Piotr Osiewicz created
dc557e1
Add scaffolding of php language server
Piotr Osiewicz created
f5eac82
Reload menu after keybindings change
Kirill Bulatov created
eaa8224
Use id instead of type_id for actions
Currently, both are the same thing, so the logic is not changed.
Kirill Bulatov created
10a1df3
Fix fold indicator active hover style (#2731)
Release Notes: - Fix: adjusted fold indicator styles
Mikayla Maki created
419cbcb
Fix fold indicator active hover style
Mikayla Maki created
f24001c
Simplify db tests (#2730)
The open_db function I wrote was doing far more than it needed to to preserve the database and it was doing it badly. It no longer does all of that.
Mikayla Maki created
322ebc3
Simplify db tests
Mikayla Maki created
4d91409
Require only a single click to split pane when using cmd in project panel (#2729)
Release Notes: - N/A
Joseph T. Lyons created
c3e8ea3
Require only a single click to split pane when using cmd in project panel
Joseph T. Lyons created
dcc2cd8
Optimize two slow code paths (#2728)
Linear: https://linear.app/zed-industries/issue/Z-2578/zed-launches-very-slow-for-user I was searching for the cause of a slow startup time reported in the above issue, and I don't think I found it, but I did find two very noticeable slow code paths while profiling, and fixed them. ### Notes 1. When starting the JSON language server, we provide it with a JSON schema for our settings. For the `theme` setting, the JSON schema needs to read all of the themes in the registry, to generate a list of valid theme names. Previously, as part of this, we were deserializing each theme from JSON, which took a lot of CPU. Now, we don't do that. 2. When an FS event occurs within a git repository, we reload the git status for all entries in that git repository. Previously, we did that via a separate `libgit2` call per FS entry (including ignored entries, so many thousands in the case of the `zed` repo). Now we do one `libgit2` call, asking for all of the statuses. Git carries an index of all of the files with statuses, so this is fast. Release Notes: - Improved the the performance of starting up a JSON language server. - Improved the performance of handling changes to git repositories, such as changing branches or committing.
Max Brunsfeld created