e6d5f44
windows: Fix path parsing issue when launching Zed from command line (#15856)
Click to expand commit body
Closes #15826
Closes #16068
When launching zed from the command line, the path parsing prefixes with
`\\?\`. Some LSP servers do not support this type of path, so here I
just simply remove the prefix.
Release Notes:
- N/A
张小白
created
aec8fb7
windows: Refactor `prompt_for_paths` and `prompt_for_new_path` (#15774)
Click to expand commit body
Refactored `prompt_for_paths` and `prompt_for_new_path`, now errors can
propagate properly.
Release Notes:
- N/A
张小白
created
a2d41b1
Hint to allow software rasterizer (#15560)
Click to expand commit body
Depending on a number of CPU cores llvmpipe could provide adequate
performance.
A little bit of help to skip searching Zed codebase for solution.
Release Notes:
- N/A
Arkadi Shishlov
created
462808e
windows: Fix extensions couldn't start if the path contained spaces (#15489)
Click to expand commit body
Closes #15441 .
Fixed the issue where extensions couldn't start if the path contained
spaces. Additionally, this PR introduces the `node_environment_path`
function to obtain the PATH environment variable which includes the node
path.
Release Notes:
- N/A
张小白
created
e8dfc30
windows: Fix IME window position on Win10 (#15471)
Click to expand commit body
On Windows, different input methods use different APIs to set their
window positions:
- The Japanese input method on Windows 11 uses `ImmSetCandidateWindow`.
- The Chinese input method on Windows 10 uses `ImmSetCompositionWindow`.
- The Chinese input method on Windows 11 can use either.
Therefore, this PR calls both functions to cover the various scenarios.
Additionally, introduced a helper function `with_input_handler` to
improve code readability.
Release Notes:
- N/A
张小白
created
3c53832
windows: Implement single instance (#15371)
Click to expand commit body
This PR implements a single instance mechanism using the `CreateEventW`
function to create a mutex. If the identifier name begins with `Local`,
the single instance applies only to processes under the same user. If
the identifier begins with `Global`, it applies to all users.
Additionally, I was thinking that perhaps we should integrate the single
instance functionality into `gpui`. I believe applications developed
using `gpui` would benefit from this feature. Furthermore, incorporating
the single instance implementation into `gpui` would facilitate the
`set_dock_menu` functionality. As I mentioned in #12068, the
implementation of `set_dock_menu` on Windows depends on the single
instance feature. When a user clicks the "dock menu", Windows will open
a new application instance. To achieve behavior similar to macOS, we
need to prevent the new instance from launching and instead pass the
parameters to the existing instance.
Any advice and suggestions are welcome.
https://github.com/user-attachments/assets/c46f7e92-4411-4fa9-830e-383798a9dd93
Release Notes:
- N/A
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [fork](https://docs.rs/fork/latest/fork/)
([source](https://togithub.com/immortal/fork)) | workspace.dependencies
| minor | `0.1.23` -> `0.2.0` |
---
### Release Notes
<details>
<summary>immortal/fork (fork)</summary>
###
[`v0.2.0`](https://togithub.com/immortal/fork/blob/HEAD/CHANGELOG.md#020)
[Compare
Source](https://togithub.com/immortal/fork/compare/0.1.23...0.2.0)
- Added waitpid(pid: i32)
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC41Ni4wIiwidXBkYXRlZEluVmVyIjoiMzguNTYuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
a79d443
Don't use a mix of tabs and spaces (#17045)
Click to expand commit body
This PR fixes some spots in the docs and the `install.sh` script that
were using a mix of tabs and spaces.
We should just be using spaces.
Release Notes:
- N/A
This PR fixes a number of spots in English contexts (docs, comments,
etc.) where we were using "MacOS" instead of "macOS".
Release Notes:
- N/A
Marshall Bowers
created
505675c
Update Rust crate clickhouse to 0.12.0 (#17034)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [clickhouse](https://clickhouse.com)
([source](https://togithub.com/ClickHouse/clickhouse-rs)) |
workspace.dependencies | minor | `0.11.6` -> `0.12.0` |
---
### Release Notes
<details>
<summary>ClickHouse/clickhouse-rs (clickhouse)</summary>
###
[`v0.12.2`](https://togithub.com/ClickHouse/clickhouse-rs/blob/HEAD/CHANGELOG.md#0122---2024-08-20)
[Compare
Source](https://togithub.com/ClickHouse/clickhouse-rs/compare/v0.12.1...v0.12.2)
##### Changed
- Now this crate is pure Rust, no more C/C++ dependencies.
- insert: increase max size of frames to improve throughput
([#​130]).
- compression: replace `lz4` sys binding with `lz4-flex` (pure Rust).
- compression: replace `clickhouse-rs-cityhash-sys` sys binding with
`cityhash-rs` (pure Rust) ([#​107]).
##### Deprecated
- compression: `Compression::Lz4Hc` is deprecated and becomes an alias
to `Compression::Lz4`.
[#​130]: https://togithub.com/ClickHouse/clickhouse-rs/issues/130
[#​107]: https://togithub.com/ClickHouse/clickhouse-rs/issues/107
###
[`v0.12.1`](https://togithub.com/ClickHouse/clickhouse-rs/blob/HEAD/CHANGELOG.md#0121---2024-08-07)
[Compare
Source](https://togithub.com/ClickHouse/clickhouse-rs/compare/v0.12.0...v0.12.1)
##### Added
- query/bind: support `Option` in `query.bind(arg)` ([#​119],
[#​120]).
- client: `Client::with_header()` to provide custom headers
([#​98], [#​108]).
- query: added `Query::with_option()` similar to `Client::with_option()`
([#​123]).
- insert: added `Insert::with_option()` similar to
`Client::with_option()` ([#​123]).
- inserter: added `Inserter::with_option()` similar to
`Client::with_option()` ([#​123]).
##### Changed
- insert: the outgoing request is now created after the first
`Insert::write` call instead of `Insert::new` ([#​123]).
[#​123]: https://togithub.com/ClickHouse/clickhouse-rs/pull/123
[#​120]: https://togithub.com/ClickHouse/clickhouse-rs/pull/120
[#​119]: https://togithub.com/ClickHouse/clickhouse-rs/issues/119
[#​108]: https://togithub.com/ClickHouse/clickhouse-rs/pull/108
[#​98]: https://togithub.com/ClickHouse/clickhouse-rs/issues/98
###
[`v0.12.0`](https://togithub.com/ClickHouse/clickhouse-rs/blob/HEAD/CHANGELOG.md#0120---2024-07-16)
[Compare
Source](https://togithub.com/ClickHouse/clickhouse-rs/compare/v0.11.6...v0.12.0)
##### Added
- derive: support `serde::skip_deserializing` ([#​83]).
- insert: apply options set on the client ([#​90]).
- inserter: can be limited by size, see `Inserter::with_max_bytes()`.
- inserter: `Inserter::pending()` to get stats about still being
inserted data.
- inserter: `Inserter::force_commit()` to commit and insert immediately.
- mock: impl `Default` instance for `Mock`.
##### Changed
- **BREAKING** bump MSRV to 1.67.
- **BREAKING** replace the `tls` feature with `native-tls` and
`rustls-tls` that must be enabled explicitly now.
- **BREAKING** http: `HttpClient` API is changed due to moving to hyper
v1.
- **BREAKING** inserter: move under the `inserter` feature.
- **BREAKING** inserter: there is no default limits anymore.
- **BREAKING** inserter: `Inserter::write` is synchronous now.
- **BREAKING** inserter: rename `entries` to `rows`.
- **BREAKING** drop the `wa-37420` feature.
- **BREAKING** remove deprecated items.
- **BREAKING** mock: `provide()`, `watch()` and `watch_only_events()`
now accept iterators instead of streams.
- inserter: improve performance of time measurements by using `quanta`.
- inserter: improve performance if the time limit isn't used.
- derive: move to syn v2.
- mock: return a request if no handler is installed ([#​89],
[#​91]).
##### Fixed
- watch: support a new syntax.
- uuid: possible unsoundness.
- query: avoid panics during `Query::bind()` calls ([#​103]).
[#​103]: https://togithub.com/ClickHouse/clickhouse-rs/issues/103
[#​102]: https://togithub.com/ClickHouse/clickhouse-rs/pull/102
[#​91]: https://togithub.com/ClickHouse/clickhouse-rs/pull/91
[#​90]: https://togithub.com/ClickHouse/clickhouse-rs/pull/90
[#​89]: https://togithub.com/ClickHouse/clickhouse-rs/issues/89
[#​83]: https://togithub.com/ClickHouse/clickhouse-rs/pull/83
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC41Ni4wIiwidXBkYXRlZEluVmVyIjoiMzguNTYuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
0b6dc3e
Update Rust crate cbindgen to 0.27.0 (#17033)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [cbindgen](https://togithub.com/mozilla/cbindgen) | build-dependencies
| minor | `0.26.0` -> `0.27.0` |
---
### Release Notes
<details>
<summary>mozilla/cbindgen (cbindgen)</summary>
###
[`v0.27.0`](https://togithub.com/mozilla/cbindgen/blob/HEAD/CHANGES#0270)
[Compare
Source](https://togithub.com/mozilla/cbindgen/compare/0.26.0...v0.27.0)
- Revert: The `Config` struct now has a private member.
\* Allow users to specify a crate version for bindings generation
([#​901](https://togithub.com/mozilla/cbindgen/issues/901)).
\* Update MSRV to 1.74
([#​912](https://togithub.com/mozilla/cbindgen/issues/912),
[#​987](https://togithub.com/mozilla/cbindgen/issues/987)).
\* Support #\[deprecated] on enum variants
([#​933](https://togithub.com/mozilla/cbindgen/issues/933)).
\* Support integrating the package_version information in a header file
comment
([#​939](https://togithub.com/mozilla/cbindgen/issues/939)).
\* Add a language backend
([#​942](https://togithub.com/mozilla/cbindgen/issues/942)).
\* Support generics with defaulted args
([#​959](https://togithub.com/mozilla/cbindgen/issues/959)).
\* Add `VaList` compatibility
([#​970](https://togithub.com/mozilla/cbindgen/issues/970)).
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC41Ni4wIiwidXBkYXRlZEluVmVyIjoiMzguNTYuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
dfd113d
pane: Fix tooltips of navigation buttons (#17035)
Click to expand commit body
Tooltips for "Go Forward"/"Go Back" did not show the keybindings. Now
they do.
Release Notes:
- N/A
Piotr Osiewicz
created
9ca7729
Add git awareness to file tab icons (#16637)
f19d0f0
Fix OpenPathPrompt locally with tilde (#17027)
Click to expand commit body
Release Notes:
- Fixed a panic opening a file in ~/ with `use_system_prompts: false`
Conrad Irwin
created
9beb4d4
Move shared_buffers into BufferStore (#17020)
Click to expand commit body
This also updates the SSH protocol (but not yet collab) to more closely
track which buffers are open on the client.
Release Notes:
- N/A
Conrad Irwin
created
0853cb5
file_finder: Fix crash in new_path_prompt (#16991)
Click to expand commit body
Closes #16919
repro step:
- add two worktree
- modify settings `"use_system_path_prompts" : false`
- `ctrl-n` create new file, typing any chars.
- `ctrl-s` save file
- typing any char, crashed.
Release Notes:
- Fixed crashed when setting `"use_system_path_prompts": false` or in
remote project with two or more worktree.
This pulls in some experimental initialization changes from
kvark/blade#144
Release Notes:
- linux: Improved GPU detection
Conrad Irwin
created
b9109ba
Pin actions/github-script action to 60a0d83 (#17023)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [actions/github-script](https://togithub.com/actions/github-script) |
action | pinDigest | -> `60a0d83` |
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC41Ni4wIiwidXBkYXRlZEluVmVyIjoiMzguNTYuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
c988ff8
Put `zed: open account settings` action behind a feature flag (#17014)
Click to expand commit body
This PR puts the `zed: open account settings` action behind the
`zed-pro` feature flag, as it isn't supposed to be visible to users yet.
Closes https://github.com/zed-industries/zed/issues/17010.
Release Notes:
- N/A
7e1eac6
docs: Update correct button for accessing context history (#17008)
Click to expand commit body
The button in the top-left corner of the Assistant panel is the history
button, not the hamburger button.
Bin Wang
created
950e698
extensions_ui: Truncate long text with an ellipsis (#17007)
Click to expand commit body
This PR updates the extensions UI to truncate long text with an
ellipsis.
| Before | After |
|
--------------------------------------------------------------------------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------------------------------------------------------------------------
|
| <img width="538" alt="Screenshot 2024-08-28 at 10 25 29 AM"
src="https://github.com/user-attachments/assets/98fda7b9-aac0-4c1b-903b-0d72070a166b">
| <img width="538" alt="Screenshot 2024-08-28 at 10 21 42 AM"
src="https://github.com/user-attachments/assets/948b1e66-3822-4c52-8483-522c28f393c7">
|
Release Notes:
- Improved the truncation of long author lists and descriptions in the
extensions view.
Marshall Bowers
created
ace8734
Revert "extension: Define capabilities in the extension manifest (#16953)" (#17003)
Click to expand commit body
This PR reverts the addition of extension capabilities from #16953.
While these may end up being useful at some point, after some discussion
they don't seem like the exact fit for what we're looking to do right
now.
This reverts commit 8ec36f1e2bdea337236048170a356ec034eaa046.
Release Notes:
- N/A
Marshall Bowers
created
7bf8d73
docs: Add section on updating extensions (#17000)
Click to expand commit body
This PR adds a section to the extension docs on how to update an
extension.
Moving this over from the docs that used to live in the extensions repo
so that we can have them all in one place.
Release Notes:
- N/A
Marshall Bowers
created
4e67d33
project search: Fix filtering when buffers are open (#16997)
Click to expand commit body
This fixes a little bug that has snuck in #16923
Release Notes:
- N/A
Thorsten Ball
created
a5b82b2
project_panel: Add support for copy/paste between different worktrees (#15396)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/5362
Release Notes:
- Added a way to copy/cut-paste between different worktrees ([#5362](https://github.com/zed-industries/zed/issues/5362))
CharlesChen0823
created
81eb594
elixir: Add support for `property` macro in runnables (#16985)
Click to expand commit body
Closes #16984
Release Notes:
- Added support for `property` tests in runnables for Elixir ([#16984](https://github.com/zed-industries/zed/issues/16984))
Christoph Schmatzler
created
4ec1f29
chore: Make some of the deps of gpui optional (#16986)
Click to expand commit body
Minor bookkeeping, that takes down dep count of gpui from 454 to 430 for
me.
Release Notes:
- N/A
0.05% of requests use a version less than this today; and it lets us get
rid of a bunch of versioning we no longer need.
Release Notes:
- N/A
Conrad Irwin
created
cfc3b7d
vim: Retain search direction upon search submit (#16754)
Click to expand commit body
Before, when using `?` and `#` for backwards search it would initially
search for the previous match, but upon subsequent inputs to `n` and
`N`, `n` is always treated as "forward" and `N` is always treated as
"backward", instead of continuing the search direction.
now, if i use `?` or `#` for backward search, `n` will go to the
previous selection, and `N` will go to the next. Functionality stays the
same for `/` and `*`.
Release Notes:
- vim: Fixed `n` direction after searching backwards
---------
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
As part of allowing LSPs to run remotely, we need to move LSP stuff
out of project. To do that we'd like to simplify the concurrency story
on project syncing.
Co-Authored-By: Max <max@zed.dev>
Release Notes:
- N/A
Co-authored-by: Max <max@zed.dev>
Conrad Irwin
and
Max
created
7571b1d
docs: Fix how Tailwind CSS is spelled (#16975)
Click to expand commit body
Super pedantic (😬) but just a tiny PR to fix it: not "TailWind" or
"TailwindCSS" (without spaces).
---
Release Notes:
- N/A
Danilo Leal
created
f39805d
docs: Add redirect from `/developing-zed` to `/development` (#16974)
Click to expand commit body
This PR adds a redirect from the old `/docs/developing-zed` page to the
new `/docs/development` page.
Fixes https://github.com/zed-industries/zed/issues/16785.
Release Notes:
- N/A
Marshall Bowers
created
98a3bda
docs: Fix link to prompting guide (#16973)
Click to expand commit body
This PR fixes the link to the prompting guide, since it was broken in
048be73b22922af8633cf68cd6a12cd46893ea0d and
4e0124010dcedcade05b1a82a62cda4400a11294.
Release Notes:
- N/A
Ensures we sort paths in search the same as we do in panels.
Ideally we'd store things like this in the worktree, but the sort order
depends
on file vs directory, and callers generally don't know which they're
asking for.
Release Notes:
- N/A
Adding more docs to the repl outputs modules.
Release Notes:
- N/A
Kyle Kelley
created
37c7c99
Add pane activation bindings for Sublime Text keymap (#16930)
Click to expand commit body
- Improved Sublime keymap: Support for switching to individual tabs with `cmd-1` thru `cmd-9` (MacOS) and `alt-1` thru `alt-9` (Linux) matching Sublime behavior.
1d868e1
project search: Render results in batches (#16960)
Click to expand commit body
This improves performance, because we don't render after every single
match/range that was added to the results.
I think for my example search it's twice as fast?
## Numbers
Recorded in debug mode (because it's 6:30pm and my poor computer has
spun its fan enough for today and also because you can see the change of
the effect more in debug mode), rendering `<` searched in `zed.dev`
repo:
- Before: `14.59558225s`
- After: `2.604320875s`
## Videos
Before (recorded in release mode):
https://github.com/user-attachments/assets/909260fa-3e69-49ab-8786-dd384e2a27ee
After (recorded in release mode):
https://github.com/user-attachments/assets/fc8a85d3-e575-470f-b59c-16a6df8b3f80
## Release Notes
Release Notes:
- Improved performance of rendering project-search results in the
multi-buffer after finding them.
Thorsten Ball
created
ff26abd
nix: Fix gpu-lib/wayland binary patching on nix package (#16958)
Click to expand commit body
Also, includes some cleanup -- adds missing flake-compat input and
aligns the nix build module with how nixpkgs does it.
Release Notes:
- Fixed an issue on NixOS package where the wrong binaries were being
patched, leading to missing Wayland libs when launching Zed
jvmncs
created
1f0b7d4
extensions: Upgrade `zed_extension_api` to v0.1.0 (#16955)
Click to expand commit body
This PR updates the `zed_extension_api` to v0.1.0 for the extensions
that live in this repo.
The changes in that version of additive, so none of the extensions need
to change their usage in order to upgrade.
Release Notes:
- N/A
Marshall Bowers
created
b2f3f76
project search: Stream search results to improve TTFB (#16923)
Click to expand commit body
This is a prototype change to improve latency of local project searches.
It refactors the matcher to keep paths "in-order" so that we don't need
to wait for all matching files to display the first result.
On a test (searching for `<` in zed.dev) it changes the time until first
result from about 2s to about 50ms. The tail latency seems to increase
slightly (from 5s to 7s) so we may want to do more tuning before hitting
merge.
Release Notes:
- reduces latency for first project search result
---------
Co-authored-by: Thorsten Ball <mrnugget@gmail.com>
Co-authored-by: Antonio <antonio@zed.dev>
Co-authored-by: Thorsten <thorsten@zed.dev>
Conrad Irwin
,
Thorsten Ball
,
Antonio
, and
Thorsten
created
dc889ca
docs: Reference latest version of `zed_extension_api` (#16954)
Click to expand commit body
This PR updates the extension docs to reference the latest version of
the `zed_extension_api`.
Release Notes:
- N/A
Marshall Bowers
created
8ec36f1
extension: Define capabilities in the extension manifest (#16953)
Click to expand commit body
This PR adds an initial notion of extension capabilities.
Capabilities are used to express the operations an extension is capable
of doing. This will provide further insights into what an extension can
do, as well as provide the ability to grant or deny the set of
capabilities.
Capabilities are defined in the `capabilities` field in the extension
manifest. This field contains an array of capabilities.
Each capability has a `kind` to denote the known capability it
corresponds to. Individual capabilities may have additional fields,
based on the `kind`.
Here's an example of some capabilities:
```toml
capabilities = [
{ kind = "download-file", host = "github.com", path_prefix = "owner/repo" },
{ kind = "npm:install", package = "@vue/language-server" },
]
```
In order to avoid a breaking change, the `capabilities` field is
currently optional and defaults to an empty array. This will allow us to
add support for extensions to define capabilities before we start
enforcing them.
Release Notes:
- N/A