Commit log

2b3d06d zed 0.165.3

Peter Tripp created

ec23cbd Catch panic from oo7 when reading credentials (#21617)

Cole Miller created

9ba6e1b markdown preview: Fix panic when parsing empty image tag (#21616)

Click to expand commit body
Closes #21534

While investigating the panic, I noticed that the code was pretty
complicated and decided to refactor parts of it to reduce redundancy.

Release Notes:

- Fixed an issue where the app could crash when opening the markdown
preview with a malformed image tag

Bennet Bo Fenner created

76ba59a Fix incorrect language selected in language selector (#21648)

Click to expand commit body
Due to filtering after enumeration, initial candidate ids are assigned
incorrectly. This later causes the wrong item to be picked up when
accessed via index in the vector.

tims created

258fb33 Bump to 0.165.2 for @osiewicz

Zed Bot created

6ac691b Fix snippet completion will be trigger, when certain symbols are pressed (cherry-pick #21578) (#21585)

Click to expand commit body
Cherry-picked Fix snippet completion will be trigger, when certain
symbols are pressed (#21578)

Closes #21576

This issue is caused by the fuzzy matching for snippets I added
[here](https://github.com/zed-industries/zed/pull/21524). When
encountering symbols such as `:`, `(`, `.`, etc., the `last_word`
becomes empty, which results in an empty string being passed to
`fuzzy_match`, leading to the return of all templates.

This fix adds an early return when `last_word` is empty.

Release Notes:

- N/A

Co-authored-by: tims <0xtimsb@gmail.com>

gcp-cherry-pick-bot[bot] and tims created

7cd2f71 Bump to 0.165.1 for @cole-miller

Zed Bot created

771ee7a Revert "Open folds containing selections when jumping from multibuffer (#21433)" (cherry-pick #21566) (#21569)

Click to expand commit body
Cherry-picked Revert "Open folds containing selections when jumping from
multibuffer (#21433)" (#21566)

This reverts commit dc32ab25a0f76280ff0f1485333a729523840e27.

This has been causing panics, backing it out while figuring out what's
up.

Release Notes:

- N/A

Co-authored-by: Cole Miller <cole@zed.dev>

gcp-cherry-pick-bot[bot] and Cole Miller created

14c0a9d v0.165.x preview

Peter Tripp created

706372f title_bar: Add show_user_picture setting to let users hide their profile picture (#21526)

Click to expand commit body
Fixes #21464

Closes #21464

Release Notes:

- Added `show_user_picture` setting (default: true) to allow users to
hide their profile picture in titlebar.

Piotr Osiewicz created

5948ea2 Configure Highlight settings on yank vim (#21479)

Click to expand commit body
Release Notes:

- Add settings / config variables to control `highlight_on_yank` or
`highlight_on_copy`

---------

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

Vedant Matanhelia and Conrad Irwin created

207eb51 assistant2: Style inline code in Markdown (#21536)

Click to expand commit body
This PR adds some styling for inline code within the messages to
differentiate them from the surrounding text:

<img width="1138" alt="Screenshot 2024-12-04 at 10 58 14 AM"
src="https://github.com/user-attachments/assets/3bb92711-e2f7-454a-b4be-449c6a9bf591">


Release Notes:

- N/A

Marshall Bowers created

0ee99c6 context_server: Add missing types for MCP spec to protocol 2024-11-05 (#21498)

Click to expand commit body
This commit syncs missing types for the mcp spec 2024-11-05.

Release Notes:

- N/A

David Soria Parra created

d8732ad Add fuzzy matching for snippets completions (#21524)

Click to expand commit body
Closes #21439

This PR uses fuzzy matching for snippet completions instead of
fixed-prefix matching. This mimics the behavior of VSCode.

<img
src="https://github.com/user-attachments/assets/68537114-c5cf-4e4d-bc5c-4bb69ce947e5"
alt="fuzzy" width="450px" />

Release Notes:

- Improved suggestions for snippets.

tims created

196fd65 Fix panic folding in multi-buffers (#21511)

Click to expand commit body
Closes #19054

Rename `max_buffer_row()` to `widest_line_number()` to (hopefully)
prevent
people assuming it means the same as `max_point().row`.

Release Notes:

- Fixed a panic when folding in a multibuffer

Conrad Irwin created

e231321 Fix panic in update_ime_position (#21510)

Click to expand commit body
This can call back into the app, so must be done when the platform lock
is not
held.

Release Notes:

- Fixes a (rare) panic when changing tab

Conrad Irwin created

8f08787 Implement Helix Support (WIP) (#19175)

Click to expand commit body
Closes #4642 

- Added the ability to switch to helix normal mode, with an additional
helix visual mode.
- <kbd>ctrl</kbd><kbd>h</kbd> from Insert mode goes to Helix Normal
mode. <kbd> i </kbd> and <kbd> a </kbd> to go back.
- Need to find a way to perform the helix normal mode selection with
<kbd> w </kbd>, <kbd>e </kbd>, <kbd> b </kbd> as a first step. Need to
figure out how the mode will interoperate with the VIM mode as the new
additions are in the same crate.

Waleed Dahshan created

c5d15fd Add FoldFunctionBodies editor action (#21504)

Click to expand commit body
Related to #19424

This uses the new text object support, so will only work for languages
that have `textobjects.scm`. It does not integrate with
indentation-based folding for now, and the syntax-based folds don't have
matching fold markers in the gutter (unless they are folded).

Release Notes:

- Add an editor action to fold all function bodies

Co-authored-by: Conrad <conrad@zed.dev>

Cole Miller and Conrad created

ce5f492 Update rustls and sqlx (#21506)

Click to expand commit body
Release Notes:

- N/A

Cole Miller created

3019960 markdown: Make `cx` the last parameter to `Markdown::new_text` (#21497)

Click to expand commit body
This PR is a follow-up to
https://github.com/zed-industries/zed/pull/21487 to make sure that the
`cx` is the last parameter to `Markdown::new_text` as well.

Release Notes:

- N/A

Marshall Bowers created

9f459ba assistant2: Render messages as Markdown (#21496)

Click to expand commit body
This PR updates Assistant 2 to render the messages in the thread as
Markdown:

<img width="1138" alt="Screenshot 2024-12-03 at 6 09 27 PM"
src="https://github.com/user-attachments/assets/c1c44fde-1efb-43cf-b9c9-768e6974c753">

Release Notes:

- N/A

Marshall Bowers created

ecaf445 Fix Perplexity extension URL (#21495)

Peter Tripp created

dc32ab2 Open folds containing selections when jumping from multibuffer (#21433)

Click to expand commit body
When searching within a single buffer, activating a search result causes
any fold containing the result to be unfolded. However, this didn't
happen when jumping to a search result from a project-wide search
multibuffer. This PR fixes that.

Release Notes:

- Fixed folds not opening when jumping from search results multibuffer

Cole Miller created

aca23da assistant2: Render messages in the thread using a `list` (#21491)

Click to expand commit body
This PR updates the rendering of the messages in the current thread to
use a `gpui::list`.

Release Notes:

- N/A

Marshall Bowers created

db34f29 vim: Add == and fix = in the status bar (#21490)

Click to expand commit body
cc @maxbrunsfeld

Release Notes:

- vim: Add ==

Conrad Irwin created

1fccda7 Add text objects to extensions (#21488)

Click to expand commit body
Release Notes:

- Adds textobject support to erlang, haskell, lua, php, prisma, proto,
toml, and zig

Conrad Irwin created

463c99b Fix script/get-released-version (#21489)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

88b0d3c markdown: Make `cx` the last parameter to the constructor (#21487)

Click to expand commit body
I noticed that `Markdown::new` didn't have the `cx` as the final
parameter, as is conventional.

This PR fixes that.

Release Notes:

- N/A

Marshall Bowers created

165d50f Add openbsd netcat to script/linux (#21478)

Click to expand commit body
- Follow-up to: https://github.com/zed-industries/zed/pull/20751

openbsd-netcat is required for interactive SSH Remoting prompts
(password, passphrase, 2fa, etc).

Peter Tripp created

731e6d3 Revert "macos: Add default keybind for ctrl-home / ctrl-end (#21007)" (#21476)

Click to expand commit body
This reverts commit 614b3b979b7373aaa6dee84dfbc824fce1a86ea8.

This conflicts with the macOS `ctrl-fn-left/right` bindings for moving
windows around (new in Sequoia).

If you want these use:
```
  {
    "context": "Editor",
    "bindings": {
      "ctrl-home": "editor::MoveToBeginning",
      "ctrl-end": "editor::MoveToEnd"
    }
  },
```

Release Notes:

- N/A

Conrad Irwin created

b28287c Fix panic in remove_item (#21480)

Click to expand commit body
In #20742 we added a call to remove_item that retain an item index over
an
await point. This led to a race condition that could panic if another
tab was
removed during that time. (cc @mgsloan)

This changes the API to make it harder to misuse.

Release Notes:

- Fixed a panic when closing tabs containing new unsaved files

Conrad Irwin created

492ca21 Fix panic in autoclosing (#21482)

Click to expand commit body
Closes #14961

Release Notes:

- Fixed a panic when backspacing at the start of a buffer with
`always_treat_brackets_as_autoclosed` enabled.

Conrad Irwin created

afb253b ui: Ensure `Label` with `single_line` set does not wrap (#21444)

Click to expand commit body
Release Notes:

- N/A

---

Split from #21438, this change for make sure the `single_line` mode
Label will not be wrap.

---------

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>

Jason Lee and Marshall Bowers created

41a973b Publish theme json schema v0.2.0 (#21428)

Click to expand commit body
Fix theme json schema so `./script/import-themes print-schema` works again
Update schema to reflect current structs
([diff](https://gist.github.com/notpeter/26e6d0939985f542e8492458442ac62a/revisions?diff=unified&w=))

https://zed.dev/schema/themes/v0.2.0.json

Peter Tripp created

75c9dc1 Add textobjects queries (#20924)

Click to expand commit body
Co-Authored-By: Max <max@zed.dev>

Release Notes:

- vim: Added motions `[[`, `[]`, `]]`, `][` for navigating by section,
`[m`, `]m`, `[M`, `]M` for navigating by method, and `[*`, `]*`, `[/`,
`]/` for comments. These currently only work for languages built in to
Zed, as they are powered by new tree-sitter queries.
- vim: Added new text objects: `ic`, `ac` for inside/around classes,
`if`,`af` for functions/methods, and `g c` for comments. These currently
only work for languages built in to Zed, as they are powered by new
tree-sitter queries.

---------

Co-authored-by: Max <max@zed.dev>

Conrad Irwin and Max created

c443307 Fix ctrl-alt-X shortcuts (#21473)

Click to expand commit body
The macOS input handler assumes that you want to insert control
sequences when
you type ctrl-alt-X (you probably don't...).

Release Notes:

- (nightly only) fix ctrl-alt-X shortcuts

Conrad Irwin created

2dd5138 docs: Add anchor links for language-specific settings (#21469)

Peter Tripp created

a464474 Properly handle opening of file-less excerpts (#21465)

Click to expand commit body
Follow-up of https://github.com/zed-industries/zed/pull/20491 and
https://github.com/zed-industries/zed/pull/20469
Closes https://github.com/zed-industries/zed/issues/21369

Release Notes:

- Fixed file-less excerpts always opening instead of activating

Kirill Bulatov created

a0f2c07 Debounce diagnostics status bar updates (#21463)

Click to expand commit body
Closes https://github.com/zed-industries/zed/pull/20797

Release Notes:

- Fixed diagnostics status bar flashing when typing

Kirill Bulatov created

1270ef3 Enable toolchain venv in new terminals (#21388)

Click to expand commit body
Fixes part of issue #7808 

> This venv should be the one we automatically activate when opening new
terminals, if the detect_venv setting is on.

Release Notes:

- Selected Python toolchains (virtual environments) are now automatically activated in new terminals.

---------

Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>

Sebastian Nickels and Piotr Osiewicz created

a76cd77 Disable hunk diff arrow buttons when there's only one hunk (#21437)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/20817

| One hunk | Multiple hunks |
|--------|--------|
| <img width="800" alt="Screenshot 2024-12-03 at 09 42 49"
src="https://github.com/user-attachments/assets/7c2ff80a-d4d9-4a74-84b8-891fadfd4e6c">
| <img width="800" alt="Screenshot 2024-12-02 at 23 36 38"
src="https://github.com/user-attachments/assets/60ea94b8-0b23-43a2-afad-b816b4645d1f">
|

Release Notes:

- Fixed showing prev/next hunk navigation buttons when there is only one
hunk

Danilo Leal created

a8c7e61 Fix AI Context menu text wrapping causing overlap (#21438)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/20678

| Before | After |
| --- | --- |
| <img width="672" alt="SCR-20241203-jreb"
src="https://github.com/user-attachments/assets/411ba2a6-712f-4ab7-a320-12ac9a35c1e1">
| <img width="771" alt="SCR-20241203-jwhe"
src="https://github.com/user-attachments/assets/022c8ee9-4089-4c09-aa4b-12a0f5528822">
|

Release Notes:

- Fixed AI Context menu text wrapping causing overlap.

Also cc #21409 @WeetHet @osiewicz to use `Label`, this PR has been fixed
`Label` to ensure `whitespace_nowrap` when use `single_line`.

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>

Jason Lee and Danilo Leal created

2b14378 Improve audio files icon (#21441)

Click to expand commit body
It took me a couple of minutes of staring at this speaker icon to figure
out it was a speaker! I even researched whether the `.wav` file type had
a specific icon, given I thought it was a specific triangle of sorts 😅
I'm sensing audio waves, at this size, will be easier to parse.

Release Notes:

- N/A

Danilo Leal created

b53b2c0 Run dependency review for pull requests only (#21432)

Click to expand commit body
This was an oversight in the original PR, dependency-review-action won't
work properly for `push` events
([example](https://github.com/zed-industries/zed/actions/runs/12130053580/job/33819624076)).

Release Notes:

- N/A

Cole Miller created

e1c509e Check for vulnerable dependencies in CI (#21424)

Click to expand commit body
This PR adds GitHub's dependency review action to CI, to flag PRs that
introduce new Cargo.lock entries for vulnerable crates according to the
GHSA database.

An alternative would be to run `cargo audit`, which checks against the
RustSec database. The state of synchronization between these two
databases seems a bit messy, but as far as I can tell GHSA has most
recent RustSec advisories on file, while RustSec is missing a larger
number of recent GHSA advisories.

The dependency review action should be smart enough not to flag PRs
because an untouched entry in Cargo.lock has a new advisory.

I've turned off the "license check" functionality since we have a
separate CI step for that.

Release Notes:

- N/A

Cole Miller created

f4dbcb6 Use explicit sort order instead of comparison impls for gpui prims (#21430)

Click to expand commit body
Found this while looking into adding support for the Surface primitive
on Linux, for rendering video shares. In that case it would be
expensive to compare images for equality. `Eq` and `PartialEq` were
being required but not used here due to use of `Ord` and `PartialOrd`.

Release Notes:

- N/A

Michael Sloan created

579bc8f Upgrade repl dependencies (#21431)

Click to expand commit body
Bump dependencies for jupyter packages. cc @maxdeviant 

Release Notes:

- N/A

Kyle Kelley created

7c994cd Add AutoIndent action and '=' vim operator (#21427)

Click to expand commit body
Release Notes:

- vim: Added the `=` operator, for auto-indent

Co-authored-by: Conrad <conrad@zed.dev>

Max Brunsfeld and Conrad created

f3140f5 assistant2: Wire up error messages (#21426)

Click to expand commit body
This PR wires up the error messages for Assistant 2 so that they are
shown to the user:

<img width="1138" alt="Screenshot 2024-12-02 at 4 28 02 PM"
src="https://github.com/user-attachments/assets/d8a5b9bd-0cef-4304-b561-b2edadbc70ef">
<img width="1138" alt="Screenshot 2024-12-02 at 4 29 09 PM"
src="https://github.com/user-attachments/assets/0dd70841-0d5a-4de6-bebe-82c563246b65">
<img width="1138" alt="Screenshot 2024-12-02 at 4 32 49 PM"
src="https://github.com/user-attachments/assets/a8838866-fad1-43a9-8935-490dc1936016">

@danilo-leal I kept the existing UX from Assistant 1, as I didn't see
any errors in the design prototype, but we can revisit if another
approach would work better.

Release Notes:

- N/A

Marshall Bowers created

72afe68 assistant: Use a smaller icon for the "New Chat" button (#21425)

Click to expand commit body
Assistant new chat icon is slightly larger than editor pane new icon.

Changes:
Adds `IconSize::Small` to assistant default size new chat icon, not
really noticeable, but matches the new icon in editor pane, and the
assistant dropdown menu that have icon size small.

|old|new|
|---|---|

|![image](https://github.com/user-attachments/assets/cbef5054-a465-4957-9409-b4a73e703363)|![image](https://github.com/user-attachments/assets/baee66ea-76d6-43b4-a4b9-ead34991ff85)|

Release Notes:

- N/A

yoleuh created