Commit log

28c5e33 JSON: Fix validation being disabled following #13459 (#13770)

Click to expand commit body
The problem with #13459 was the bump to a newer JSON LS version, which
requires explicitly opting into validation.

Release Notes:

- Fixed JSON validation being disabled by default (Preview only)

Piotr Osiewicz created

5c7a8f7 Allow extensions to define providers for indexing docs (#13755)

Click to expand commit body
This PR provides extensions with the ability to define providers for
indexing docs.

Release Notes:

- N/A

Marshall Bowers created

b7cb238 Log extension queries to axiom (#13752)

Click to expand commit body
Log extension queries to axiom. Longer term it'd be nice to get this in
clickhouse, but that requires a bit more work.

Release Notes:

- N/A

Conrad Irwin created

7db6854 Update Platform Controls (#13751)

Click to expand commit body
Continuing from #13597, this PR refactors platform controls to extract a
generic set of platform controls that can be used for any platform that
does not define it's own/we don't use the system ones.

In the future, these controls will likely be used as a fallback on
windows as well when the windows icon font isn't available.

Release Notes:

- Added updated window controls on Linux

Nate Butler created

eb845ee Send telemetry events for pnpm usage (#13748)

Click to expand commit body
This PR adds telemetry events for pnpm usage, similar to what we did for
Yarn in #12785.

Seems like useful information to have.

Release Notes:

- N/A

Marshall Bowers created

8ea2bd4 Organize dependencies in workspace `Cargo.toml` (#13746)

Click to expand commit body
This PR does some organization in the workspace's `Cargo.toml`.

Namely, ensuring the dependency lists of internal and external
dependencies remain separate.

Release Notes:

- N/A

Marshall Bowers created

7460381 Start work on genericizing `/rustdoc` (#13745)

Click to expand commit body
This PR begins the process of making the backing infrastructure for the
`/rustdoc` command more generic such that it can be applied to
additional documentation providers.

In this PR we:

- Rename the `rustdoc` crate to `indexed_docs` as a more general-purpose
name
- Start moving rustdoc-specific functionality into
`indexed_docs::providers::rustdoc`
- Add an `IndexedDocsRegistry` to hold multiple `IndexedDocsStore`s (one
per provider)

We haven't yet removed the rustdoc-specific bits in the `DocsIndexer`.
That will follow soon.

Release Notes:

- N/A

Marshall Bowers created

eab98eb prisma: Bump to v0.0.3 (#13739)

Click to expand commit body
This PR bumps the Prisma extension to v0.0.3.

Changes:

- https://github.com/zed-industries/zed/pull/13738

Release Notes:

- N/A

Marshall Bowers created

6eda9c9 prisma: Fix autocompletion adding word character (#13738)

Click to expand commit body
Fixes https://github.com/zed-industries/zed/issues/13662.

Release Notes:

- N/A

Krzysztof Witkowski created

8dd7c2c Fix typo in show_whitespaces docs in default setting (#13735)

Click to expand commit body
Release Notes:

- N/A

Andrei N. Onea created

3bbe574 Introduce a New `assistant: insert into editor` Action (#13467)

Click to expand commit body
This implements the functionality (paired with @as-cii), but we weren't
sure what the clearest name would be for the action. It's essentially
the inverse of "quote selection" - but what's the opposite of quoting
the selection?

One idea:
* Rename "quote selection" to "Insert **into** assistant"
* Name this "Insert **from** assistant"

Release Notes:

- Added action to insert from assistant into editor (default keybinding:
`cmd-<` on macOS, `ctrl-<` on Linux)

---------

Co-authored-by: Antonio Scandurra <me@as-cii.com>
Co-authored-by: Bennet <bennet@zed.dev>

Richard Feldman , Antonio Scandurra , and Bennet created

51ee60b assistant: Feature flag terminal inline assistant (#13732)

Click to expand commit body
This PR adds a feature flag for the terminal inline assistant because we
want to keep it internal for now.

Release Notes:

- N/A

Bennet Bo Fenner created

193be27 Fix focusing terminal when running tasks (#13675)

Click to expand commit body
After removing the unnecessary reveal strategy handling:



[focus-task-fix.webm](https://github.com/zed-industries/zed/assets/39293/93afd332-8f22-47f5-914d-5bc040e24029)

When running tasks, the terminal was not focused when the terminal had
to be replaced. This is because the code for revealing the terminal had
been executed twise: once inside `replace_terminal` function and also at
the end of `spawn_task`.

Fixes #13674

Release Notes:

- Fixed focusing the terminal when re-spawning a task
([#13674](https://github.com/zed-industries/zed/issues/13674))

Aleksei Gusev created

ce48555 Update `.mailmap` (#13724)

Click to expand commit body
This PR updates the `.mailmap` file to merge some more commit authors.

Release Notes:

- N/A

Marshall Bowers created

ecd9422 gleam: Add `/gleam-docs` (#13721)

Click to expand commit body
This PR adds a `/gleam-docs` slash command to the Gleam extension, which
can be used to fetch docs from HexDocs.

Release Notes:

- N/A

Marshall Bowers created

0eb26d2 Fix auto-rename ranges with special characters (#13719)

Click to expand commit body
Release Notes:

- Fixed ([#13551](https://github.com/zed-industries/zed/issues/13551)).

Krzysztof Witkowski created

3a43adb Publish `html_to_markdown` (#13718)

Click to expand commit body
This PR updates the `html_to_markdown` crate with the necessary changes
to publish it to crates.io.

Publishing it makes it available for use within extensions when
implementing functionality for the Assistant.

Release Notes:

- N/A

Marshall Bowers created

3419f5f zed_extension_api: Add `fetch` (#13716)

Click to expand commit body
This PR adds a new `fetch` function to the `zed_extension_api` to allow
fetching a URL through the Wasm host.

Currently we only support GET requests and return the response body as a
string.

Release Notes:

- N/A

Marshall Bowers created

e7214a4 Update linux.md

Mikayla Maki created

c9ac7b8 assistant: Remove unused `NowPlaceholder` (#13713)

Click to expand commit body
This PR removes the `NowPlaceholder` component, as it was no longer
used.

Release Notes:

- N/A

Marshall Bowers created

e243856 Add terminal inline assistant (#13638)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Antonio <antonio@zed.dev>

Bennet Bo Fenner and Antonio created

c516b8f zig: Revert `464a4439f7c71e867da481e99e22ad99cc23807e` (#13712)

Click to expand commit body
This PR reverts the changes from #13709, now that we've published a new
version of the Zig extension with them.

This reverts commit 464a4439f7c71e867da481e99e22ad99cc23807e.

Release Notes:

- N/A

Marshall Bowers created

03447b9 zig: Bump to v0.1.3 (#13710)

Click to expand commit body
This PR bumps the Zig extension to v0.1.3 so we can republish with
#13709.

Release Notes:

- N/A

Marshall Bowers created

464a443 zig: Temporarily roll back changes depending on new extension API (#13709)

Click to expand commit body
This PR temporarily rolls back the changes in #12173 so that we can
publish a new version of the Zig extension.

There was a problem stemming from #12614 that caused v0.1.2 of the Zig
extension to get re-published with unreleased `zed_extension_api`
changes.

Once we publish v0.1.3 we'll be able to revert this change.

Release Notes:

- N/A

Marshall Bowers created

0e60730 Slightly improve project panel ergonomics (#13704)

Click to expand commit body
* properly fetch outlines from channel notes and other project-less
external files
* show better messages when for no contents
* make file entries collapsible (hiding all excerpts and outlines
beneath), keep the initial panel state unfolded up to file level


Release Notes:

- Slightly improved project panel ergonomics

Kirill Bulatov created

25ad318 Remove invalid symlink in title bar crate (#13702)

Click to expand commit body
This removes an invalid symlink to a non-existing license file, which
was added in #13597.

Release Notes:

- N/A

Bennet Bo Fenner created

bac6e2f tasks: Add experimental support for user-defined task variables (#13699)

Click to expand commit body
Context:
@bennetbo spotted a regression in handling of `cargo run` task in zed
repo following a merge of #13658. We've started invoking `cargo run`
from the folder of an active file whereas previously we did it from the
workspace root. We brainstormed few solutions that involved adding a
separate task that gets invoked at a workspace level, but I realized
that a cleaner solution may be to finally add user-configured task
variables. This way, we can choose which crate to run by default at a
workspace level.

This has been originally brought up in the context of javascript tasks
in
https://github.com/zed-industries/zed/pull/12118#issuecomment-2129232114

Note that this is intended for internal use only for the time being.
/cc @RemcoSmitsDev we should be unblocked on having runner-dependant
tasks now.

Release notes:

- N/A

Piotr Osiewicz created

065ab93 Use user-defined font weight, where appropriate (#13653)

Click to expand commit body
Release Notes:

- N/A

Gilles Peiffer created

8359230 Add a test for PageUp/PageDown in completion list (#13670)

Click to expand commit body
This is just tests to verify [the fix for PageUp/PageDown in the
completions list](6e1b99b03935922511cdf01978f24abedd0d1868) that was
previously added works properly. @SomeoneToIgnore Please check when you
have a moment. Thanks

Release Notes:

- N/A

Aleksei Gusev created

e650c01 Fix Prettier parser values when formatting files with paths (#13666)

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

Now, as intended, the parser value is passed only if configured in the
language settings.

Also, allows to format JSONC by default with Prettier and reformats Zed
settings.

Release Notes:

- Fixed Zed Prettier integration always passing parser value for files
with paths ([13660](https://github.com/zed-industries/zed/issues/13660))

Kirill Bulatov created

f1859e3 Rust: Execute tasks from files ZED_DIRNAME (#13658)

Click to expand commit body
Fixes #13267

Release Notes:

- Fixed Rust tests not working when crates Cargo.toml is not at the root
of a worktree.

Piotr Osiewicz created

b1a0188 Fix: Atom keymap in ProjectPanel (#13655)

Click to expand commit body
- Fix various keys [aAD] which did not function in Project Panel filename entry with Atom Keybind.

Peter Tripp created

218629c language: Memoize value of has_edits_since for a given buffer version (#13656)

Click to expand commit body
As a drive-by of https://github.com/zed-industries/zed/pull/13654, I've
noticed that the editor felt sluggish after I've undone the changes made
by the replacement. It turns out that we are repeatedly checking whether
there are any edits to estabilish dirty/conflict state of a buffer, even
though this operation is pure; this PR stores away the result of a
computation and refers to it before rerunning it.

Release Notes:

- Improve editor's performance with large undo histories

Piotr Osiewicz created

0761383 search: Improve performance of `replace_all` (#13654)

Click to expand commit body
Previously replace_all amounted to what could be achieved by repeatedly
mashing "Replace" button, which had a bunch of overhead related to
buffer state syncing. This commit gets rid of the automated button
mashing, processing all of the replacements in one go.

Fixes #13455



Release Notes:

- Improved performance of "replace all" in buffer search and project
search

Piotr Osiewicz created

b616f9c Add doc entry for `buffer_font_weight` setting (#13651)

Click to expand commit body
As discussed in #13598.

Release Notes:

- N/A

Gilles Peiffer created

5e465f2 Add duplicate line shortcut to sublime_text.json (#13640)

Click to expand commit body
Release Notes:

- Added duplicate line shortcut to Sublime Text shortcuts

Johannes created

7d767ff Use a human-readable date format for the `now` command's label (#13632)

Click to expand commit body
Before:

![image](https://github.com/zed-industries/zed/assets/2690773/063887fb-1a28-4922-afd1-b2dc4117a03d)

After:
<img width="435" alt="Screenshot 2024-06-28 at 18 52 08"
src="https://github.com/zed-industries/zed/assets/2690773/8e9fd285-1991-4088-a93a-5ea3259d364a">
<img width="480" alt="Screenshot 2024-06-28 at 18 52 10"
src="https://github.com/zed-industries/zed/assets/2690773/7853fc90-6a63-4e66-bb83-2ed37d41b1b9">


Release Notes:

- N/A

Kirill Bulatov created

3cabd4b gpui example: Fix SVG not showing up when running from root (#13648)

Click to expand commit body
Took me a while to figure out that I can't run

    cargo run -p gpui --example animation

and that it has to run in the `gpui` crate.

So I thought I'd fix this.

Release Notes:

- N/A

Thorsten Ball created

2972bdc docs: Make it clearer how to disable ligatures with `buffer_font_features` (#13645)

Click to expand commit body
This PR updates the docs around disabling font ligatures to make it
clearer which OpenType features need to be changed.

Release Notes:

- N/A

Marshall Bowers created

a295b90 Fix typo in tab_bar.show default value rustdoc (#13641)

Click to expand commit body
Fixes #13639

Release Notes:

- N/A

Peter Tripp created

891f195 Add support for .markdown extension (#13609)

Click to expand commit body
Fixes #13608

Release Notes:

- Added recognizing *.markdown files as Markdown
([#13608](https://github.com/zed-industries/zed/issues/13608)).

Peter Tripp created

6e1b99b Fix PageUp for context menu (#13593)

Click to expand commit body
The PageUp key was not working for the context menu. Instead of
selecting one of the previous items in the context menu, `MovePageUp`
closed the menu and scrolled the editor. `MovePageDown` was working
correctly because it has the same fix.



Release Notes:

- Fixed `pageup` key, when bound to `editor::MovePageUp`, not moving context menus as other keys

Aleksei Gusev created

00d1561 Use better names for prompts duplicated (#13630)

Click to expand commit body
Repeats project panel duplicated file name logic for prompts:
* add a ` copy` suffix
* if conflicts still, add a ` i` digit suffix, where `i` is the first
number available starting from 1

Release Notes:

- N/A

Kirill Bulatov created

d5fbf75 Add keyboard shortcuts for scrolling in terminal (#13508)

Click to expand commit body
Fixes #4917, #12231

Release Notes:
-  Added keyboard shortcuts for scrolling in terminal ([4917](https://github.com/zed-industries/zed/issues/4917), [12231](https://github.com/zed-industries/zed/issues/12231))

Aleksei Gusev created

61bbb35 Fix a stupid bug that was dropping system prompts for Claude (#13626)

Click to expand commit body
Release Notes:

- Fixed a bug that was causing system prompts to be dropped for
Anthropic models.

@JosephTLyons @notpeter We probably need to hot-fix this as I'm pretty
sure this affects the regular anthropic provider in addition to just the
feature-flagged cloud stuff. Wouldn't mind confirming that first so we
can communicate around it. 😬

Nathan Sobo created

c560a24 Default theme to match system (#13621)

Click to expand commit body
Release Notes:

- Default to a light theme during the day (#9627)

Conrad Irwin created

da03610 vim: Fix issues with r/R (#13623)

Click to expand commit body
Release Notes:

- vim: Fix undo after repeated insert/replace mode (#13573)
- vim: Fix 'r' repeating too much (#13566)

Conrad Irwin created

363ac6b vim: Empty pane improvements (#13624)

Click to expand commit body
Release Notes:

- vim: Fixed `:` in empty diagnostics view
- vim: Fixed `g/` outside of an editor

Conrad Irwin created

97159bd Associate logs from log_err with the calling crate (#13617)

Click to expand commit body
Now, when you selectively enable logs from particular crates with
`RUST_LOG=call,worktree`, logs created via `log_err` calls in those
crates get correctly enabled. Previously, they were all attributed to
the `util` crate, because they used the normal logging macros, which
implicitly insert the current crate name.

This relies on the regularity of our directory naming. Rust's
`track_caller` feature allows you to obtain the file system path of the
caller, but not its rust module path, so I'm inferring the crate name
from the file system path (which I believe is always valid, in our
codebase).

Release Notes:

- N/A

Max Brunsfeld created

0b57df5 Extract `title_bar` crate (#13597)

Click to expand commit body
This PR extracts a singular title bar (`title_bar::TitleBar`) from
`ui::TitleBar` and
`collab_ui::collab_titlebar_item::CollabTitlebarItem`.

This is a first step towards organizing title bar things into one place,
and standardizing platform titlebar/window control implementations.

Release Notes:

- N/A

Nate Butler created