6793d4b
feat(workspace): show git status on editor tabs
Alex Viscreanu 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
248f5df
Get a red box on screen
Co-Authored-By: Derek Briggs <derek.briggs@me.com>
Nathan Sobo and Derek Briggs 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
87bafb0
Get playground app launching
Not sure if it should be in the workspace, but it's easier for now. Co-Authored-By: Derek Briggs <derek.briggs@me.com>
Nathan Sobo and Derek Briggs created
b9e0074
Perform only one git statuses call when reloading a git repo after it changes
Max Brunsfeld created
c69d0d5
Avoid deserializing all themes to compute settings JSON schema
Max Brunsfeld created
4b20542
Get cell compiling
Nathan Sobo created
031172d
file/symbol navigation modifiers (#2727)
Fixes https://github.com/zed-industries/community/issues/54 Release Notes: - Added modifiers for opening files and symbols on a split - Added modifiers for navigating to definition and type definitions on a split
Alex Viscreanu created
c0b2326
fix(flexes): reset flexes when collapsing axis
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Alex Viscreanu and Mikayla Maki created
c766931
feat(workspace): allow alternative actions to open files and symbols in split
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Alex Viscreanu and Mikayla Maki created
369ccc7
branch_list: Bail in case of missing worktrees. (#2726)
Z-2632 Release Notes: - Fixed a crash that occurred when opening a modal branch picker without a corktree.
Piotr Osiewicz created
cde5b39
Select all matches (#2717)
Closes https://github.com/zed-industries/community/issues/75 Closes https://github.com/zed-industries/community/issues/1749 The PR * changes keybindings for `Editor && mode == auto_height` context: before, `alt-enter` and `alt-shift-enter` added new lines in such editors, including the one from buffer search. New bindings are the same as in `Editor && mode == full` context. * adds `search::SelectAllMatches` action and binds it to `Alt + Enter` by default, to select all matches of a buffer search The behavior mimics VSCode: we do not move the screen even if all selections are out of the visible range (Cmd+G will navigate there) and allow reselecting the results from both pane and search field, as long as the search is not dismissed. Release Notes: - Added `search::SelectAllMatches` (`Alt + Enter` default) action to place carets and select all buffer search results ([#75](https://github.com/zed-industries/community/issues/75), [#1749](https://github.com/zed-industries/community/issues/1749)).
Kirill Bulatov created
2dae42b
update embedding query for tsx to accomodate for leading comments
KCaverly created
0db8f68
WIP
Nathan Sobo created
d4971e9
update typescript parsing to manage for leading tsdoc comments
KCaverly created
c6195e6
branch_list: Bail in case of missing worktrees.
Z-2632
Piotr Osiewicz created
0f54893
Fix syntax map issues that caused bugs in editing HEEx (#2723)
Fixes [Z-2575 : HEEX files are using deprecated commenting sytle](https://linear.app/zed-industries/issue/Z-2575/heex-files-are-using-deprecated-commenting-sytle) - Fixed a bug where comment toggling and bracket matching used the wrong characters in templating languages like ERB and HEEx ([#1724](https://github.com/zed-industries/community/issues/1724)). - Fixed a bug where interpolated code was sometimes not parsed correctly within templating languages like ERB and HEEx.
Max Brunsfeld created
c466711
branch_list: Ensure index is within list bounds. (#2724)
Z-2630 Release Notes: - Fixed a crash in branch list that occurred when confirming a match in empty list.
Piotr Osiewicz created
9c15025
branch_list: Ensure index is within list bounds.
Z-2630
Piotr Osiewicz created
31720d8
Add randomized syntax map test with elixir within heex within elixir
Max Brunsfeld created
21e7e35
Include newlines in between combined injection ranges on different lines
Max Brunsfeld created
2f2ef7c
Use workspace dependencies for tree-sitter grammars
Max Brunsfeld created