Isaac Clayton
e9b87f3dc3
Factor out buffer code
2022-07-07 15:20:27 +02:00
Isaac Clayton
fbaff615a3
Get JSON LSP running, still work to be done
2022-07-07 15:20:27 +02:00
Isaac Clayton
38d7321511
Remove non-WASI code
2022-07-07 15:20:25 +02:00
Isaac Clayton
805c86b781
Add support for variadic functions
2022-07-07 15:19:03 +02:00
Isaac Clayton
17d15b2f08
Get Wasi working
2022-07-07 15:19:02 +02:00
Isaac Clayton
b84948711c
Start moving code from Zed to plugin
2022-07-07 15:17:02 +02:00
Isaac Clayton
7dd3114a7a
Start switching JSON LSP adapter to plugin (take 2)
2022-07-07 15:16:59 +02:00
Isaac Clayton
35b2eff29c
Update plugin dependencies
2022-07-07 15:11:51 +02:00
Isaac Clayton
0cf64d6fba
Clean up impl a bit
2022-07-07 15:11:51 +02:00
Isaac Clayton
f6a9558c5c
Work on macro binding generation, some cleanup needed, rename runner to plugin
2022-07-07 15:11:51 +02:00
Isaac Clayton
dda6dcb3b8
Quick documentation pass
2022-07-07 15:11:51 +02:00
Isaac Clayton
6768713de2
Get basic Wasm runtime running
2022-07-07 15:11:51 +02:00
Isaac Clayton
f6b6d19041
Add wasmtime and fix zstd version conflict
2022-07-07 15:01:15 +02:00
Isaac Clayton
4003037ca8
Documented code, got basic example working
2022-07-07 15:01:09 +02:00
Isaac Clayton
13e0ad7253
Get Runtime working...
2022-07-07 14:55:46 +02:00
Isaac Clayton
265be4a2fb
Clean up interface a bit
2022-07-07 14:55:46 +02:00
Isaac Clayton
8293b6971d
Start sketching out runner runtime
2022-07-07 14:55:46 +02:00
Antonio Scandurra
52b8efca1b
Add integration test to exercise formatting via external command
2022-07-07 11:53:32 +02:00
Antonio Scandurra
b91d44b448
Respond with a debug version of the error in rpc Client
2022-07-07 11:52:56 +02:00
Antonio Scandurra
c6254247c3
Allow providing an external format in format_on_save
setting
2022-07-07 11:04:03 +02:00
Mikayla Maki
baa011ccf4
added inline hint
2022-07-06 17:57:32 -07:00
Mikayla Maki
b2fa511acd
GPUI change proposals
2022-07-06 17:52:20 -07:00
Mikayla Maki
778cfd94d8
Added basic selections
2022-07-06 17:37:12 -07:00
Keith Simmons
c139f1e6b6
combine branches of events in from_native
2022-07-06 16:59:58 -07:00
Keith Simmons
bcb553f233
Combine platform mouse events to use common MouseEvent struct and remove MouseDragged event in favor of MouseMoved
2022-07-06 16:37:56 -07:00
Max Brunsfeld
70cf6b4041
Give nav buttons a background on hover
2022-07-06 16:33:44 -07:00
Max Brunsfeld
4e8dbbfd4b
Add test for pane nav history covering notification of pane's toolbar
2022-07-06 16:29:11 -07:00
Max Brunsfeld
a378ec49ec
Enable and disable nav buttons based on pane's navigation stack
...
Also, make the `NavHistory` type private to the `workspace` crate.
Expose only the `ItemNavHistory` type, via a method on Pane called
`nav_history_for_item`.
2022-07-06 15:46:43 -07:00
Keith Simmons
686e57373b
pull event data out into individual Event structs
2022-07-06 15:36:42 -07:00
Max Brunsfeld
7e5cf6669f
Add forward and backward navigation buttons to toolbar
2022-07-06 14:05:24 -07:00
Mikayla Maki
cba5b4ac11
Began working on selections, refactored colors
2022-07-06 13:44:30 -07:00
Keith Simmons
2d126c7c5c
add terminal modal which can be displayed and dismissed while preserving the terminal state
2022-07-06 13:20:54 -07:00
Max Brunsfeld
bbe325930f
0.45
2022-07-06 11:32:21 -07:00
Max Brunsfeld
a858b3fda9
Treat window deactivation as a focus change for the purpose of autosave
2022-07-06 11:20:29 -07:00
Max Brunsfeld
00d1c2e56f
Merge pull request #1291 from zed-industries/fix-autosave-on-close
...
Fix autosave when closing a tab
2022-07-06 10:54:44 -07:00
Antonio Scandurra
2c1906d710
Normalize line endings when parsing completions
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-07-06 19:32:45 +02:00
Antonio Scandurra
d3db700db4
Fix panic on paste when editing with auto-indent
...
Instead of accepting text as it's input by the user, we will read it
out of the edit operation after it gets sanitized by the buffer.
2022-07-06 19:00:11 +02:00
Antonio Scandurra
ab4931da65
Prevent autosave for deleted files
2022-07-06 17:25:33 +02:00
Antonio Scandurra
9286893177
Save item when closing it if autosave on focus change is enabled
2022-07-06 17:04:41 +02:00
Antonio Scandurra
5e00df6267
Move autosave tests down into Workspace
2022-07-06 16:55:05 +02:00
Antonio Scandurra
b937c1acec
Move autosave logic up into Workspace
and Pane
2022-07-06 16:33:22 +02:00
Antonio Scandurra
980730a4e1
Report whether a view was focused or blurred when observing focus
2022-07-06 15:53:40 +02:00
Antonio Scandurra
573dd29882
v0.44.1
2022-07-06 12:42:41 +02:00
Antonio Scandurra
13c9b1778b
Replace lone carriage returns with newlines
2022-07-06 11:00:56 +02:00
Antonio Scandurra
113eb9b94f
Don't slice midway through multi-byte char when detecting line ending
2022-07-06 10:21:30 +02:00
Max Brunsfeld
5e2306d0e0
0.44
2022-07-05 17:37:04 -07:00
Max Brunsfeld
77d688b4fb
Merge pull request #1287 from zed-industries/handle-carriage-returns-in-edits
...
Fix crash when pasting text with CRLF line endings
2022-07-05 17:35:38 -07:00
Max Brunsfeld
7e9beaf4bb
Strip carriage returns from all text in text::Buffer
...
* Moving the logic from Rope to text::Buffer makes it easier
to keep the Rope in sync with the fragment tree.
* Removing carriage return characters is lossier, but is much
simpler than incrementally maintaining the invariant that
there are no carriage returns followed by newlines. We may
want to do something smarter in the future.
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-07-05 17:25:09 -07:00
Mikayla Maki
4d88088ca4
Merge pull request #1286 from zed-industries/grid-renderer
...
Switch from line-and-character renderer to a direct grid renderer
2022-07-05 17:16:00 -07:00
Mikayla Maki
03cbb94057
changed renderer
2022-07-05 17:10:01 -07:00
Keith Simmons
ed52f8a8a3
WIP making paste better
2022-07-05 16:52:56 -07:00
Keith Simmons
58e57d0150
Merge pull request #1271 from zed-industries/matching-bracket-highlights
...
Highlight matching bracket when newest selection head is on a bracket
2022-07-05 16:51:46 -07:00
Keith Simmons
229bc94ac3
remove partial edit from normal.rs
2022-07-05 16:48:12 -07:00
Keith Simmons
956dd0c2bc
fix error with reverse range marked text ranges
2022-07-05 16:44:45 -07:00
Keith Simmons
1f3dc2f534
highlight both brackets, only when empty selection, and add test
2022-07-05 15:19:05 -07:00
Mikayla Maki
342d38a9fb
Working on grid rendering
2022-07-05 15:10:34 -07:00
Mikayla Maki
e14b3db68a
Merge pull request #1285 from zed-industries/fix-terminal-backspace
...
Set up basic enviroment variables
2022-07-05 15:08:16 -07:00
Mikayla Maki
b4dc92dddc
Set up basic enviroment variables
2022-07-05 15:02:58 -07:00
Max Brunsfeld
116fa92e84
Change Buffer constructors to construct the History internally
2022-07-05 14:51:52 -07:00
Max Brunsfeld
1add2d270e
Merge pull request #1282 from zed-industries/context-menu-below-project-panel-entries
...
Select the last worktree root when right-clicking below all project panel entries
2022-07-05 13:33:50 -07:00
Max Brunsfeld
4aa19c1a7f
Select the last root when right-clicking below all project panel entries
2022-07-05 13:21:41 -07:00
Max Brunsfeld
8048758990
Add application menu item to open default key bindings
2022-07-05 12:41:38 -07:00
Max Brunsfeld
ea1f6d6e00
0.43
2022-07-05 10:46:22 -07:00
Antonio Scandurra
f1ffcb626a
Fix panics in database tests
2022-07-05 17:59:40 +02:00
Antonio Scandurra
f09d265054
Remove non-determinism from autosave after delay
2022-07-05 17:54:54 +02:00
Antonio Scandurra
a5c39acf4c
Always finish previous autosave before starting a new one
2022-07-05 17:51:01 +02:00
Antonio Scandurra
ebf4bae173
Add unit test for autosave
2022-07-05 17:51:01 +02:00
Antonio Scandurra
d43e8b270a
Add unit test for ViewContext::observe_window_activation
2022-07-05 17:51:01 +02:00
Antonio Scandurra
885172f4dd
Honor Autosave
setting in Editor
2022-07-05 17:51:01 +02:00
Antonio Scandurra
d589017a80
Add ViewContext::observe_window_activation
2022-07-05 17:51:01 +02:00
Antonio Scandurra
7a6010e7dc
Fix unsafe memory access when converting entity handles
2022-07-05 17:50:57 +02:00
Antonio Scandurra
4b533c339d
Introduce a new, language-overridable Autosave
setting
2022-07-05 09:25:22 +02:00
Antonio Scandurra
eac76df0ac
Transmit new line ending when buffer is reloaded
2022-07-05 08:01:14 +02:00
Max Brunsfeld
6f49f4a9cf
Recalculate Metal layer's drawable size when window's scale factor changes
2022-07-04 15:14:08 -07:00
Max Brunsfeld
f82dda9981
Merge pull request #1276 from zed-industries/handle-carriage-returns
...
Handle files with CRLF (windows-style) line endings
2022-07-04 13:40:28 -07:00
Max Brunsfeld
c1b886b0ce
Normalize line endings consistently between fake and real FS
2022-07-04 13:00:12 -07:00
Max Brunsfeld
9804c683c0
Rename NewlineStyle -> LineEnding
2022-07-04 12:47:40 -07:00
Max Brunsfeld
0ba12eab22
Handle a file's line endings changing on disk
2022-07-04 12:30:28 -07:00
Max Brunsfeld
b0efa4f5c1
Move project tests into their own file
2022-07-04 12:00:15 -07:00
Max Brunsfeld
771a834d84
Delete the autoclosing bracket when deleting the opening bracket
2022-07-04 10:46:35 -07:00
Antonio Scandurra
d80ecb6f98
Ignore carriage returns when reloading buffer
2022-07-04 17:40:35 +02:00
Antonio Scandurra
3480b50920
Detect buffer newline style and honor it when saving
2022-07-04 17:40:26 +02:00
Antonio Scandurra
f9bad2d81d
Replace \r and \r\n with \n when indexing text into the rope
2022-07-04 15:37:40 +02:00
Antonio Scandurra
9a6092dd1b
Support hitting enter on numpad
2022-07-04 10:01:56 +02:00
Antonio Scandurra
d3b9eca791
Merge branch 'main' into user-timeline
2022-07-04 09:23:16 +02:00
Antonio Scandurra
0b2452f666
Merge pull request #1265 from zed-industries/worktree-performance
...
Fix problems that arise when large numbers of files change on disk
2022-07-04 09:19:18 +02:00
Antonio Scandurra
aca757a02d
Don't poll snapshot if processing events unless user manually changed fs
2022-07-04 08:10:31 +02:00
Keith Simmons
9b36e3d009
Highlight matching bracket when newest selection head is on a bracket
2022-07-01 15:06:16 -07:00
Mikayla Maki
6f5cef1456
Merge pull request #1269 from zed-industries/terminal-fr
...
Update terminal to use the editor's cursor rendering and fix a couple bugs
2022-07-01 14:59:23 -07:00
Mikayla Maki
6ac5cc0d2a
Fixed cursor positioning bugs in multi-byte charcters. Still have at least one though :/
2022-07-01 14:53:19 -07:00
Mikayla Maki
62939322d3
rendering cursor correctly
2022-07-01 13:03:26 -07:00
Mikayla Maki
f4ac694ad8
Fixed debug offset I added to terminal
2022-07-01 11:48:50 -07:00
Mikayla Maki
ce60a9a50a
Cleaned up debugging code
2022-07-01 11:39:43 -07:00
Mikayla Maki
8e4c54ab61
Checkpointing after some debugging
2022-07-01 11:38:12 -07:00
Keith Simmons
1572fef1c4
Merge pull request #1266 from zed-industries/fix-zombie-ra
...
Fix Zombie Language Servers
2022-07-01 10:20:27 -07:00
Antonio Scandurra
cf05738f68
Remove redundant calls to poll_snapshot
2022-07-01 14:40:39 +02:00
Antonio Scandurra
a42399bcf3
Grab latest snapshot when invoking LocalWorktree::poll_snapshot
2022-07-01 14:36:51 +02:00
Antonio Scandurra
833aa726d5
🎨
2022-07-01 14:11:21 +02:00
Antonio Scandurra
4d3c708387
Add simulate_random_delay
to every implemented method in FakeDb
2022-07-01 12:05:29 +02:00
Antonio Scandurra
d36a4888db
Ensure worktrees have been sent before responding with definitions
...
Changing the frequency at which we update worktrees highlighted a
problem in the randomized tests that was causing clients to receive
a definition to a worktree *before* observing the registration of
the worktree itself. This was most likely caused by #1224 because
the scenario that pull request enabled was the following:
- Guest requests a definition pointing to a non-existant worktree
- Server forwards the request to the host
- Host sends an `UpdateProject` message
- Host sends a response to the definition request
- Server observes the `UpdateProject` message and tries to acquire
the store
- Given that we're waiting, the server goes ahead to process the
response for the definition request, responding *before*
`UpdateProject` is forwarded
- Server finally forwards `UpdateProject` to the guest
This commit ensures that, after forwarding a project request and getting a
response, we acquire a lock to the store again to ensure the project still
exists. This has the effect of ordering the forwarded request *after* any
message that was received prior to the response and for which we are still
waiting to acquire a lock to the store.
2022-07-01 11:45:30 +02:00
Mikayla Maki
ae836e1465
Fixed a major bug and now use the same cursor paint logic as the editor
2022-06-30 20:43:51 -07:00
Mikayla Maki
64d3dc32d2
Update terminal.rs
...
Whoopsies
2022-06-30 20:30:52 -07:00
Mikayla Maki
04e802874d
Merge pull request #1267 from zed-industries/terminal-fr
...
This pull request is small and doesn't include many changes to any existing functionality. In the interest of removing blockers ASAP, I will merge.
2022-06-30 20:12:08 -07:00
Mikayla Maki
bcf5351e64
Refactored and commented code to be my expressive
2022-06-30 20:02:16 -07:00
Mikayla Maki
092284b062
Fully functional background colors :D
2022-06-30 19:21:42 -07:00
Keith Simmons
ebe733a393
Restart language server using original root path rather than the path of the buffer restarted from
2022-06-30 19:11:21 -07:00
Max Brunsfeld
8a105bf12f
WIP - try representing snapshots_to_send as a watch
2022-06-30 18:04:31 -07:00
Keith Simmons
832cc3dd19
Clear language server id for all worktrees when stopping a language server
2022-06-30 17:50:30 -07:00
Keith Simmons
6b50dda28a
Fix failing test due to change in stop_language_server function
2022-06-30 17:40:50 -07:00
Keith Simmons
38ca4aab31
add assertion to test_definition ensuring no new language servers are created
2022-06-30 17:24:32 -07:00
Keith Simmons
37b75132b7
Minor comment change
2022-06-30 17:18:28 -07:00
Keith Simmons
f495185a4e
add a comment explaining the three language server collections on project
2022-06-30 17:09:23 -07:00
Keith Simmons
5e7651e92e
Kill starting servers as well as currently running ones
2022-06-30 17:00:29 -07:00
Keith Simmons
db05e32389
Prevent creating extra language server instances if there already exists one for that workspace
2022-06-30 16:46:26 -07:00
Max Brunsfeld
5fdbc38f46
Don't update worktrees' snapshots in the middle of processing fs events
2022-06-30 15:46:31 -07:00
Max Brunsfeld
b81135e10b
Stop waiting for snapshot updates when disconnected from host
2022-06-30 15:07:40 -07:00
Max Brunsfeld
c5351a1276
Ensure that usernames, user ids, and client ids match in random collaboration test
...
This makes the logs easier to interpret
2022-06-30 14:51:22 -07:00
Keith Simmons
66486870aa
Fix vim editor focus selection issues, cancel vim operators on escape and unbound keys
2022-06-30 12:36:02 -07:00
Mikayla Maki
2ee57c1512
Merge pull request #1255 from zed-industries/terminal-fr
...
WIP: Terminal
2022-06-30 11:30:28 -07:00
Antonio Scandurra
4ee8ee5a06
Ensure newer snapshots are always detected in wait_for_snapshot
2022-06-30 18:04:19 +02:00
Antonio Scandurra
484af8c7c4
Split worktree updates when a peer joins an already-shared project
2022-06-30 16:49:56 +02:00
Antonio Scandurra
845c79ee05
Respond to join project request before sharing project completes
...
This ensures the guest doesn't observe a huge delay when joining.
2022-06-30 14:29:06 +02:00
Antonio Scandurra
09bb3ddeb8
Split worktree updates and only send 256 entries at a time
2022-06-30 14:06:41 +02:00
Antonio Scandurra
5df0a6a425
Coalesce as many fs events as possible before processing them
2022-06-30 10:20:46 +02:00
Antonio Scandurra
b96962005e
Keep looking for a newer snapshot before broadcasting it
2022-06-30 09:54:14 +02:00
Mikayla Maki
06107afdd4
Added background colors and matched the cursor color
2022-06-29 18:50:08 -07:00
Mikayla Maki
5bc0acd88c
Directly qualified function makes cargo happy
2022-06-29 18:34:02 -07:00
Mikayla Maki
ab5247c62e
Actually correctly flag tests
2022-06-29 18:31:52 -07:00
Mikayla Maki
75a4556244
Fixed unused import
2022-06-29 18:29:36 -07:00
Mikayla Maki
cde11fe4e7
Support for all 24 bits of colors
2022-06-29 18:27:27 -07:00
Max Brunsfeld
336d69fc61
Update contacts panel test to reflect new RPC message flow
2022-06-29 17:58:18 -07:00
Max Brunsfeld
b5d862abfe
Only send one UpdateProject msg when changing project's online status
2022-06-29 17:58:02 -07:00
Max Brunsfeld
ae61a24ad3
Show LSP status and auto update status in one status bar indicator
2022-06-29 16:54:01 -07:00
Mikayla Maki
1c038b81ab
Finished current working directory stuff
2022-06-29 16:22:05 -07:00
Max Brunsfeld
87124b959d
Merge pull request #1257 from zed-industries/vscode-pane-bindings
...
Adjust pane, tab, panel management bindings to match VS Code
2022-06-29 15:49:25 -07:00
Max Brunsfeld
67414deb82
Add split actions to the application menu
2022-06-29 15:40:32 -07:00
Max Brunsfeld
581c9af395
Adjust pane, tab, panel management bindings to match VS Code
2022-06-29 15:33:46 -07:00
Mikayla Maki
bc728c160d
Properly fixed the issues with the grid :D
2022-06-29 13:19:25 -07:00
Mikayla Maki
93dfc63f1c
Added a test with max, cludged a fix for resizing
2022-06-29 13:07:44 -07:00
Keith Simmons
c9d23dba6c
Update command palette filter from vim mode more proactively
2022-06-29 11:58:12 -07:00
Mikayla Maki
ff44ddc077
Fixed warnings 😓
2022-06-29 09:38:02 -07:00
Antonio Scandurra
5eaa45363d
Order by total duration in Db::get_top_users_activity_summary
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-29 18:28:43 +02:00
Antonio Scandurra
7bae759a02
Send extension counts when metadata changes
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-29 17:58:11 +02:00
Antonio Scandurra
d1cdacdf14
Skip ignored entries when recording worktree extensions
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-29 17:00:16 +02:00
Antonio Scandurra
639cd71a3b
Record worktree extensions every 5 minutes
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-29 16:58:19 +02:00
Antonio Scandurra
f9e0fec396
Maintain extension counts on local worktrees
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-29 16:38:24 +02:00
Antonio Scandurra
09f4262fd4
Don't share a project unless it's online and we're allowing a request
2022-06-29 15:16:55 +02:00
Antonio Scandurra
e3cfc7b3ce
Register project activity for offline projects as well
2022-06-29 14:55:04 +02:00
Antonio Scandurra
a52de770b1
Increase coalesce threshold in Db::get_user_activity_timeline
2022-06-29 14:26:02 +02:00
Mikayla Maki
db95c0d0e1
Removed dead clear code
2022-06-28 18:45:26 -07:00
Mikayla Maki
e3834409dd
Fixed focus issues with scrolling and input
2022-06-28 18:28:13 -07:00
Mikayla Maki
38ed70d5cc
Added theme support
2022-06-28 17:07:18 -07:00
Mikayla Maki
f28fb5797f
Fixed scrolling and cursor location
2022-06-28 15:45:27 -07:00
Mikayla Maki
24d671ed3f
First bits of polish
2022-06-28 15:45:27 -07:00
Mikayla Maki
2b1fa07e89
Working on selection
2022-06-28 15:45:27 -07:00
Mikayla Maki
9e55c60b6a
working on selection and scrolling in terminals
2022-06-28 15:45:27 -07:00
Mikayla Maki
f58a15bbb1
Removed final stuff from theme.rs
2022-06-28 15:45:27 -07:00
Mikayla Maki
31bc758f35
Forgot to commit last night
2022-06-28 15:45:27 -07:00
Mikayla Maki
b36bf0c56d
Finally on solid conceptual ground, able to move ahead confidently with Alacritty code
2022-06-28 15:45:27 -07:00
Max Brunsfeld
14d7375149
Add rest API for user activity timeline
2022-06-28 15:40:48 -07:00
Max Brunsfeld
1d10e45282
🎨 Tweak some names dealing with user activity
...
* Rename `project_activity_summary` to `top_users_activity_summary`
to make clearer the distinction between it and the per-user summary.
* Rename `user_activity_summary` to `user_activity_timeline`, since
its output is structured a bit differently than the courser-grained
"summary" returned by the top-user query.
* Rename `ActivityDuration` -> `ActivityPeriod`
2022-06-28 15:37:56 -07:00
Antonio Scandurra
5cc5e15f4d
Implement Db::summarize_user_activity
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-28 15:11:34 -07:00
Max Brunsfeld
806da0e9ba
0.42.0
2022-06-28 14:33:19 -07:00
Keith Simmons
26215a0d6e
Merge pull request #1254 from zed-industries/command-palette-filter
...
Command palette filter
2022-06-28 14:31:21 -07:00
Max Brunsfeld
fc3ec6966b
Merge pull request #1235 from zed-industries/diagnostics-in-hidden-worktrees
...
Allow diagnostics to be published for hidden worktrees
2022-06-28 14:29:41 -07:00
Max Brunsfeld
8fe6809932
Exclude hidden worktrees from project's diagnostic summaries
2022-06-28 14:23:24 -07:00
Keith Simmons
cea7d3f5a2
add test for filter
2022-06-28 13:45:34 -07:00
Keith Simmons
f6292437fa
Add command palette filter global and update it when vim mode is enabled/disabled
2022-06-28 13:35:43 -07:00
Max Brunsfeld
f05e94d0de
Allow diagnostics to be published for hidden worktrees
2022-06-28 13:31:04 -07:00
Max Brunsfeld
fae1cc36d6
In most languages, use prev non-empty line as basis for preserving indent
2022-06-28 12:21:54 -07:00
Antonio Scandurra
431d71fe92
v0.41.0
2022-06-28 11:21:06 +02:00
Antonio Scandurra
a53de67e6f
Merge pull request #1247 from zed-industries/ignore-non-created-progress-tokens
...
Ignore tokens that were not created via `WorkDoneProgressCreate`
2022-06-28 10:14:42 +02:00
Antonio Scandurra
6cf9514e00
Merge pull request #1246 from zed-industries/python-autoindent
...
Fix Python auto-indent using new auto-indent features
2022-06-28 10:14:22 +02:00
Antonio Scandurra
ca1d0a6e59
Ignore tokens that were not created via WorkDoneProgressCreate
...
With the new version of rust-analyzer, we were seeing stray `WorkDoneProgress::End`
messages that create an imbalance in the `pending_diagnostic_updates` that never
resolves. This was causing the diagnostic status bar item to never update because
we wouldn't emit `DiskBasedDiagnosticsStarted` nor `DiskBasedDiagnosticsFinished`.
This commit fixes the above situation by only acknowledging progress report for tokens
that have explicitly been created via the `WorkDoneProgressCreate` request, as stated
by the protocol.
In addition to that, we are replacing the `pending_diagnostic_updates: isize` with
a `has_pending_diagnostic_updates: bool`. We added it at some point to prevent a similar
issue where we would observe begin/end reports in a seemingly random order, which would cause
us to permanently display a `checking...` message in the status bar. I believe this commit
fixes that as well because the `isize` was just a less general solution for the same
underlying issue. As the protocol states: "the token provided in the create request should
only be used once (e.g. only one begin, many report and one end notification should be sent
to it)."
2022-06-28 10:08:43 +02:00
Antonio Scandurra
c127eb56ce
Merge pull request #1241 from zed-industries/reopen-closed-item
...
Introduce `pane::ReopenClosedItem` bound to `cmd-shift-t`
2022-06-28 08:09:03 +02:00
Antonio Scandurra
57f34c6992
💄
2022-06-28 08:04:39 +02:00
Max Brunsfeld
929615964d
Add new indentation features to support Python
2022-06-27 22:34:14 -07:00
Keith Simmons
1eb8351440
add hover popover setting
2022-06-27 16:21:22 -07:00
Keith Simmons
a477733bcb
Address hover panic and add hint to install go when language server failed to install
2022-06-27 15:48:15 -07:00
Keith Simmons
bc82d98ae5
Merge pull request #1237 from zed-industries/jump-to-definition
...
Mouse jump to definition
2022-06-27 15:20:07 -07:00
Max Brunsfeld
095f18d661
Upgrade Tree-sitter, Tree-sitter-python
2022-06-27 15:12:31 -07:00
Keith Simmons
f73af85218
bump protocol version and fix panic from storing display points instead of anchors
2022-06-27 15:10:36 -07:00
Keith Simmons
a0577f5f46
Fix usage of existing definitions
2022-06-27 10:07:44 -07:00
Antonio Scandurra
c6e7ae528f
Add test for reopening closed items
2022-06-27 17:59:25 +02:00
Antonio Scandurra
0652542f60
Introduce pane::ReopenClosedItem
bound to cmd-shift-t
2022-06-27 17:44:33 +02:00
Antonio Scandurra
7bfd7093b1
Don't stop scanning directory if reading one of the children errors
2022-06-27 08:40:37 +02:00
Keith Simmons
a8ea1048cf
Change mouse cursor when link is visible
2022-06-24 21:55:57 -07:00
Keith Simmons
a190eb0537
fix rebase merge error
2022-06-24 15:11:57 -07:00
Keith Simmons
92ab107fc9
working jump to definition with tests
2022-06-24 15:09:31 -07:00
Keith Simmons
848445455d
Working underline based on symbol origin
2022-06-24 15:05:35 -07:00
Keith Simmons
4286a9b564
wip
2022-06-24 15:03:24 -07:00
Keith Simmons
f78b55f92d
wip
2022-06-24 15:03:24 -07:00
Nathan Sobo
4da3005b5c
Allow users with no invites to be fetched from the API
2022-06-24 09:57:52 -06:00
Antonio Scandurra
b0eb692760
WIP
2022-06-24 17:21:58 +02:00
Antonio Scandurra
9fcebe783c
Merge pull request #1236 from zed-industries/reduce-server-memory-footprint
...
Reduce memory footprint on server
2022-06-24 09:34:04 +02:00
Antonio Scandurra
fc5517b6be
Gather metrics only when /metrics
endpoint is retrieved
2022-06-24 09:28:52 +02:00
Antonio Scandurra
a04adbcac1
Don't trace message payload
2022-06-24 09:27:22 +02:00
Max Brunsfeld
4f643baeee
0.40.0
2022-06-23 13:29:32 -07:00
Max Brunsfeld
c91451a1b2
Merge pull request #1234 from zed-industries/fix-editor-cloning
...
Clone fold and selection state correctly when splitting an editor
2022-06-23 13:27:40 -07:00
Max Brunsfeld
fb2a7787a1
Clone fold and selection state correctly when splitting an editor
2022-06-23 13:15:50 -07:00
Keith Simmons
755636d10e
Use NonZeroU32 to ensure settings tabsize cannot be zero
2022-06-23 12:55:38 -07:00
Max Brunsfeld
1720933597
Merge pull request #1228 from zed-industries/python
...
Add Python support
2022-06-23 11:25:18 -07:00
Max Brunsfeld
dc056fc46f
Treat .pyi files as Python
2022-06-23 11:14:11 -07:00
Max Brunsfeld
4d4db6ec4b
Syntax-highlight Python project symbols and completions
2022-06-23 11:14:01 -07:00
Max Brunsfeld
981e53784d
Upgrade tree-sitter-python for error recovery improvement
2022-06-23 11:13:30 -07:00
Antonio Scandurra
555847449b
Use BTreeMap
in Server
so we release memory when maps are cleared
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-23 18:02:17 +02:00
Antonio Scandurra
2cb8a3ccfb
Don't override top-level settings with language defaults
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-23 16:40:57 +02:00
Antonio Scandurra
90102f22fd
Improve testing of window edit state
2022-06-23 14:41:47 +02:00
Antonio Scandurra
a21dbdd0d6
Update window edited status when pane item is removed
2022-06-23 14:28:10 +02:00
Antonio Scandurra
2dae0ddcdb
Add test to verify closing window via the mouse
2022-06-23 14:18:53 +02:00
Antonio Scandurra
d9b5357234
Always prevent window from closing and manually invoke Workspace::close
...
This ensures we ask the user to save their state if there are unsaved
changes.
2022-06-23 11:44:14 +02:00
Antonio Scandurra
06033d7fa9
Introduce ViewContext::on_window_should_close
...
This is a new callback that can be used to interrupt closing the window
when the user has unsaved changes.
2022-06-23 11:43:19 +02:00
Antonio Scandurra
ca8ddcdeec
Set window's edited = true
when there are unsaved changes
2022-06-23 10:59:50 +02:00
Antonio Scandurra
01349e1d42
Fix panic when Text
contained carriage returns
2022-06-23 10:21:21 +02:00
Max Brunsfeld
11f73bfa4e
Integrate pyright language server
2022-06-22 16:58:19 -07:00
Max Brunsfeld
c0dbd8f9b9
Add python outline and bracket queries
2022-06-22 16:28:09 -07:00
Max Brunsfeld
074caa09c2
Make python indent query more general
...
Upgrade Tree-sitter for a query bugfix that I found while
writing this indent query.
2022-06-22 16:18:52 -07:00
Max Brunsfeld
4cb68b2966
Prioritize keepalive pings over incoming message handling in Peer
2022-06-22 14:44:05 -07:00
Max Brunsfeld
36f8c68099
Remove redundant run_until_parked call in Foreground::advance_clock
2022-06-22 14:43:21 -07:00
Max Brunsfeld
a14b626927
Enable env log in peer tests
2022-06-22 14:42:20 -07:00
Antonio Scandurra
2d8ffbdfa2
Don't wait for host's worktree updates if they disconnected
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-22 19:45:55 +02:00
Antonio Scandurra
48ff443d10
Remove stray log statement when contacts are updated
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-22 19:40:52 +02:00
Antonio Scandurra
f2d134917e
Remove non-determinism from Peer
caused by smol's timeout
helper
2022-06-22 18:39:12 +02:00
Antonio Scandurra
071d940a88
Ensure receive timeout is triggered before waiting on disconnection
2022-06-22 18:02:42 +02:00
Antonio Scandurra
9b521d6097
Use Arc<Deterministic>
to understand which await points are parking
2022-06-22 17:39:34 +02:00
Antonio Scandurra
62521531a6
💄
2022-06-22 15:06:22 +02:00
Antonio Scandurra
fb2590d913
Use a FuturesUnordered
to process foreground messages
...
This prevents deadlocks when e.g., client A performs a request to client B and
client B performs a request to client A. If both clients stop processing further
messages until their respective request completes, they won't have a chance to
respond to the other client's request and cause a deadlock.
This arrangement ensures we will attempt to process earlier messages first, but fall
back to processing messages arrived later in the spirit of making progress.
2022-06-22 15:04:17 +02:00
Antonio Scandurra
6eb3e72c36
Add test demonstrating hang when peers wait on each other's response
2022-06-22 14:41:14 +02:00
Antonio Scandurra
2f09a4af16
Update project metadata when releasing a worktree's weak handle
...
When a project was getting unshared, we would remove invisible worktrees
from the project's state without notifying the server, which was causing
the randomized tests to fail.
This commit calls `Project::remove_worktree` when a worktree's handle gets
released. Doing so ensures that we update both our local metadata database
as well as the state on the server.
2022-06-22 10:26:10 +02:00
Max Brunsfeld
34351c0a51
Start work on Python support
2022-06-21 17:04:54 -07:00
Keith Simmons
484e98c0bb
Merge pull request #1216 from zed-industries/hover-context-menu-fix
...
Don't trigger hover popover action when mouse is over context menu
2022-06-21 13:43:24 -07:00
Keith Simmons
19feb627d8
Add comment linking to long term plan
2022-06-21 12:38:27 -07:00
Max Brunsfeld
dc8d5f4ae3
Merge pull request #1217 from zed-industries/fix-lsp-statuses-for-guests
...
Report running language servers when sharing project for the first time
2022-06-21 11:50:58 -07:00
Antonio Scandurra
83f38aa1ba
Merge pull request #1215 from zed-industries/suggest-upgrade-on-reconnect
...
Show upgrade required message when reconnecting after a protocol change
2022-06-21 20:41:36 +02:00
Antonio Scandurra
69aa3d848e
Report running language servers when sharing project for the first time
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-21 20:39:54 +02:00
Max Brunsfeld
e9d19457d6
Add failing test for replication of lsp statuses
...
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-21 11:27:08 -07:00
Keith Simmons
057a7ec989
Don't trigger hover popover action when mouse is over context menu
2022-06-21 11:23:25 -07:00
Max Brunsfeld
30d75620f1
Fix error when worktree has no file extensions
...
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-21 11:02:13 -07:00
Keith Simmons
fb881b2eda
hide hover on editor blur
2022-06-21 10:37:59 -07:00
Max Brunsfeld
6a2c5e0dc1
Show upgrade required message when reconnecting after a protocol change
...
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-21 10:26:34 -07:00
Antonio Scandurra
db77601aa2
Expose project metadata via GET /project_metadata
2022-06-21 18:06:31 +02:00
Antonio Scandurra
ebaf3224fd
Exclude staff from activity recording
2022-06-21 16:07:59 +02:00
Antonio Scandurra
c90e8c08a6
Accept a datetime range when querying project activity
2022-06-21 14:03:10 +02:00
Antonio Scandurra
95a629d200
Unregister project from db when user disconnects or manually does so
2022-06-21 10:37:34 +02:00
Antonio Scandurra
7acebc4eb8
Register projects in the database and record worktree extensions
2022-06-21 10:29:26 +02:00
Max Brunsfeld
44160869eb
Add an API that returns the most active users and the projects where they've been active
2022-06-20 19:46:37 -07:00
Antonio Scandurra
0e20782b53
Highlight files ending in mdx
as Markdown
...
This is clearly a stopgap solution but it'll make our life easier
while hacking on zed.dev.
2022-06-20 15:53:45 +02:00
Antonio Scandurra
d425d9fa64
Allow wrapping selected text with '
in Rust
2022-06-20 11:56:46 +02:00
Antonio Scandurra
6040429f93
Auto-close ' for TypeScript and don't do so for Rust
2022-06-20 11:55:40 +02:00
Antonio Scandurra
d5efae609e
Respect close
in language configuration when autoclosing bracket
2022-06-20 11:50:44 +02:00