Commit Graph
1215 Commits
Author SHA1 Message Date
Max Brunsfeld fef73ae921 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
2023-07-17 11:20:41 -07:00
Julia 3e136943c0 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.
2023-07-17 13:52:33 -04:00
Julia 6770aeeb3c After first panic, ignore others and tear down process even if in thread 2023-07-17 13:43:43 -04:00
Kirill Bulatov f5eac82e81 Reload menu after keybindings change 2023-07-17 12:30:42 +03:00
Alex ViscreanuandMikayla Maki c7669317ec feat(workspace): allow alternative actions to open files and symbols in split
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
2023-07-14 21:49:15 +02:00
Max Brunsfeld 21e7e35e73 Include newlines in between combined injection ranges on different lines 2023-07-14 09:25:56 -07:00
Max Brunsfeld 2f2ef7c165 Use workspace dependencies for tree-sitter grammars 2023-07-14 09:25:51 -07:00
Max Brunsfeld 2e2333107a Find the layer with the smallest enclosing node in language_scope_at 2023-07-14 09:11:56 -07:00
Mikayla Maki f1b034d4f8 fmt 2023-07-13 22:32:29 -07:00
Mikayla Maki ff8a89a075 Refine svelte queries to work with zed-style highlights
Bump scheme dependency:
2023-07-13 22:30:58 -07:00
Mikayla Maki 1424a7a56a Add svelte language server
Add svelte tree sitter
Add svelte config file
Add svelte highlighting
2023-07-13 21:43:53 -07:00
Joseph T. Lyons af9506b21d v0.96.x dev 2023-07-12 13:30:28 -04:00
Max Brunsfeld 4a4dd39875 Fix TSX embedding query 2023-07-11 15:02:19 -07:00
KCaverly 2ca4b3f4cc cleaned up warnings and added javascript 2023-07-11 16:41:08 -04:00
KCaverly debe6f107e updated embedding queries for tsx and typescript 2023-07-11 16:22:40 -04:00
KCaverly dd0dbdc5bd brought up to speed with main 2023-07-11 14:50:48 -04:00
KCaverly 3f5667b101 merged main 2023-07-07 14:24:29 -04:00
Julia caa29d57c2 Avoid checking for duplicate instance when local DB is disabled 2023-07-07 14:20:39 -04:00
Julia b70b76029e Use different port and handshake for different release channels 2023-07-07 14:20:39 -04:00
Julia 66bf56fc4f Prevent duplicate instances by coordinating via a socket 2023-07-07 14:19:44 -04:00
KCaverly 6f1e988cb9 updated embedding treesitter query for python 2023-07-06 16:36:28 -04:00
Joseph T. Lyons 6a15ae9c01 v0.95.x dev 2023-07-05 14:17:37 -04:00
Kirill BulatovandMikayla Maki 4c51ab8a25 Accept null as a valid action, to disable a keystroke
co-authored-by: Mikayla Maki <mikayla@zed.dev>
2023-07-04 21:11:28 +03:00
Mikayla Maki d2127825e3 Add first-pass sound support to Zed 2023-07-03 13:30:04 -07:00
Mikayla Maki 138de37cbf Add basic sound handling infrastructure 2023-06-30 16:10:49 -07:00
KCaverlyandmaxbrunsfeld 36907bb4dc updated vector store indexing to only use languages with an embedding.scm treesitter query
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-06-30 16:14:11 -04:00
KCaverly 1d737e490b Merge branch 'main' of github.com:zed-industries/zed into vector_store 2023-06-30 09:58:13 -04:00
Julia 2ed0284d49 Stub out for language plugin 2023-06-28 17:06:50 -04:00
Julia 48bed2ee03 Merge branch 'main' into fix-broken-lsp-installations 2023-06-28 16:46:06 -04:00
Julia db2b3e47bc Reinstall Node whenever a NodeRuntime operation has serious error 2023-06-28 16:43:45 -04:00
KCaverly 3ca3de807c Merge branch 'main' of github.com:zed-industries/zed into vector_store 2023-06-28 14:42:24 -04:00
Joseph T. Lyons 6c53653831 v0.94.x dev 2023-06-28 12:23:42 -04:00
Mikayla Maki ce52d90a9d Collab UI v2 (#2618)
This PR implements
https://www.figma.com/file/pLq7dvhx2mFeWFOedXpUQ5/Project-%E2%80%93-Collaboration-UI?type=design&node-id=666%3A8610&t=XFGk6KEtTCFXBvCQ-1

Release notes:
- [x] Redesigned collaboration UI
- [x] Added voice support
2023-06-28 09:14:39 -07:00
Julia 1882ce48be Handle new elixir-ls release zip name 2023-06-28 10:22:39 -04:00
Antonio ScandurraandNathan Sobo 2cb4616609 Enable assistant on stable
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-06-28 12:09:49 +02:00
Nathan SoboandAntonio Scandurra 8f8a99d788 Bind cmd-? to assistant::toggle_focus
Bypass system help menu shortcut at the app delegate level to achieve this.

Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-28 11:43:24 +02:00
Max Brunsfeld fc02381196 Fix bugs in handling combined injections exposed by HEEx (#2652)
Fixes
https://linear.app/zed-industries/issue/Z-2481/heex-this-snippet-triggers-a-hard-crash

Release Notes:

- Fixed a crash that would sometimes occur when editing a HEEx file
([#1703](https://github.com/zed-industries/community/issues/1703)).
2023-06-27 15:17:29 -07:00
Max Brunsfeld 81c26cfea0 Fix bugs in handling combined injections exposed by HEEx 2023-06-27 15:08:26 -07:00
Piotr Osiewicz 625814d30a Merge branch 'main' into collab-titlebar-2 2023-06-27 15:40:43 +02:00
Joseph T. Lyons c0fb98cb3f Factor out key name 2023-06-26 13:31:41 -04:00
Joseph T. Lyons 8d1cc8815b Merge branch 'main' into add-installation-id-to-panic-events 2023-06-26 13:27:14 -04:00
Julia 2a8d1343d6 Add installation test binaries for all remaining adapters 2023-06-26 11:54:20 -04:00
Julia 5632f24d24 Handle new elixir-ls release zip name 2023-06-26 10:18:30 -04:00
Joseph T. LyonsandJulia 7d065fa14e Add installation_id to panic events
Co-Authored-By: Julia <30666851+ForLoveOfCats@users.noreply.github.com>
2023-06-23 21:02:01 -04:00
KCaverly dd309070eb open ai indexing on open for rust files 2023-06-22 16:50:07 -04:00
Piotr Osiewicz 76366422a6 Merge branch 'main' into collab-titlebar-2 2023-06-22 13:48:16 +02:00
Nate Butler 6ab0143469 Split Interactive into Interactive and Toggleable (#2628)
This is a part of the intensity driven theme rewrite. 

It introduces the `toggle` and `interactive` helper functions to build
Toggle<T> and Interactive<T> styles for interactive elements in the
theme.

This PR also removes the `theme_testbench` crate and related actions.

Huge thanks to @osiewicz and @mikayla-maki for pushing this forward 🙏🏽

Release Notes:

- Updated the style of many interactive elements.
2023-06-21 15:03:08 -04:00
KCaverly 80a894b829 WIP: started work on vector store db, by walking project worktrees.\n\nCo-Authored-By: Max <max@zed.dev> 2023-06-21 14:53:08 -04:00
Joseph T. Lyons cc027dc626 v0.93.x dev 2023-06-21 13:59:07 -04:00
Piotr Osiewicz 86506a89ab Remove theme_testbench 2023-06-21 19:11:55 +02:00