Commit Graph

928 Commits

Author SHA1 Message Date
Johannes
a155dbb793 register chat provider with an identifier 2023-07-18 15:39:00 +02:00
Johannes
f21001c1fe wip 2023-07-14 17:36:58 +02:00
Henning Dieterichs
d1ae8a6ecc Inline Completions: Implements yieldsTo (#187156)
Fixes #https://github.com/microsoft/vscode-internalbacklog/issues/4055
2023-07-07 16:29:09 +02:00
rebornix
818d4995b5 initial notebook save on remote eh 2023-06-23 15:19:01 -07:00
Benjamin Pasero
052ac9ca4c files - allow more file operations to run in the extension host (#172345) (#185988)
* files - allow more file operations to run in the extension host (#172345)

* fix tests

* tests

* tests

* tests
2023-06-23 17:18:44 +02:00
Alex Ross
f5fccbdfe8 Finalize tree checkbox API (#185846)
* Finalize tree checkbox API
Fixes #116141

* Remove TODO
2023-06-22 15:28:11 +02:00
Joyce Er
7c2d459318 Support transferring interactive sessions across workspaces (#185702)
---------

Co-authored-by: Rob Lourens <roblourens@gmail.com>
2023-06-21 10:30:40 -07:00
Connor Peet
69246279e5 resolvers: support nesting and exec server (#185169)
This adds support for nesting remote authorities via passing through
ExecServers.

- An authority like `wsl+Ubuntu@tunnel+my-pc` is parsed into
  the chain `tunnel+my-pc` -> `wsl+Ubuntu`
- An extension for the `tunnel` prefixed is resolved. We expect the
  resolver to implement the new `resolveExecServer` method.
- Resolution continues. `wsl+Ubuntu` is the last resolver, so the
  `resolve()` method is called and the exec server is passed in its
  `RemoteAuthorityResolverContext`

Currently the ExecServer is typed as `unknown` in the API. _Maybe_ we
want to make it real API in the future, but I don't want to do this
until it's generalized beyond a single consumer (WSL).

This also has adds utility method `getRemoteExecServer` to get an exec
server for a given remote. This is used by WSL to probe information
about a tunneled machine even when WSL isn't opened (e.g. to get the
list of distros to shop.)

The new `@` handling should not break remotes. WSL doesn't use `@` in
its remotes, SSH and containers both hex-encode information contained
in authorities. Codespaces does put the codespace name in the remote
authority, but it doesn't seem like it's possible to get `@` in those
names, since they're generated either randomly when opening a template
or from a repo name (where @ is not allowed).
2023-06-15 11:38:35 -07:00
Johannes Rieken
be966265ca IE to IC renames for API implementation but no changes to proposed API yet (#184605) 2023-06-08 10:45:01 -05:00
Alexandru Dima
8f93229614 Avoid extensionService.getExtension and use ActivationKind.Immediate to allow that URI handling works while resolving (#184312)
Avoid `extensionService.getExtension` and use `ActivationKind.Immediate` to allow that URI handling works while resolving (fixes #182217)
2023-06-05 15:04:35 +02:00
Michael Lively
5d83e25547 Support for Notebook CodeAction Kind (#183457)
* nb kind support -- wip

* allow notebook codeactions around single cell edit check

* move notebook code action type out of editor

---------

Co-authored-by: rebornix <penn.lv@gmail.com>
2023-05-30 11:03:12 -07:00
Rob Lourens
0977318801 Restore proposed API check (#183487)
Now that the copilot chat extension is updated and this won't break it
2023-05-25 18:58:45 -07:00
Aiday Marlen Kyzy
2df052f16a Merge pull request #183215 from microsoft/aiday/internalIssue4173
Improving the quick fix implement interface code action
2023-05-24 17:00:42 +02:00
Johannes
2b8529fa61 make API command for interactiveEditor.start so that initial range can be set properly 2023-05-24 15:21:18 +02:00
Alex Ross
73fcc6bdc8 PortAttributesSelector rename + remove pid (#183304)
Part of #115616
2023-05-24 12:27:01 +02:00
Johannes Rieken
b8559c13a3 upon create send over the list of existing status bar items and their props (#183219)
https://github.com/microsoft/vscode/issues/167874
2023-05-23 15:40:14 +00:00
Rob Lourens
fb46eb97a3 Temp disable new proposed api check. (#183165)
If this went out before the copilot chat extension update went out, it would break the extension
2023-05-23 00:56:30 +02:00
Joyce Er
bc1090cc10 Initial share provider API and UI (#182999)
* Formalize share provider API

* i18n.resources.json

* Don't introduce a generic Success dialog severity
2023-05-22 15:32:43 -07:00
Rob Lourens
05c0ca95ed Add new API proposal for chat onDidPerformUserAction event (#183140)
* Add new API proposal for chat onDidPerformUserAction event

* Enable API for tests that incidentally touch the getter
2023-05-22 11:52:19 -07:00
Joyce Er
0880f76765 Improvements to canonical URI API (#182667)
* Improve API names

* Allow requesting a specific scheme

* Implement ile uri support
2023-05-18 09:23:27 -07:00
Connor Peet
8b3523a18d api: implementation of proposed window activity API (#182563)
* api: implementation of proposed window activity API

For #181569

* fix build

* fix build more

* add cell activity per @rebornix
2023-05-16 17:49:33 +02:00
Alex Ross
1236c13709 Ports attributes API updates (#182617)
* Ports attributes API updates
Part of #115616

* Remove port number from attributes API
2023-05-16 13:01:14 +02:00
Michael Blout
3aec07b38a fix: debug focus, remove 'kind' discriminators 63943 (#181244)
* fix: review comments, remove 'kind' discrims, use instanceof

* fix: tweak the isXXXX checks, add some prop typeof checks

* fix: review, remove isX duck type fncs, and construct object
2023-05-15 18:14:05 -07:00
Rob Lourens
2156969dcf Rename files 2023-05-15 15:54:11 -07:00
Rob Lourens
d72649d458 Rename some classes and methods from "interactive session" to "chat" 2023-05-15 15:38:59 -07:00
Joyce Er
2c5dcb3b81 Allow Continue On between repos with HTTPS and SSH remotes (#182352)
* Deduplicate HTTPS and SSH remote URLs

* Improve doc
2023-05-15 11:37:38 -07:00
Connor Peet
e47a286153 resolvers: add appQuality and appCommit (#182532)
Currently remote extensions use a hack to read the product.json, but
this can't be done on web. Instead expose proper API to get the
appQuality and appCommit.
2023-05-15 11:18:57 -07:00
Connor Peet
364b84e3ec Merge remote-tracking branch 'origin/main' into connor4312/inline-remote-resolver 2023-05-11 09:55:21 -07:00
Alex Dima
dde5a4f356 Add dedicated protocol for managed sockets (mainThreadManagedSockets and extHostManagedSockets) 2023-05-11 11:24:24 +02:00
Tyler James Leonhardt
a9c2b682ed Make proposed API clearer (#182093)
* Add missing typedoc

* Also update docs for proposed

* rename getSessions to authGetSessions
2023-05-10 22:27:26 +00:00
Connor Peet
2bc8da8327 Merge remote-tracking branch 'origin/main' into connor4312/inline-remote-resolver 2023-05-09 11:48:20 -07:00
Rob Lourens
60fe2d5970 💄 (#181647)
Clean up from hacking session
2023-05-05 18:35:11 +02:00
Rob Lourens
aebaec6caf Add API for custom slash command providers (#181604)
Likely temporary API for experimentation
2023-05-05 10:00:21 +02:00
Benjamin Pasero
1ed110b6be Return resulting URI from commands that save the active editor (fix #178713) (#179091)
* Return resulting `URI` from commands that save the active editor (fix #178713)

* 💄

* address feedback

* change to real proposed API

* cleanup
2023-04-20 18:00:12 +02:00
Tyler James Leonhardt
0724039270 Initial IssueUriRequestHandler proposed API (#180363) 2023-04-19 23:18:44 +02:00
Connor Peet
f5427eed53 remote: first cut at 'inline' remote resolvers
For web, it seems the most feasible direction for resolvers as we make
existing remote extensions 'web enabled' is to allow them to run in the
extension host. However, in no case will there just be a simple
websocket we can connect to ordinarily.

This PR implements a first cut at 'inline' resolvers where messaging is
done in the extension host. I have not yet tested them on web, where I
think some more wiring is needed to mirror desktop. Also, resolution of
URLs is not in yet. I think for this we'd want to do some service-worker
-based 'loopback' approach to run requests inline in the remote
connection, similar to what I did for tunnels...

Resolvers are not yet run in a dedicated extension host, but I think
that should happen, at least on web where resolvers
will always(?) be 'inline'.

Most of the actual changes are genericizing places where we specified
the "host" and "port" previously into an enum. Additionally, instead of
having a single ISocketFactory, there's now a collection of them, which
the extension host manager registers into when a managed resolution
happens.
2023-04-18 15:54:20 -07:00
Johannes Rieken
949c8073e2 ensure proposed API is checked for (#180194)
fy  @roblourens and @mblout
2023-04-18 10:34:13 +02:00
Michael Blout
2de3b04eaf Add debug API for call stack selection changes (63943) (#179132)
* feat: Initial pass at Debug Focus, listener for thread or stack frame
selection (#63943)

Add debug.onDidChangeDebugFocus. May provide ids for session, thread,
and stackFrame, as appropriate.

Fixes: #63943 api should provide thread/stack frame id (paraphrasing)

* chore: small comment tweaks in proposal

* fix: bad copy/paste in proposed. moved types out of 'debug' namespace

* fix: separate 'debugFocus' into thread and stackFrame specific
listeners, and create separate contexts for each

* fix: Revert prev change, switch to single api with union type

This reverts commit c308bc3a90.

* fix: rename accessor from 'focus' to 'stackFrameFocus'

* fix: review comments; remove unused type, imrpove comments

* fixL review comments, type change:  sessionID property cannot be undefined

* Remove comments

---------

Co-authored-by: Rob Lourens <roblourens@gmail.com>
2023-04-17 18:42:53 +00:00
Ladislau Szomoru
218b8bd8da SCM - Add document property to expose the text document (#171504) 2023-04-14 13:55:14 +02:00
Matt Bierner
e9262678fa Add drop feedback UX (#179434)
For #179430

Adds two new UX components:

- An inline progress icon shown when a drop operation takes over 500ms. This replaces the notification. You can click on it to cancel the drop

- Post drop, a drop feedback icon that lets you drop the file in a different way. This lets you drop the file as plain text for instance instead of as a markdown link
2023-04-11 13:48:24 -07:00
Tyler James Leonhardt
a0361ed685 introduce a SemanticSimilarity provider model (#179640)
* introduce a SemanticSimilarity provider model

* have raceCancellablePromises also cancel if it rejects

* remove extensionId for now

* remove unused code
2023-04-10 16:07:07 -07:00
Peng Lyu
f7d1b7c8fb Finalize onWillSaveNotebookDocument (#179188) 2023-04-04 19:01:53 -07:00
Johannes Rieken
ab6087f090 update format ranges API proposal based on feedback (#179166)
https://github.com/microsoft/vscode/issues/158776
2023-04-04 19:19:15 +02:00
Johannes
99d65cd47c remove generic type, move API additions to separate proposals file, enforce proposal 2023-03-30 16:50:58 +02:00
Johannes Rieken
a47c78516c Merge branch 'main' into multirange-formatting 2023-03-30 16:33:11 +02:00
Peng Lyu
666e417297 Re #157844. Update for onWillSaveNotebookDocument. (#178602) 2023-03-29 10:56:52 -07:00
Hermann Loose
de3b0db8e8 Allow individual comments to be marked as draft (#173305)
* Allow individual comments to be marked as draft

This is a proposal for #171166.

* Remove `hasDraftComments` from `CommentThread`

* Rename `CommentVisibility` to `CommentState`

* Rename `CommentVisibility` to `CommentState`

* Add api proposal check

---------

Co-authored-by: Alex Ross <alros@microsoft.com>
2023-03-28 19:18:22 +02:00
Johannes Rieken
d02cb53f06 add InteractiveEditorResponseFeedbackKind as dedicated enum (#178043) 2023-03-22 19:28:29 +01:00
Johannes Rieken
2f1f07ec2b make feedback explicit and stateful (#178007) 2023-03-22 14:30:07 +01:00
Peng Lyu
c048e13440 Adopt async emitter for notebookOnWillSave (#177686) 2023-03-20 10:31:14 -07:00