Antonio Scandurra
f10fd6c419
Randomize test FilterCursor::prev
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-15 15:13:23 +01:00
Max Brunsfeld
d193c9a358
v0.20
2022-03-14 15:59:52 -07:00
Max Brunsfeld
7a68b2d371
Provide JSON language server with settings schema
2022-03-11 11:46:22 -08:00
Max Brunsfeld
6091caee8e
Merge branch 'main' into settings-file
2022-03-11 10:04:17 -08:00
Antonio Scandurra
7a454003fe
Show the last in-progress task from language servers
2022-03-11 09:59:13 +01:00
Max Brunsfeld
83f98dde52
Start work on loading settings from a file
...
Co-Authored-By: Keith Simmons <keith@zed.dev>
2022-03-09 17:59:29 -08:00
Antonio Scandurra
317a1bb07b
Remove language servers from buffers
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
Co-Authored-By: Keith Simmons <keith@zed.dev>
2022-03-08 15:16:07 -08:00
Antonio Scandurra
03aa906068
v0.19.0
2022-03-08 08:18:51 +01:00
Max Brunsfeld
9017a1363b
Send websocket pings from both the client and the server
...
Remove the client-only logic for sending protobuf pings.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-03-04 15:21:18 -08:00
Max Brunsfeld
bf1153cedd
Add syntax highlighting/auto-indent/outlines for JSON files
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-03 12:12:18 -08:00
Max Brunsfeld
4b0300daea
0.18.1
2022-03-02 14:23:19 -08:00
Antonio Scandurra
85a010bfcc
v0.18.0
2022-03-02 15:05:49 +01:00
Max Brunsfeld
95b2f4fb16
Fix remaining language server hangs on shutdown
...
* Use fork of async-pipe library that handles closed pipes correctly.
* Clear response handlers map when terminating output task, so as
to wake any pending request futures.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-01 15:54:59 -08:00
Max Brunsfeld
43f856c568
Make integration tests depend only on a few core crates, not all of zed
2022-03-01 12:09:51 -08: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
Max Brunsfeld
471ecae82c
WIP - include dhat for memory profiling tests
2022-02-28 22:52:21 -08:00
Antonio Scandurra
720056d0db
Add unit test for project search
2022-02-28 11:10:22 +01:00
Nathan Sobo
136699e7bd
Add log dependency in search crate
2022-02-27 09:25:40 -07:00
Nathan Sobo
ec317159d7
Rename "find" to "search"
...
Search is both a verb and a noun, which makes it more natural to use in situations where we need to name a thing rather than a process.
2022-02-27 08:15:38 -07:00
Nathan Sobo
e822c6a64e
Handle project-wide search on guests
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-02-25 15:09:47 -07:00
Max Brunsfeld
8dce91be23
Upgrade time crates to silence warning on Rust 1.59
2022-02-25 10:39:44 -08:00
Antonio Scandurra
0bf944e038
Use Project::search
in ProjectFind
and show search results
2022-02-25 10:32:45 +01:00
Max Brunsfeld
5644336df3
Merge branch 'main' into project-find
2022-02-24 17:22:09 -08:00
Max Brunsfeld
fb1103e26d
Merge pull request #482 from zed-industries/c-support
...
Add C support with clangd
2022-02-24 17:16:55 -08:00
Antonio Scandurra
26f7f4f5b2
WIP: Remove ripgrep and start matching query for paths ourselves
2022-02-24 12:33:28 +01:00
Antonio Scandurra
fed6f708c0
Start on project-wide find
2022-02-24 11:57:53 +01:00
Nathan Sobo
9841abf402
v0.17.0
2022-02-23 06:26:45 -07:00
Max Brunsfeld
a14d0582ca
Add C support with clangd
2022-02-22 17:21:21 -08:00
Antonio Scandurra
0e4bd4b418
Sign symbols so that we can trust opening buffers for them from guests
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-22 18:43:16 +01:00
Antonio Scandurra
fad335b2ba
Don't serialize the full LSP symbol when collaborating
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-22 18:08:43 +01:00
Antonio Scandurra
f0195ac3a3
Allow opening of buffers associated with a project symbol
2022-02-22 16:26:01 +01:00
Antonio Scandurra
d59ebb554b
Update symbol matches as the query changes
2022-02-22 10:54:25 +01:00
Antonio Scandurra
8f375a5026
Start on a new project_symbols
crate
2022-02-22 08:42:12 +01:00
Nathan Sobo
7cd5dbd2a8
v0.16.0
2022-02-21 18:10:10 -07:00
Max Brunsfeld
79910ba931
Show more information in lsp status bar item
...
* Distinguish between checking for updates and downloading
* Show dismissable error message when downloading failed and there
is no cached server.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-21 16:11:51 -08:00
Max Brunsfeld
ededfff3a8
Download language servers on-demand
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-21 13:54:52 -08:00
Antonio Scandurra
aee479d615
Show message indicating when we're downloading language servers
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-21 17:25:52 +01:00
Antonio Scandurra
793d9e8bba
Download rust-analyzer from GitHub
2022-02-21 16:15:54 +01:00
Antonio Scandurra
38e4ec9157
Replace Inconsolata with Zed Mono and Zed Sans
2022-02-18 14:55:11 +01:00
Max Brunsfeld
d2c1d0a670
0.15.2
2022-02-17 12:55:47 -08:00
Max Brunsfeld
4b0b97f773
0.15.1
2022-02-17 10:00:24 -08:00
Antonio Scandurra
ae75648f0d
v0.15.0
2022-02-14 17:26:40 +01:00
Max Brunsfeld
8d6504826c
Reduce logging in lsp tests
2022-02-11 16:37:50 -08:00
Max Brunsfeld
c245356b42
Try another hacky approach for tearing down DBs after all tests
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-07 15:23:35 -08:00
Max Brunsfeld
8a2613d49c
Preserve ordering between responses and other incoming messages
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-07 14:14:15 -08:00
Max Brunsfeld
3e232f7115
Refine behavior of select_larger_syntax_node
...
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2022-02-04 13:19:00 -08:00
Antonio Scandurra
924eb622ae
Wait for additional edits before pushing transaction in remote buffer
2022-02-02 17:01:23 +01:00
Antonio Scandurra
d765e75bad
Apply additional edits for completion when the buffer is remote
2022-02-02 16:29:13 +01:00
Max Brunsfeld
7270fd00ba
Start work on handling snippet completions
2022-02-01 15:35:02 -08:00
Max Brunsfeld
55cc7bb868
Reimplement snippet parsing using recursive descent
2022-02-01 13:41:41 -08:00
Max Brunsfeld
956748e10c
Add snippet crate
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-02-01 11:00:40 -08:00
Antonio Scandurra
b89a39bcb3
Filter and sort suggestions in autocomplete
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-01 15:11:20 +01:00
Max Brunsfeld
1d1f8df180
Trigger completion when typing words or trigger characters
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-31 17:07:24 -08:00
Antonio Scandurra
808550fe41
v0.14
2022-01-31 15:14:54 +01:00
Max Brunsfeld
7e02d669e1
Add a simple unit test for find bar
2022-01-28 13:05:29 -08:00
Antonio Scandurra
5b9d791269
Implement regex search with multiline support
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-28 16:15:18 +01:00
Antonio Scandurra
5c862bfe98
Maintain search results as query and active editor changes
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-28 15:19:58 +01:00
Antonio Scandurra
860e37d50f
Move finding results in the background
2022-01-28 12:15:55 +01:00
Max Brunsfeld
da35df0cca
WIP
2022-01-27 16:16:51 -08:00
Max Brunsfeld
d8e4464a89
WIP - Run substring search when typing in find bar
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-27 13:00:51 -08:00
Max Brunsfeld
05e20ca72b
Inform toolbars when active item changes
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-27 13:00:23 -08:00
Antonio Scandurra
bebde782fa
Deploy FindBar
when hitting cmd-f
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-01-27 17:56:50 +01:00
Max Brunsfeld
c9b4bb78f2
Merge branch 'project-diagnostics-pinned-tab' into style-project-diagnostics
2022-01-25 12:20:37 -08:00
Antonio Scandurra
121b45e249
Sanitize language server diagnostics coming from Rust
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-25 17:49:50 +01:00
Antonio Scandurra
b7314ef2aa
WIP: Start restructuring executor
2022-01-24 18:49:20 +01:00
Nathan Sobo
a578d71ea2
v0.13.0
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-01-21 11:26:32 -07:00
Max Brunsfeld
e43d33cdad
WIP - Reopen closed items when going back in nav history
2022-01-17 10:46:47 -08:00
Max Brunsfeld
e27fafb824
v0.12
2022-01-14 12:03:29 -08:00
Max Brunsfeld
485554cd0c
Merge pull request #342 from zed-industries/symbolic-nav
...
Introduce outline view
2022-01-14 12:02:43 -08:00
Max Brunsfeld
3e1c559b2d
Allow multiple disjoint nodes to be captured as matcheable in the outline query
2022-01-13 14:04:25 -08:00
Antonio Scandurra
aee3bb98f2
Implement selecting prev and next in outline view
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-13 16:44:06 +01:00
Antonio Scandurra
d74658fdb5
Allow searching of outline items
2022-01-13 15:10:50 +01:00
Antonio Scandurra
d6ed2ba642
Start on rendering the outline view
2022-01-13 12:01:11 +01:00
Antonio Scandurra
9422e27f97
Update curl to avoid setting MACOSX_DEPLOYMENT_TARGET
on server
2022-01-13 08:52:42 +01:00
Max Brunsfeld
63a401ac5d
Add Buffer::outline method
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-12 18:17:49 -08:00
Max Brunsfeld
6865a42df9
Show error+warning counts in project diagnostics tab
...
Allow workspace items' tab contents to be arbitrary elements
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-12 10:51:28 -08:00
Nathan Sobo
30225678c0
Test ordering of responses with respect to uni-directional messages
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-01-12 11:19:17 -07:00
Max Brunsfeld
5941f5fca0
Upgrade tree-sitter-markdown
2022-01-11 10:36:31 -08:00
Antonio Scandurra
794d214eee
Refactor opening workspace items
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-07 17:38:37 +01:00
Antonio Scandurra
d383ff30ce
Introduce randomized test for collaboration on buffers
...
This test will exercise serialization of operations as well as peers
replicating from an existing buffer.
2022-01-05 11:51:41 +01:00
Antonio Scandurra
b3b56c36d0
Release v0.11.0
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-01-04 18:27:35 +01:00
Max Brunsfeld
a080ae98c6
Allow the zed app to connect to both the old and new rpc endpoints
...
In the case of the new Next.js app, the app will follow a redirect
from 'zed.dev/rpc' to the subdomain where the rust service is hosted.
Until then, the app will connect directly to zed.dev/rpc.
2022-01-03 15:29:26 -08:00
Antonio Scandurra
a85e400b35
Start on a DiagnosticProvider
implementation for Rust
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-12-24 16:22:22 +01:00
Antonio Scandurra
7b453beebc
WIP: Use cargo check
for on-disk diagnostics
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-12-23 18:35:50 +01:00
Max Brunsfeld
2c3efdea8c
WIP - Start work on updating project diagnostics view
2021-12-21 16:39:23 -08:00
Antonio Scandurra
1e8ef8a4c1
Register local worktrees after acquiring a project remote id
2021-12-21 09:49:13 +01:00
Max Brunsfeld
466a377e1d
Merge branch 'main' into share-project
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-12-20 11:42:59 -08:00
Nathan Sobo
e4f18947de
Insert a time heading when creating a journal entry
2021-12-18 10:38:54 -07:00
Nathan Sobo
ca0d7e5e1f
Add journal crate and move supporting logic into workspace crate
...
I needed to interact with the workspace to open a file from the journal crate, so I moved a bunch of logic out of main related to opening new workspaces and paths.
2021-12-18 08:12:59 -07:00
Max Brunsfeld
528d64d3cc
WIP - Improve project diagnostic context rendering
2021-12-16 18:34:29 -08:00
Antonio Scandurra
9e15c57f91
Display a rudimentary project diagnostic view on alt-shift-d
2021-12-14 11:32:05 +01:00
Max Brunsfeld
4efdc53d9f
WIP
2021-12-13 17:44:20 -08:00
Max Brunsfeld
6ab795c629
Handle buffer deduping in the worktree instead of in workspace
...
Previously, buffers were only deduped by file if they were opened
through Workspace::open_entry
2021-12-13 16:35:46 -08:00
Antonio Scandurra
85674ba506
WIP
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-12-13 16:46:35 +01:00
Nathan Sobo
1e7184ea07
Get selections rendering again when local selections are owned by Editor
2021-12-11 13:42:46 -07:00
Nathan Sobo
c8b43e3078
Move multi_buffer to editor crate
2021-12-10 17:37:53 -07:00
Antonio Scandurra
c8d5e19492
Merge branch 'fragment-locators' into project-diagnostics
2021-12-10 14:01:17 +01:00
Antonio Scandurra
eeba0993aa
Optimize anchor comparison and take full advantage of fragment IDs
2021-12-10 09:16:58 +01:00
Antonio Scandurra
65711b2256
Remove anchor collections
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-12-09 17:28:27 +01:00
Antonio Scandurra
e37908cf3b
Start on a simple randomized test for FragmentList
2021-12-06 16:08:17 +01:00
Antonio Scandurra
45d6f5ab04
Start on maintaining edits in FragmentList
2021-12-06 12:10:25 +01:00
Antonio Scandurra
8f90d42723
Merge branch 'main' into project-diagnostics
2021-12-06 09:39:03 +01:00
Max Brunsfeld
b1ed9c88a4
Add tree-sitter-markdown, set up simple markdown higlighting
2021-12-05 21:37:31 -08:00
Max Brunsfeld
026c3476db
Upgrade tree-sitter to 0.20.1
2021-12-05 21:37:08 -08:00
Nathan Sobo
811696670a
Start on a new FragmentList
...
Here I'm exploring a new approach to the project-wide diagnostics view that can exactly mirror the contents of cargo check. The `FragmentList` composes an arbitrary list of fragments from other buffers and presents them as if they were a single buffer.
2021-12-04 06:57:56 -07:00
Antonio Scandurra
3b536f153f
Introduce text::Buffer::subscribe
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-12-01 15:55:05 +01: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
Nathan Sobo
eacd2a45bb
Bump versions in preparation for release
2021-11-30 09:43:51 -07:00
Max Brunsfeld
1a91aa8194
Introduce a collections crate w/ deterministic hashmap, hashset in tests
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-29 15:22:45 -08:00
Nathan Sobo
d78d5712be
Rename PeoplePanel to ContactsPanel
...
Yeah, it's true they're people, but this is a more specific way in which they're people.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-11-26 11:13:05 -07:00
Antonio Scandurra
10b3fae2c3
Implement SelectNext
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-25 15:44:06 +01:00
Antonio Scandurra
cea8107242
WIP: Start on go to line
2021-11-24 18:45:36 +01:00
Antonio Scandurra
e88d3bb97e
Invert dependency between editor
and workspace
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-24 17:07:16 +01:00
Antonio Scandurra
9bb195e177
Introduce "entry openers" but still register editors in workspace
2021-11-24 15:18:15 +01:00
Max Brunsfeld
a0287920e5
Remove cargo-bundle from dev-dependencies
...
The cargo-bundle crate is installed separately in the
'bundle' script via 'cargo install'.
2021-11-23 09:25:22 -08:00
Max Brunsfeld
ca4086b844
0.8.0
2021-11-22 13:33:54 -08:00
Max Brunsfeld
7474813a17
Impose a timeout on writing RPC messages
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-22 13:23:55 -08:00
Antonio Scandurra
fe786f3366
Init env_logger
in the editor
crate for tests only
2021-11-12 17:01:57 +01:00
Max Brunsfeld
8d3f42de52
Start language servers based on buffers' languages
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-02 17:41:01 -07:00
Max Brunsfeld
a66b81d60a
Add an integration test for replicating buffer's diagnostics
2021-11-02 14:57:24 -07:00
Max Brunsfeld
40c861c249
Move protobuf logic from buffer crate to language crate
...
This will enable us to add operations that only pertain to the language crate.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-01 14:05:19 -07:00
Max Brunsfeld
b8994c2a89
Add a facility for delaying quit until critical tasks finish
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-11-01 11:57:31 -07:00
Antonio Scandurra
0674e76864
WIP
2021-10-26 19:42:40 +02:00
Max Brunsfeld
50c77daa0b
Start work on a test for worktree handling LSP diagnostics
2021-10-25 21:42:55 -07:00
Max Brunsfeld
6384950d56
Merge remote-tracking branch 'origin/main' into lsp
2021-10-25 16:24:08 -07:00
Max Brunsfeld
b49a268031
Add a fake lsp server
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-25 15:28:40 -07:00
Antonio Scandurra
580bad2042
Get a basic end-to-end test for rust-analyzer integration working
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-10-25 18:11:52 +02:00
Antonio Scandurra
7105589904
Don't send notifications or requests until LSP is initialized
2021-10-25 12:29:28 +02:00
Antonio Scandurra
2c6aeaed7c
Start on integrating rust-analyzer
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-10-21 16:26:37 +02:00
Max Brunsfeld
282195b13e
Assign new file handles on buffers when their files change on disk
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-21 13:08:54 +02:00
Max Brunsfeld
37eae2ba67
Remove unnecessary dependencies in buffer and language crates
2021-10-21 09:40:50 +02:00
Max Brunsfeld
81a85e9c79
Extract a language crate
2021-10-20 22:51:40 +02:00
Max Brunsfeld
53f1078119
Ensure that autoindent task yields frequently to respect cancellation
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-11 11:25:15 -07:00
Antonio Scandurra
f70e3878b6
Flip the dependency between editor and theme
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-10-05 19:21:13 +02:00
Antonio Scandurra
2280c75103
Extract theme_selector
into its own crate
2021-10-05 15:38:25 +02:00
Antonio Scandurra
47b29a5f21
Extract people_panel
into its own crate
2021-10-05 14:36:38 +02:00
Antonio Scandurra
cd6378e848
Extract file_finder
into its own crate
2021-10-05 14:30:56 +02:00
Antonio Scandurra
1ec0afb2d1
Extract chat_panel
into its own crate
2021-10-05 14:23:45 +02:00
Antonio Scandurra
d04a11405c
Extract project_panel
into its own crate
2021-10-05 14:19:57 +02:00
Antonio Scandurra
499616d769
Move workspace
module into its own crate
2021-10-05 13:49:10 +02:00
Antonio Scandurra
2087c4731f
Extract theme
into its own crate
2021-10-05 11:14:30 +02:00
Antonio Scandurra
5105596918
Move sidebar-specific code out of Workspace
2021-10-05 10:59:20 +02:00
Max Brunsfeld
bbb27b9654
Move ChannelList, UserStore into client crate
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-04 17:30:11 -07:00
Max Brunsfeld
94209d2b6d
Rename rpc_client -> client
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-04 17:14:21 -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
Max Brunsfeld
1d97f08901
Move editor into its own crate
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-04 15:23:10 -07:00
Nathan Sobo
d5b60ad124
Rename zrpc to rpc
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-10-04 13:28:00 -06:00
Nathan Sobo
c236b0828c
Extract worktree, rpc_client, and util crates
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-10-04 13:07:35 -06:00
Antonio Scandurra
becae9feee
Pull out buffer
into its own crate
2021-10-04 16:50:12 +02:00
Antonio Scandurra
034aed053c
Extract a clock
subcrate for logical clocks
2021-10-04 14:34:02 +02:00
Nathan Sobo
74a47a1384
Extract fuzzy module to its own crate
...
We still have a fuzzy module in the zed crate with some app-specific logic.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-10-01 17:08:19 -06:00
Nathan Sobo
cf270b4dff
Extract sum_tree to its own crate
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-10-01 15:55:21 -06:00
Max Brunsfeld
3719a9ee23
Use published prost crates
...
The previous version of prost didn't build on nightly rust.
2021-09-30 15:37:04 -07:00
Max Brunsfeld
8bfee93be4
Start work on compressing RPC messages
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-09-23 18:26:42 +02:00
Antonio Scandurra
8973e250ca
Re-send pending messages after reconnecting
2021-09-16 16:23:43 +02:00
Nathan Sobo
95ef70e4f4
Switch to new resolution system in ThemeRegistry
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-15 12:56:20 -06:00
Nathan Sobo
7d59b2d861
Log panics when not attached to a pty
...
Hopefully this will give us better forensics if we panic in production.
2021-09-15 04:51:22 -06:00
Antonio Scandurra
603f1d820d
Authenticate via the browser if keychain credentials are invalid
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-15 11:45:08 +02:00
Nathan Sobo
4a9918979e
WIP: Clear cached credentials if authentication fails
...
Still need to actually handle an HTTP response from the server indicating there was an invalid token.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 19:19:11 -06:00
Antonio Scandurra
96ade8668f
Start on image rendering
2021-09-14 16:48:44 +02:00
Antonio Scandurra
00f6bdcb24
Bundle and use Inconsolata v2.012
...
There's a newer version of the font available but ligatures seem
broken googlefonts/Inconsolata#58 and googlefonts/Inconsolata#52 .
As part of this commit I also upgraded rust-embed to use the new
exclusion feature, which allows us to skip embedding OS files like
`.DS_Store`.
2021-09-04 17:02:20 +02:00
Antonio Scandurra
f59e02cf25
Use macOS API to retrieve the local timezone
...
The `time` crate currently doesn't have a reliable way to get that.
In the future, `NSSystemTimeZoneDidChangeNotification` could be
used to keep the cached timezone up-to-date.
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-09-02 19:15:05 +02:00
Antonio Scandurra
a27a17b8e2
Make scrolling up in chat panel smoother
...
This increases the threshold at which we start loading new messages
as well as the amount of messages we get back from the server every
time we fetch.
Also, we restructured the seed binary to use the methods in `Db` to
generate seed data and added random chat messages.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-02 16:05:34 +02:00
Max Brunsfeld
8c85bc20c7
Indicate the key-path to the error when failing to load a theme
2021-08-26 15:06:05 -07:00
Max Brunsfeld
b923f65a63
WIP
2021-08-25 15:22:14 -07:00
Antonio Scandurra
463284f0af
Move LineWrapper
into gpui
2021-08-25 10:43:54 +02:00
Nathan Sobo
c3dda14490
WIP: Move sum_tree module into gpui so we can use it in List
2021-08-20 16:18:39 -06:00
Max Brunsfeld
4a32bd6bb0
Implement initial RPC endpoints for chat
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-08-06 13:43:06 -07:00
Max Brunsfeld
e080739d57
Remove use of replace_with crate for managing element lifecycles
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-08-02 13:11:11 -07:00
Nathan Sobo
64927abbc4
Allow DeterministicExecutor to park until forbid_parking is called
...
This allows us to perform async setup such as talking to the database.
2021-07-20 12:22:02 -06:00
Antonio Scandurra
3d3a14b650
Add DeterministicExecutor::block_on(duration, future)
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-07-20 19:20:50 +02:00
Antonio Scandurra
391ad489ff
Rename zed-rpc
to zrpc
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-07-13 18:22:00 +02:00
Antonio Scandurra
f836a25500
Use an executor::Background
in AppContext::thread_pool
2021-07-13 14:06:38 +02:00
Antonio Scandurra
68f747d6df
Allow printing a trace of a run of the executor
2021-07-13 12:31:36 +02:00
Nathan Sobo
1537500fcb
Include contents of the zed-server repo
...
We're going full monorepo.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-07-12 14:14:39 -06:00
Max Brunsfeld
eeebc761b6
Restructure Peer to handle connections' messages in order
2021-07-09 16:27:34 -07:00
Antonio Scandurra
4dae17a4cf
Extract an Fs
trait in Worktree
2021-07-09 10:58:07 +02:00
Max Brunsfeld
f46c0a790e
Improve support for gpui tests that need multiple contexts
...
If a test function takes multiple contexts, pass it however many
distinct contexts are needed. Construct each one with a different
starting entity id so that they do not share any entity ids.
2021-07-07 17:18:42 -07:00
Antonio Scandurra
7335e70eb7
Use async-tungstenite's built-in TLS connector
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-07-07 19:55:26 +02:00
Antonio Scandurra
cb9002254f
Use a websocket to connect to the server
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-07 18:49:38 +02:00
Antonio Scandurra
4466b6b76a
Refactor zed-rpc to work with websockets
2021-07-07 18:23:18 +02:00
Antonio Scandurra
ee962eab9b
Revert "Start work on handling TLS for the RPC endpoint"
...
This reverts commit 193c704875
.
2021-07-07 15:19:00 +02:00
Max Brunsfeld
193c704875
Start work on handling TLS for the RPC endpoint
2021-07-06 16:27:57 -07:00
Antonio Scandurra
59fe0549cc
Replace paths_by_id
with an entries_by_id
sum tree
2021-07-06 12:41:31 +02:00
Nathan Sobo
34963ac80d
Use entry_id on File instead of worktree::Diff to detect when buffers' files change
...
Rather than computing a diff after processing a batch of FSEvents, we instead detect renames as we're inserting entries. We store an entry_id on the File object that is owned by each buffer, and use this to detect when the path of the File has changed.
We now also manage all File-related state and event emission for Buffers in the LocalWorktree, since the logic will need to be totally different in the remote case.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-06-29 18:19:38 -06:00
Antonio Scandurra
e80439daaa
Merge branch 'main' into rpc
2021-06-29 10:25:42 +02:00
Nathan Sobo
8f7111b0f7
Upgrade bindgen to fix warnings on new Rust
2021-06-24 18:02:53 -06:00
Nathan Sobo
bfccb173c4
Update prost to include our changes
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-06-18 15:12:22 -06:00
Max Brunsfeld
c5cec247c4
Fix termination of peer's incoming future
...
* Re-enable peer tests
* Enhance request/response unit test to exercise
peers interacting with each other end-to-end
2021-06-16 21:18:22 -07:00
Antonio Scandurra
9de4d73ffb
Move RpcClient
to zed_rpc
and rename it to Peer
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-16 18:01:26 +02:00
Antonio Scandurra
a87d4db155
Change RpcClient
methods to take shared references
...
This will make it easier to spawn a future on gpui's executors
when calling `RpcClient` methods.
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-06-14 19:59:46 +02:00
Max Brunsfeld
86ff599285
Use tiny_http for handling login HTTP request
...
Our manual HTTP parsing and encoding was not working with Safari.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-06-11 10:28:00 -07:00
Max Brunsfeld
20542f54ef
Start work on connecting to RPC endpoint
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-06-10 22:12:04 -07:00
Max Brunsfeld
a10f4bb4ff
Introduce zed_rpc::proto module containing protobuf stream logic
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-09 13:19:12 -07:00
Max Brunsfeld
327c20510b
Introduce zed-rpc with some shared auth utilities
2021-06-08 13:07:06 -07:00
Max Brunsfeld
db3e01a12c
Start work on a login command
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-07 18:15:11 -07:00
Max Brunsfeld
7339b9bce7
Bump Tree-sitter
...
Pass ranges to `set_byte_range`, `set_point_range`
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-28 14:25:30 -07:00
Max Brunsfeld
8b7a314474
Implement bracket matching using queries
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-28 13:09:57 -07:00
Antonio Scandurra
ab64f2dd1d
Update tree-sitter
2021-05-26 09:10:06 +02:00
Max Brunsfeld
5d2ac3f4e4
Use new Tree-sitter captures API
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-25 16:02:43 -07:00
Max Brunsfeld
e54a31ead2
Bump tree-sitter for QueryCaptures::advance methods
2021-05-24 21:21:31 -07:00
Max Brunsfeld
8340958b33
Convert query capture indices to style ids
...
* Introduce a Theme struct as a new part of the app's settings
* Store on each Language a ThemeMap, which converts the capture ids
from that language's highlight query into StyleIds, which identify
styles in the current Theme.
* Update `highlighted_chunks` methods to provide StyleIds instead of
capture ids.
2021-05-24 16:44:14 -07:00
Max Brunsfeld
b51ae1f668
WIP
2021-05-23 21:42:45 -07:00
Max Brunsfeld
4e74a8726c
Bump context-predicate grammar to the latest Tree-sitter
2021-05-22 12:34:35 +02:00
Max Brunsfeld
2f378be1a8
Introduce LanguageRegistry object
...
* Include it, along with settings in `OpenParams` grouped under a new struct called `AppState`
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-22 12:34:35 +02:00
Max Brunsfeld
4910bc50c6
Merge branch 'master' into file-changed-on-disk
2021-05-12 16:20:03 -07:00
Antonio Scandurra
c7d97adf23
Introduce a gpui::test
macro
2021-05-12 17:05:03 +02:00
Max Brunsfeld
040189db3c
Add basic handling for buffer's files changing on disk
2021-05-11 16:18:29 -07:00
Max Brunsfeld
29d44c8a10
Go back to using upstream core-foundation-rs
2021-05-07 09:53:07 -07:00
Max Brunsfeld
5fd084ec09
Start work on creating and saving new files
2021-05-04 19:04:11 -07:00
Nathan Sobo
898271edfb
Add script/bundle, which creates a macOS app bundle
2021-05-04 17:18:25 -06:00
Max Brunsfeld
ae5f02d2e9
Use getmntinfo(3) to list mounted volumes
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-22 15:41:03 -07:00
Max Brunsfeld
b37b047400
Start work on excluding separate mount dirs
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-22 14:11:46 -07:00
Max Brunsfeld
499e55e950
Start work on handling changes to gitignore files
...
* Use the published ignore crate
* Store ignore objects on snapshot, and use them to compute
files' ignored status dynamically, instead of storing the
ignored status on the file.
2021-04-21 18:11:52 -07:00
Max Brunsfeld
b20f5e9139
Fully halt background scanner threads when dropping Worktree
...
* Rework fsevent API to expose a handle for halting the event stream
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-20 15:55:29 -07:00
Max Brunsfeld
9fd8acdce7
Use our own scoped_pool implementation
2021-04-20 14:07:36 -07:00
Nathan Sobo
9899614f31
Remove task_done condvar which supported finish_pending_tasks
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-20 10:45:42 -06:00
Antonio Scandurra
ddd746b9f9
Use env_logger
instead of simplelog
in tests
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-20 17:34:14 +02:00
Nathan Sobo
a4c1fe5a0b
WIP: Add a condition method to model and view handles for use in tests
...
It returns a future that resolves when the provided predicate returns true. The predicate is called any time the handle's targeted entity calls notify.
Still need to add a timeout and completely remove finsih_pending_tasks.
2021-04-19 22:01:54 -06:00
Max Brunsfeld
fbaab121f6
Add fsevent crate to workspace
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-15 16:29:55 -07:00
Nathan Sobo
db8cce9aa9
Merge branch 'master' into rescan
2021-04-14 22:26:09 -06:00
Nathan Sobo
4cef25eff8
Replace easy-parallel with scoped-pool for path searches
...
The easy-parallel crate spawned new threads on each call, which was resulting in way too many threads.
Co-Authored-By: Brooks Swinnerton <934497+bswinnerton@users.noreply.github.com>
2021-04-14 09:08:52 -06:00
Antonio Scandurra
cf23b0e4a2
Prompt for paths asynchronously to avoid double borrow
2021-04-14 16:30:03 +02:00
Nathan Sobo
f3a0a11fc5
WIP
2021-04-13 20:09:45 -06:00
Nathan Sobo
0cc5e8f742
Replace easy-parallel with scoped-pool for path searches
...
The easy-parallel crate spawned new threads on each call, which was resulting in way too many threads.
Co-Authored-By: Brooks Swinnerton <934497+bswinnerton@users.noreply.github.com>
2021-04-13 20:07:42 -06:00
Max Brunsfeld
e082935076
Handle 'full-line' clipboard items when pasting
2021-04-13 17:58:13 -07:00
Antonio Scandurra
13514aae6c
Allow metadata to be associated with text written to clipboard
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-04-13 19:03:56 +02:00
Max Brunsfeld
00d7dafbba
Merge branch 'master' into menus
2021-04-09 10:34:21 -07:00
Antonio Scandurra
07b8a105a6
Merge pull request #11 from zed-industries/undo
...
Introduce undo/redo support for arbitrary operations in `Buffer`
2021-04-09 18:50:36 +02:00
Max Brunsfeld
6873662c47
Use upstream git revision of core-foundation-rs
2021-04-09 08:45:23 -07:00
Max Brunsfeld
7ebcbdc0cb
Implement File > Open menu item
2021-04-08 22:25:54 -07:00
Antonio Scandurra
c20935de91
WIP
2021-04-08 16:57:46 +02:00
Nathan Sobo
9f6f27f305
Order debug JSON and allow elements to be named; copy to clipboard
2021-04-07 21:54:14 -06:00
Nathan Sobo
0664321125
Add ability to debug element trees as JSON
2021-04-07 21:54:14 -06:00
Max Brunsfeld
d724387158
wip
2021-04-06 18:25:50 -07:00
Antonio Scandurra
e0c43dac25
Implement SVG rendering
2021-04-06 13:46:33 +02:00
Nathan Sobo
c43d7cfb39
Use a condvar instead of a channel to implement finish_pending_tasks
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-02 13:53:06 -06:00
Nathan Sobo
fd1f75333f
Initialize logger in gpui tests
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-02 12:42:01 -06:00
Nathan Sobo
914cf37f37
Remove executor::ForegroundTask wrapper
...
Now that smol returns the same Task as async_task, we can simply re-export the async_task::Task struct from our executor module.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-02 11:02:09 -06:00
Antonio Scandurra
ad7974608b
WIP
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-23 19:11:56 +01:00
Antonio Scandurra
764bfba2e2
WIP: Start on rendering glyphs
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-23 15:15:41 +01:00
Nathan Sobo
119aa452b6
Overhaul the entire element system
...
Now the Element trait is designed to be wrapped in a Lifecycle enum that gets placed inside an ElementBox. This allows the framework to store data on behalf of the Element implementation, such as sizes, bounds, and also implementation-specific LayoutState and PaintState types. This makes it easier to reason about which data is available in each Element method.
2021-03-21 20:54:23 -06:00
Nathan Sobo
292b41ad57
Start on metal rendering infrastructure
2021-03-20 09:38:36 -06:00
Nathan Sobo
605bdd62dd
WIP: Start on rendering scenes via presenter
2021-03-18 21:33:16 -06:00
Nathan Sobo
e809d6119a
Return tasks from spawn and spawn_stream
...
Also, eliminate the background spawning methods. We can spawn futures
on the executor and then spawn those on the app if we need to wait for
the result of running one.
2021-03-18 20:10:32 -06:00
Nathan Sobo
f849857309
Handle command line arguments and populate worktree
2021-03-18 17:54:35 -06:00
Nathan Sobo
9bab29c72f
Get workspace module in and compiling
2021-03-18 15:52:46 -06:00
Nathan Sobo
23308e17a9
WIP on rebuilding with extracted UI framework
2021-03-18 13:13:31 -06:00
Nathan Sobo
356bc41752
WIP
2021-03-09 21:00:51 -07:00
Nathan Sobo
a015c61337
Add context predicate parser
2021-03-09 19:33:19 -07:00
Nathan Sobo
222f9d373d
WIP
2021-02-20 16:05:36 -07:00
Nathan Sobo
b400449a58
Start rebuilding with a cleanly-separated UI framework
2021-02-20 10:02:34 -07:00