Commit Graph
268 Commits
Author SHA1 Message Date
Max Brunsfeld c4d825cf33 Get simple unit test passing for soft-wrap in DisplayMap 2021-07-20 15:22:11 -07:00
Max BrunsfeldandNathan Sobo e8d2dda42f Avoid holding executor's state lock while parked
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-20 11:37:02 -07:00
Nathan SoboandMax Brunsfeld 31d248318a Replace DeterministicExecutor::reset with forbid_parking
There's really no point calling reset if we plan on parking afterwards.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-07-20 12:28:04 -06:00
Nathan Sobo e438010a18 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
7efff39465 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
Max BrunsfeldandNathan Sobo 277b64a5f0 Start work on WrapMap::chunks_at
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-19 16:23:56 -07:00
Nathan Sobo 2cc93834d8 WIP 2021-07-19 13:59:07 -06:00
Max Brunsfeld 51320e815c Implement FontSystem::wrap_line 2021-07-16 17:14:43 -07:00
Antonio Scandurra 53311059e1 WIP 2021-07-16 18:43:50 +02:00
Antonio ScandurraandNathan Sobo 34cda642ae Start on adding a randomized test for BackgroundWrapper
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-16 17:53:23 +02:00
4634097115 Use an unbounded channel for waking executor::Deterministic
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-07-13 18:46:48 +02:00
bf172f29f2 Use the same background executor for spawning CPU intensive tasks
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-07-13 18:13:25 +02:00
Antonio Scandurra 5e6952fa71 Use an executor::Background in AppContext::thread_pool 2021-07-13 14:06:38 +02:00
Antonio Scandurra 350e3f03fb Allow printing a trace of a run of the executor 2021-07-13 12:31:36 +02:00
Antonio ScandurraandNathan Sobo 0f5a507da1 Ensure root view is always rendered when opening a window
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-12 17:44:10 +02:00
Antonio Scandurra 2a03d86543 Allow resetting executor::Deterministic's RNG 2021-07-11 11:26:06 +02:00
Max Brunsfeld 42665e77ff Restructure Peer to handle connections' messages in order 2021-07-09 16:27:34 -07:00
4cf78fc333 Schedule foreground-spawned futures sequentially
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-09 18:55:42 +02:00
Antonio Scandurra 65a8c36613 WIP 2021-07-09 18:32:57 +02:00
Antonio Scandurra c500621d4a Implement a scoped pool on executor::Background 2021-07-09 15:00:51 +02:00
Max Brunsfeld 3b13c99e6c Avoid panic when spawn is called after run exits in deterministic executor 2021-07-08 17:38:54 -07:00
Max BrunsfeldandNathan Sobo a080b03ac7 Start work on a deterministic executor for tests
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-08 13:39:24 -07:00
Antonio Scandurra b071566617 Merge pull request #100 from zed-industries/fix-url-to-path-conversion
Fix URL to `PathBuf` conversion in `mac::Platform`
2021-07-08 17:51:09 +02:00
Max Brunsfeld ecb89df940 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 c4c69abd5e Ensure returned URLs are files before returning them in path prompts 2021-07-06 16:08:19 +02:00
Antonio Scandurra bde02e2af6 Convert URLs to paths returned from NSSavePanel using [Url path] 2021-07-06 15:54:42 +02:00
Antonio Scandurra afedb22368 Convert URLs to paths returned from NSOpenPanel using [Url path] 2021-07-06 15:54:29 +02:00
Max Brunsfeld d2aec4d59e Add ModelHandle::spawn_weak, fix worktree leak from spawn call 2021-07-05 17:55:52 -07:00
Antonio Scandurra ee884b25cc Merge branch 'main' into rpc 2021-06-29 10:25:42 +02:00
Nathan SoboandMax Brunsfeld 6db1d090b2 Add Entity release hooks
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-06-25 10:35:06 -06:00
Nathan Sobo d67b451284 Add a "retries" option to gpui::test macro and use it in flaky tests 2021-06-24 17:51:16 -06:00
Max Brunsfeld 258154b15f Consolidate more logic for joining worktree in Worktree::remote
This way we can use this method in tests and avoid
needing to construct a Workspace.
2021-06-23 18:07:09 -07:00
Max BrunsfeldandNathan Sobo d88896380d Add public method for connecting to RPC server with a given address
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-23 18:05:03 -07:00
Max BrunsfeldandNathan Sobo 4e9b6f3a95 Add a public gpui::TestAppContext::new method
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-23 16:34:36 -07:00
Max Brunsfeld a9eb97c222 WIP - Maintain a set of open buffers on a LocalWorktree 2021-06-22 12:29:58 -07:00
Max BrunsfeldandNathan Sobo 61582ca4ad Emit a diff event when worktree's snapshot is updated
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-21 17:07:56 -07:00
Max Brunsfeld 34230ef1ba Add menu command to join worktree using URL on clipboard
Introduce rpc::Client struct that wraps zed_rpc::Peer
2021-06-17 20:42:36 -07:00
Antonio Scandurra 62367b985e Replace callback-based requests/messages with streams 2021-06-16 14:26:54 +02:00
Max Brunsfeld 9657fc2f22 WIP - Allow RpcClient to register handlers for incoming messages 2021-06-15 17:22:48 -07:00
Antonio Scandurra a77be0fc7e Move worktree sharing down into Workspace
This will make it easier to pick a worktree and give it an `RpcClient`.
2021-06-15 15:14:17 +02:00
Max BrunsfeldandAntonio Scandurra d77b3268da 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 BrunsfeldandAntonio Scandurra e9bcd31ad5 Avoid crash when user denies keychain access
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-06-11 09:47:24 -07:00
Max BrunsfeldandAntonio Scandurra 1a5f20809d Start work on connecting to RPC endpoint
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-06-10 22:12:04 -07:00
Nathan Sobo 265dc3fd34 Test creating a new empty workspace and fix test compile errors 2021-06-09 16:38:32 -06:00
Max Brunsfeld 84bbd7f717 Add a platform API for accessing the keychain 2021-06-08 17:44:45 -07:00
Max BrunsfeldandNathan Sobo 9091d6a223 Start work on a login command
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-07 18:15:11 -07:00
Nathan SoboandMax Brunsfeld acc9b6e2e9 Rename MainThreadPlatform to ForegroundPlatform and fix crash on quit
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-06-07 17:42:49 -06:00
Nathan SoboandMax Brunsfeld 3f9b7d54d4 Allow platform references to be sent to background threads
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-06-07 17:35:27 -06:00
Nathan SoboandMax Brunsfeld 3a26f3a1c3 Move path prompting methods to MainThreadPlatform
They need to call back into the main thread, meaning the callbacks can't be Send + Sync.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-06-07 17:32:03 -06:00
Nathan SoboandMax Brunsfeld 7fb632508f Rename PlatformLifecycle to MainThreadPlatform
Don't love it, but at least it's accurate.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-06-07 17:21:34 -06:00