Antonio Scandurra
354488ebdf
Don't eagerly populate copied subdirectory
...
This can race anyway with snapshot updates, so we just eagerly refresh
the root entry and wait for updates to come in to populate it.
2022-05-31 08:11:07 +02:00
Antonio Scandurra
88fdd8606a
Eagerly populate child entries when copying a directory via RPC
2022-05-30 18:01:46 +02:00
Antonio Scandurra
3336bc6ab3
Implement copy paste for ProjectPanel
2022-05-30 14:52:34 +02:00
Max Brunsfeld
2aec4ff234
Pick files directly from the Fs in simulate_host
...
Previously, the list of all existing files was maintained separately, but
it was not updated when a guest created a file.
2022-05-09 15:39:45 -07:00
Antonio Scandurra
ecb847a027
Fix bugs in FakeFs::{remove_dir,rename}
2022-05-05 09:02:31 +02:00
Max Brunsfeld
0ff39f1280
Select new files in the project panel after creating them
2022-05-04 10:28:44 -07:00
Antonio Scandurra
c661ff251d
Revert "Use async_broadcast
to emit fake FS events"
...
This reverts commit 4cfd345f9d
, because
having a bounded broadcast introduces the possibility of waiting forever
when there isn't yet a receiver processing those events.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-01 17:14:40 +01:00
Antonio Scandurra
4cfd345f9d
Use async_broadcast
to emit fake FS events
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-01 15:48:15 +01:00
Antonio Scandurra
8d078ed4e2
Don't block when emitting fs events
...
Blocking could happen while processing events, which would cause the
background scanner to never make any further progress.
2022-03-01 13:08:50 +01:00
Max Brunsfeld
1faaa91e52
Avoid retaining executor in the FakeFs
...
This probably isn't the *root* cause of why an executor is leaked,
but by cutting off this cyclic references, it may make it a bit easier
to track down leaks of an executor.
2022-02-28 22:40:04 -08:00
Antonio Scandurra
26f7f4f5b2
WIP: Remove ripgrep and start matching query for paths ourselves
2022-02-24 12:33:28 +01:00
Max Brunsfeld
669fe775df
Normalize paths passed to the FakeFs
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-22 12:43:56 -08:00
Antonio Scandurra
3a6fb0a8fe
Fix warning
2022-02-18 12:21:24 +01:00
Max Brunsfeld
6d8db5f6bb
Convert some project tests to use FakeFs
...
Also, tweak some FakeFs methods to make them slightly more convenient.
2022-02-17 11:09:27 -08:00
Antonio Scandurra
03812a6cdc
Pass write(true)
when creating a file in RealFs
2022-02-14 09:12:32 +01:00
Antonio Scandurra
a172c3c5c6
Apply file-system operations coming from an LSP code action
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-07 16:11:40 +01:00
Nathan Sobo
4eb2b978e8
Fix warning when not building in test mode
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-02-04 09:23:16 -07:00
Antonio Scandurra
a2aa844ddd
Buffer all incoming file-system events
...
This avoids a problem where the operating system would drop events
on the floor and tell us to rescan the entire directory, which in turn
would cause a flicker in the project browser.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-04 16:31:34 +01:00
Max Brunsfeld
0cfb9ff1ae
Add random delays in FakeFs
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-24 16:50:38 -08:00
Max Brunsfeld
a293e9c0c5
Suppress unused field warnings
2021-12-16 11:17:06 -08:00
Nathan Sobo
d3f28166cb
Rename buffer crate to text and name its entrypoint after the crate
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-11-30 12:26:12 -07:00
Max Brunsfeld
2f0212ee98
Rename worktree crate to project, pull in Project
...
Also, move the high-level fuzzy mathcing functions in
zed::fuzzy into the fuzzy crate so that project can
use them.
This required defining a 'PathMatchCandidateSet' trait
to avoid a circular dependency from fuzzy to worktree.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-04 16:45:05 -07:00