Nathan Sobo and Antonio Scandurra
b52db22544
Only enable smart case if the query contains an uppercase character
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2022-01-14 09:16:09 -07:00
Nathan Sobo and Antonio Scandurra
f934370e7f
Match full path when query contains spaces
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2022-01-14 09:02:04 -07:00
Nathan Sobo
057dc62b90
Merge pull request #338 from zed-industries/use-wildcard-cert
...
Associate staging and production load balancers with wildcard cert
2022-01-12 17:23:04 -07:00
Nathan Sobo and Max Brunsfeld
a93502bb64
Add placeholder environment variables to our deploy
...
We have the ability to define environment-specific environment variables, but don't current need it. This keeps these files in place while avoiding noise from running `export` with no args due to the files being empty.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2022-01-12 16:33:41 -07:00
Nathan Sobo and Max Brunsfeld
e71b989041
Use the same wildcard certificate on production and staging
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2022-01-12 16:28:09 -07:00
Nathan Sobo and Max Brunsfeld
3a82d0d8e1
Use a wildcard cert on DigitalOcean in the staging environment
...
If this works, we'll use it for production as well and delete the other certs.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2022-01-12 16:17:21 -07:00
Nathan Sobo
d346b1bfd9
Merge pull request #336 from zed-industries/format-on-save
...
Format on save
2022-01-12 11:48:12 -07:00
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
Nathan Sobo
a6dd9a20d4
Fix binding to dump element JSON
2022-01-11 17:52:26 -07:00
Nathan Sobo and Max Brunsfeld
943571af2a
Report backtraces of pending conditions when deterministic executor illegally parks
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2022-01-06 13:33:55 -07:00
Nathan Sobo and Max Brunsfeld
2dbee1d914
Send diagnostic summaries to guests when they join the project
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2022-01-06 12:12:09 -07:00
Nathan Sobo and Antonio Scandurra
d7a78e14ac
Allow disk-based diagnostic progress begin/end events to interleave
...
When multiple saves occur, we can have multiple start events followed by multiple end events. We don't want to update our project diagnostics view until all pending progress is finished.
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2022-01-06 09:32:08 -07:00
Nathan Sobo and Antonio Scandurra
571d0386e2
Re-focus diagnostics editor when transitioning from an empty to a populated state
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2022-01-06 08:35:31 -07:00
Nathan Sobo
b10f06d084
Merge pull request #308 from zed-industries/fix-collaboration-regressions
...
Fix collaboration regressions
2022-01-05 19:56:51 -07:00
Nathan Sobo
f499a1dfc2
Merge pull request #301 from zed-industries/move-lines-in-multibuffer
...
Support moving lines up and down in multi-buffers
2021-12-30 01:13:31 -08:00
Nathan Sobo
6d6a82655a
Create blocks with anchors to allow a bias to be specified
...
This allows us to respect the bias on anchors we use to create excerpt headers so that they always remain above any content inserted at the start of an excerpt.
2021-12-30 01:03:19 -08:00
Nathan Sobo
ba75007259
Merge pull request #300 from zed-industries/fix-move-line-panic
...
Fix panics when moving lines with block decorations and simplify line boundary detection
2021-12-29 23:47:25 -08:00
Nathan Sobo
984378e12c
Use anchors for line movement edits to support multi-buffers
...
Because multi-buffers can contain the same content multiple times, we need to use anchors to track our desired insertion and removal locations when moving lines. This is because deleting a line in order to move it might end up deleting *multiple* lines.
2021-12-29 23:47:03 -08:00
Nathan Sobo
7c9e4e513c
Provide an accurate panic message when translating points off the end of a line
...
Maybe we should fail more gracefully in this case, but I think we should at least make the message accurate and see how we do.
2021-12-29 23:11:54 -08:00
Nathan Sobo
7f786ca8a6
WIP: Start moving toward a simpler interface for detecting prev/next line boundaries
2021-12-27 22:11:05 -08:00
Nathan Sobo
89bbfb8154
wip
2021-12-27 21:14:23 -08:00
Nathan Sobo
93a516d588
Fix warning
2021-12-27 18:00:15 -08:00
Nathan Sobo
cbc162acf5
WIP: Allow lines to be moved down across excerpts
...
This is still a bit weird because we can't remove the last line of an excerpt but we still move it into another buffer. There also seem to be issues with undo.
2021-12-27 15:46:19 -08:00
Nathan Sobo
835af35839
Simplify prev/next_row_boundary methods
...
We added clipping of points against the buffer when excerpt headers were in the buffer, but now that they're just blocks, I think we can avoid the potential to panic in these methods by going back to not clipping.
2021-12-27 15:46:19 -08:00
Nathan Sobo
6f26fa013a
Merge pull request #295 from zed-industries/api
...
Add remaining API endpoints needed to support the new website
2021-12-27 12:54:34 -08:00
Nathan Sobo and Max Brunsfeld
13ed9dc1f1
Document database setup and fix issue in script/seed-db
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-27 12:52:15 -08:00
Nathan Sobo
8937d877e3
💄
2021-12-27 12:22:59 -08:00
Nathan Sobo
63238a2938
Destroy access tokens before destroying users and word-smith method names
2021-12-25 17:46:02 -07:00
Nathan Sobo
b949b30f24
Add delete user endpoint
2021-12-25 11:57:37 -07:00
Nathan Sobo
56930972fe
Add endpoints for listing, creating, and updating users
2021-12-25 11:55:10 -07:00
Nathan Sobo and Antonio Scandurra
07a4cfeefd
Streamline running both next and collab servers in development
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-12-25 11:55:10 -07:00
Nathan Sobo
fe5465a265
Enable authentication via the NextJS site
2021-12-25 11:55:10 -07:00
Nathan Sobo
6dd23c250b
Merge pull request #294 from zed-industries/simplify-keymap-contexts
...
Don't merge keymap contexts from containing elements
2021-12-24 16:54:47 -07:00
Nathan Sobo and Aaron Hillegass
e9a750be71
Don't merge keymap contexts from containing elements
...
Co-Authored-By: Aaron Hillegass <charmedliferaft@gmail.com >
2021-12-24 16:44:35 -07:00
Nathan Sobo
9fc2ddb8da
Merge pull request #293 from zed-industries/project-diagnostics
...
Project diagnostics: First pass
2021-12-24 16:42:00 -07:00
Nathan Sobo
cf81f5a555
Update tests to reflect that we no longer attempt to recycle group ids
2021-12-24 16:36:21 -07:00
Nathan Sobo
ce4142eab3
Remove special handling of multi-line primary diagnostic messages and fix tests
2021-12-24 13:47:45 -07:00
Nathan Sobo
a3df597155
Make diagnostics disk-based in test
2021-12-24 13:33:11 -07:00
e3ecd87081
WIP
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-23 11:24:35 -07:00
Nathan Sobo
61b806e485
Add an endpoint for creating an access token for a GitHub login
2021-12-21 13:05:32 -07:00
Nathan Sobo
323e1f7367
Add the fetching of user JSON by github login with a token header
2021-12-19 09:43:13 -07:00
Nathan Sobo
f4b9772ec2
Relocate admin routes to make room for API
...
I want to use the top-level /users route for the API that we'll access from the front-end site running on Vercel, and this is the easiest way to make space. Eventually we won't have admin pages, but I want to be additive for now.
2021-12-19 09:06:57 -07:00
Nathan Sobo
29bc2db6e8
Fix journal format strings
2021-12-18 12:15:07 -07:00
Nathan Sobo
34edbc7934
Merge pull request #287 from zed-industries/journal
...
Add a simple journaling feature
2021-12-18 11:17:18 -07:00
Nathan Sobo
0a37d40fad
Pad single-digit months, days, and minutes with a leading zero
2021-12-18 11:11:04 -07:00
Nathan Sobo
ab5db0bc1e
Fix warnings and tests
2021-12-18 11:06:07 -07:00
Nathan Sobo
e4f18947de
Insert a time heading when creating a journal entry
2021-12-18 10:38:54 -07:00
Nathan Sobo
9e8ef31452
Return item handles when opening items
...
This will support interacting with the opened item. Although I think I should probably return the ItemView rather than the Item. Next commit.
2021-12-18 08:26:57 -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
Nathan Sobo
cd65031cda
Halt keystroke dispatch immediately when we call a global action handler
...
Someday, we may want to define a global action context that allows us to propagate the action, but this isn't currently supported. Previous to this commit, we were invoking the same global action handler multiple times, once for each view in the responder chain.
2021-12-18 08:12:08 -07:00
Nathan Sobo and Antonio Scandurra
437145afbe
Remove assertion and don't consume 0 bytes
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-12-15 06:52:37 -07:00
Nathan Sobo and Antonio Scandurra
fbba417f09
Implement MultiBuffer::bytes_in_range
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-12-15 06:49:10 -07:00
Nathan Sobo and Max Brunsfeld
6c5b27af1d
Group diagnostics by primary
...
Render primary message above the excerpt and supporting messages as block decorations with a `Below` disposition. This is still super rough.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-14 18:26:42 -07:00
Nathan Sobo and Max Brunsfeld
e1a2897d53
Render basic diagnostic messages in project diagnostics view
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-14 17:00:57 -07:00
Nathan Sobo and Max Brunsfeld
ad05c0cc7a
Implement MultiBufferSnapshot::excerpt_headers_in_range
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-14 16:24:48 -07:00
Nathan Sobo
cdbcbdfe6d
Test undo/redo at editor layer, including selection restoration
2021-12-12 15:04:19 -07:00
Nathan Sobo
44cd0be068
Restore selections upon undo/redo of edits performed in the current editor
2021-12-12 14:12:03 -07: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
4dd0752e80
More messy progress towards selections in editors
2021-12-11 00:29:34 -07:00
Nathan Sobo
0639c8331c
Relax TreeMap value bounds, fix warnings, simplify cmp
2021-12-10 23:35:24 -07:00
Nathan Sobo
49d1c9d1ba
Introduce sum_tree::TreeMap<K, V>
...
I think this will be useful to avoid cloning HashMaps in certain cases such as snapshots.
2021-12-10 23:33:15 -07:00
Nathan Sobo
f5c775fcd1
WIP
2021-12-10 22:16:39 -07:00
Nathan Sobo
8432daef6a
WIP: Start on removing selections from buffer in favor of editor
2021-12-10 19:23:34 -07:00
Nathan Sobo
f35c419f43
Return optional transaction ids from undo/redo
...
This will allow the editor to restore selections that it associated with the start or end of a transaction.
2021-12-10 18:08:26 -07:00
Nathan Sobo
77defe6e28
Return optional transaction ids when starting/ending a transaction
...
If the transaction was nested, we return None. Otherwise we return the transaction id in preparation for editors to maintain their own selection state.
2021-12-10 18:00:09 -07:00
Nathan Sobo
c8b43e3078
Move multi_buffer to editor crate
2021-12-10 17:37:53 -07:00
Nathan Sobo
dd38eb1264
Start on maintaining an insertions tree
...
I'm correctly assigning fragment ids to all fragments in the fragments tree, but I have a randomized test failure when making sure that the insertions tree matches the state of the fragments tree.
2021-12-08 22:05:13 -07:00
Nathan Sobo
ec54010e3c
Sketch in type-level changes to track insertion splits
2021-12-08 21:04:22 -07:00
Nathan Sobo
98f726974e
WIP
2021-12-08 20:04:30 -07:00
Nathan Sobo
4ee404a0af
Take a cx in MultiBuffer::start_transaction
2021-12-08 19:30:52 -07:00
Nathan Sobo and Max Brunsfeld
87d16c271e
Get Editor compiling with MultiBuffer as its buffer
...
There's a bunch of unimplemented methods in MultiBuffer, but everything compiles.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-08 19:23:04 -07:00
Nathan Sobo and Max Brunsfeld
02f42f2877
WIP
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-06 14:51:23 -07:00
Nathan Sobo and Max Brunsfeld
88e3d87098
Get randomized test passing on basic excerpt list features
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-06 13:48:07 -07:00
Nathan Sobo and Max Brunsfeld
4578938ea1
Implement ExcerptList::subscribe
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-06 13:37:17 -07:00
Nathan Sobo and Max Brunsfeld
a02a29944c
Get the basic ExcerptList unit test passing again
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-06 13:01:09 -07:00
Nathan Sobo and Max Brunsfeld
6965117dd8
Allow patches to be composed with edit iterators in addition to other Patches
...
This can avoid an extra allocation in some cases.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-06 13:00:51 -07:00
Nathan Sobo and Max Brunsfeld
cff610e1ec
Rename FragmentList to ExcerptList
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-06 11:59:32 -07:00
Nathan Sobo
0be897d5ac
WIP: Edit one of the excerpted buffers and add an assertion
...
We'll need to detect edits on the child buffers and understand their impact on the tree.
2021-12-04 07:19:30 -07: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
Nathan Sobo and Max Brunsfeld
5ae46709b0
Fix alignment of blocks adjacent to other blocks
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-01 17:58:44 -07:00
Nathan Sobo and Max Brunsfeld
ee693a8d2b
Get all tests passing with new blocks API
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-01 17:52:34 -07:00
Nathan Sobo and Max Brunsfeld
512a10b037
Use new BlockMap API to render diagnostics
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-01 17:22:40 -07:00
Nathan Sobo and Max Brunsfeld
1445ce10b5
Name the root file of every crate after the crate to ease navigation
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-11-30 12:46:39 -07:00
Nathan Sobo and Max Brunsfeld
748b1ba602
Fix warning
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-11-30 12:27:00 -07:00
Nathan Sobo and Max Brunsfeld
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
Nathan Sobo
df1804b215
Merge pull request #267 from zed-industries/fix-soft-wrap-disabled
...
Avoid building up pending edits when soft wrapping is disabled
2021-11-30 08:39:00 -07:00
Nathan Sobo and Antonio Scandurra
0ed488d93b
Avoid building up pending edits when soft wrapping is disabled
...
This was causing us to get slower over time as we stacked up hundreds of thousands of pending edits whenever soft wrap was disabled.
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-11-30 08:28:29 -07:00
Nathan Sobo
cb942a0e2f
Merge pull request #265 from zed-industries/fix-collaborators-test
...
Fix flaky contacts test
2021-11-29 17:03:01 -07:00
Nathan Sobo and Max Brunsfeld
a1412166f0
Fix randomized test failures by waiting for client_b to be added to worktree_a
...
We perform an async fetch of client_b's user data on worktree_a, which ends up holding a handle that prevents worktree_a from being released later in the test. By waiting for this fetch to finish before proceeding, we can be sure worktree_a actually gets released.
A more comprehensive fix would be some way to ensure we actually perform a release if an entity is fully dropped outside of an update cycle, but this fixes the issue for now.
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2021-11-29 16:48:09 -07:00
Nathan Sobo
e0998dbfda
Merge pull request #260 from zed-industries/show-collaborators
...
Show collaborators for the active worktree in the titlebar
2021-11-28 14:16:16 -07:00
Nathan Sobo
815cc7ee91
Give avatar ribbons a rounded top
2021-11-28 14:04:31 -07:00
Nathan Sobo
fbc307cd5e
Associate collaborator avatars with "ribbons" corresponding to their cursor color
2021-11-28 13:25:05 -07:00
Nathan Sobo
a5039cad65
Tweak avatar sizes in titlebar
2021-11-28 12:41:46 -07:00
Nathan Sobo
6ce76ca13e
Render active worktree collaborator avatars in the titlebar
2021-11-28 12:28:10 -07:00
Nathan Sobo
4bd43e67ef
Introduce a TestClient and associate it with a PeerId
...
This makes it easier to integration test peer interactions because now we know their PeerIds.
2021-11-27 12:33:25 -07:00
Nathan Sobo
b307a7e91d
Populate the user data of worktree collaborators
...
This will make it possible for us to render their avatars. Previously we only had the user ids. During rendering, everything needs to be available synchronously. So now, whenever collaborators are added, we perform the async I/O to fetch their user data prior to adding them to the worktree.
2021-11-26 20:35:50 -07:00
Nathan Sobo
9930e92412
WIP: Give worktrees a reference to the UserStore
...
This will allow them to fetch user data when peers are added or removed. Still work to do though.
2021-11-26 19:12:12 -07:00
21aba54dc3
Introduce a worktree::Collaborator struct that holds the user_id
...
We can use this to render avatars.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-11-26 11:28:30 -07:00
Nathan Sobo and Antonio Scandurra
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