Commit log

6c0f65c Avoid inserting redundant newlines

Click to expand commit body
Co-Authored-By: Piotr Osiewicz <piotr@zed.dev>
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>

Nathan Sobo , Piotr Osiewicz , and Antonio Scandurra created

ef6cb11 Emit editor event whether we insert a newline or not.

Piotr Osiewicz created

ae68be6 Move share button to the right hand side

Piotr Osiewicz created

d079a0e Render user avatar only if an user is not in a call

Piotr Osiewicz created

83c1bb0 Add background to user avatar

Piotr Osiewicz created

433c5d3 Add Sign in button for an unregistered user

Piotr Osiewicz created

092cf93 Move zed actions to zed-actions

Piotr Osiewicz created

4b87ce8 add zed-actions crate

Piotr Osiewicz created

0fe65b9 Remove user avatar from dropdown menu

Click to expand commit body
Add new options in context menu

Piotr Osiewicz created

5f7fdd2 Fix compile error (use of moved value)

Piotr Osiewicz created

47ef800 WIP: Add face to right hand menu

Mikayla Maki created

aac71fd Remove border from sign in button

Click to expand commit body
Co-authored-by: Piotr <piotr@zed.dev>

Mikayla Maki and Piotr created

8235d78 Voice support (#2602)

Click to expand commit body
This PR adds APIs for voice chat to our live kit integration

Release Notes:

- N/A

Mikayla Maki created

d7dbc3b Implement test stubs

Mikayla Maki created

8592208 Fix failure to upload panics when multiple panics happen at the same time (#2616)

Click to expand commit body
When multiple panics occur at the same time (usually because one thread
panics, and another thread joins it), multiple panic JSON objects can
get written to the same panic file. The resulting file won't be valid
JSON.

This PR addresses that problem via two changes:
* Format panic files as single-line JSON objects
* When a panic file  isn't valid JSON, try taking the first line

In the future, we could try combining all of the backtraces, but for
now, I just want to avoid a problem of not reporting a panic at all.

Release Notes:

- Fixed a problem with Zed's internal crash reporting.

Max Brunsfeld created

b927092 Focus on toggle dock (#2612)

Click to expand commit body
This PR updates some dock behaviors. Now the toggle-dock commands
(cmd-j/b/r) also toggle focus. This also adds zoom serialization to the
docks.

Release Notes:
- Bug fix: Toggle dock commands (cmd-j/b/r) now move focus 
- Bug fix: Dock zoom is now restored with the rest of the workspace

Mikayla Maki created

e525706 Fix failure to upload panics when multiple panics happen at the same time

Max Brunsfeld created

b156644 fixed tests to match new behavior

Mikayla Maki created

b7e3ac5 Fix bug on workspace deserialization

Mikayla Maki created

b9cb594 Fix fmt

Mikayla Maki created

5f93a4e Don't rely on debug symbols for panic reporting (#2615)

Click to expand commit body
This fixes a regression introduced in
https://github.com/zed-industries/zed/pull/2560, where panic reports did
not include backtraces. The problem was that in that PR, I assumed we
could retrieve file paths for symbols in our backtraces. But actually,
that functionality only works when the app is built locally, and a
`.dSYM` file can be magically found by the OS. We don't ship those dSYM
files with Zed, so panic symbols do not have file paths available.

Panic backtraces will still be more useful and less noisy than before
though: we will strip out frames for which we don't have symbol names,
and remove leading panic-handling stack frames from the backtraces.

Release Notes:

- N/A

Max Brunsfeld created

e7e0f21 Don't rely on debug symbols for panic reporting

Max Brunsfeld created

abe5ecc Actually fully start reinstalled language server

Julia created

f81ccbd Setup C adapter with test binary

Julia created

4d24eae Actually check and reinstall broken server

Julia created

bca625a Many steps toward validating and reinstalling server after failure

Julia created

ec0409a Detect LSP startup failure

Julia created

0a8d67c Activate screen-sharing when leader activates a panel (#2614)

Click to expand commit body
Fixes
https://linear.app/zed-industries/issue/Z-1875/screen-sharing-tab-is-not-activated-when-leader-is-on-a-panel

Release Notes:

- Fixed a bug that caused followers to not see the leader's screen when
they activated a panel.

Antonio Scandurra created

f068712 Activate screen-sharing when leader activates a panel

Antonio Scandurra created

8c6ba13 Never insert an empty prefix when splitting a message with a non-empty range

Click to expand commit body
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
Co-Authored-By: Piotr Osiewicz <piotr@zed.dev>

Nathan Sobo , Antonio Scandurra , and Piotr Osiewicz created

0863486 Add internal markdown docs (#2598)

Click to expand commit body
This PR adds internal docs directly to the codebase.

There are a few goals here:

- Make it easier to document our internal processes
- Put the documentation where people already are
- Allow changes to be in sync with PRs
- Make it easier for people coming in to discover our docs and onboard
faster.

With 2 more people joining us in the next few weeks it would be great to
get these up.

Release Notes:

- N/A (No public facing changes)

Nate Butler created

87c3216 Fix design tools link

Nate Butler created

5149db6 Update docs/index.md

Click to expand commit body
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>

Nate Butler and Piotr Osiewicz created

21e8e87 Allow splitting of messages using `shift-enter`

Antonio Scandurra created

86247bf editor: Highlight search results

Click to expand commit body
Z-1292

Piotr Osiewicz created

6662066 Add zoom serialization to the workspace

Mikayla Maki created

790d995 Add focusing into the toggle dock commands

Mikayla Maki created

a4b009a Update test-app sound

Mikayla Maki created

ce3847c WIP: Use audio support to send live data

Mikayla Maki created

bbf05c8 Wire in audio APIs from swift

Click to expand commit body
co-authored-by: nathan <nathan@zed.dev>

Mikayla Maki and nathan created

8ccb750 Add entitlements file to bundle step (#2611)

Click to expand commit body
This completes the bundle changes that will be needed to access voice,
as well as adds permissions for accessing other MacOS services, the
camera, and the necessary permissions for plugins. This was developed by
combining the entitlements of iTerm and VSCode, cross-referenced with
the entitlements of Firefox. 

Release Notes:

- Fixed a bug in enabling authorization for macOS services (preview
only)

Mikayla Maki created

b481e38 Update bundle

Mikayla Maki created

493e489 Add entitlements file to bundle step

Mikayla Maki created

2e723ca v0.92.x dev

Joseph Lyons created

75b1f60 Add UsageDescriptions to Info.plist (#2609)

Click to expand commit body
This updates our dependency on cargo-bundle to point at a fork I've
created that adjusts the latest version's behavior to work for our use
case. This PR also updates the Zed Info.plist to include the following
keys:

- NSSystemAdministrationUsageDescription
- NSAppleEventsUsageDescription
- NSBluetoothAlwaysUsageDescription
- NSCalendarsUsageDescription
- NSCameraUsageDescription
- NSContactsUsageDescription
- NSLocationAlwaysUsageDescription
- NSLocationUsageDescription
- NSLocationWhenInUseUsageDescription
- NSMicrophoneUsageDescription
- NSSpeechRecognitionUsageDescription
- NSRemindersUsageDescription

Release Notes:

- Bug fix: Allow applications run via the Zed terminal to request
authorization for macOS services (e.g. microphone and camera)

Mikayla Maki created

2b8b954 Overhaul assistant panel (#2610)

Click to expand commit body
Closes
https://linear.app/zed-industries/issue/Z-2368/use-a-different-icon-for-the-assistant-panel
Closes
https://linear.app/zed-industries/issue/Z-2363/ship-the-assistant-only-on-preview
Closes
https://linear.app/zed-industries/issue/Z-2331/scrolling-makes-it-hard-to-read
Closes
https://linear.app/zed-industries/issue/Z-2306/allow-undo-and-collaboration-in-assistant

This pull request is a significant overhaul of the assistant panel,
which now uses a simple `Buffer` as opposed to a `MultiBuffer` to show
messages. Specifically, we track the start of each message with an
anchor located right after the newline (or `Anchor::MIN` for the first
message). When the anchor becomes invalid (that is, the newline is
deleted), we merge the message with the preceding ones. Crucially,
messages don't actually get deleted so that, if the newline anchor
becomes valid again (such as when undoing/redoing), we can restore the
messages as well.

As part of this overhaul, we are also improving the scrolling behavior
to maintain the viewport stable only when editing or moving the cursor,
but otherwise leave the scroll position unchanged when manually
scrolling up or down.

Note that with these changes, we are limiting access to the assistant to
users on preview (and dev), as we want to polish the behavior a little
more before shipping to the general public. Users on stable will still
be able to see the default settings/keybindings of the assistant, but I
think that's okay, as they won't be able to do anything with them.

Release Notes:

- Added support for undo/redo in the assistant (preview-only)
- Improved the scrolling behavior of the assistant when it was
generating responses. Now Zed will keep the viewport stable only when
editing or moving the cursor, but otherwise leave the scroll position
unchanged when manually scrolling up or down (preview-only)
- Changed the icon of the assistant panel (preview-only)

**Note for @JosephTLyons: given that we're feature flagging this, let's
make sure things on stable look reasonable and work correctly. Things to
look out for: ensure a stock installation works, changing the settings
on stable works, changing the keybinding on stable works.**

Antonio Scandurra created

4efe62b Use robot icon for assistant to prevent confusion with conversations

Antonio Scandurra created

049c987 Avoid loading the assistant panel on stable

Antonio Scandurra created

56b0bf8 Save cursor scroll position when the editor is auto-scrolled

Antonio Scandurra created

1aa1774 Avoid auto-scrolling the editor when inserting/removing headers

Antonio Scandurra created