Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for Cancel a Work Done Progress #1274

Merged
merged 2 commits into from
May 5, 2024

Conversation

TheAngryByrd
Copy link
Member

Adds support for Cancel a Work Done Progress .

This will now add a Cancel button to potentially longer running operations like typechecking or type checking dependents upon save:

image

Clicking cancel will cancel that operation accordingly.

@TheAngryByrd TheAngryByrd requested a review from baronfel April 24, 2024 00:40
@TheAngryByrd TheAngryByrd force-pushed the cancellable-server-progress branch from f662751 to 570691a Compare April 24, 2024 00:57
@@ -307,10 +372,12 @@ type AdaptiveState(lspClient: FSharpLspClient, sourceTextFactory: ISourceTextFac
let checkUnusedOpens =
async {
try
use progress = new ServerProgressReport(lspClient)
use progress = progressLookup.CreateProgressReport(lspClient, cancellable = true)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How do these lookups behave when there's no progress token? Can they reasonably be cancelled by a user at that point?

@baronfel baronfel merged commit b2827ed into ionide:main May 5, 2024
13 of 14 checks passed
TheAngryByrd added a commit that referenced this pull request May 6, 2024
* Shift multiline paren contents less aggressively (#1242)

* Shift multiline paren contents less aggressively

* Make it actually work

* Disambiguate AsSpan overload

* Add some code fixes for type mismatch. (#1250)

* Migrate FAKE to Fun.Build (#1256)

* Migrate FAKE to Fun.Build

* Add default Build pipeline.

* Purge it with fire (#1255)

* Bump analyzers and Fantomas (#1257)

* Add empty, disabled tests for go-to-def on C# symbol scenario

* fix unicode characters in F# compiler diagnostic messages (#1265)

* fix unicode chars in F# compiler diagnostic messages

* fix typo in ShadowedTimeouts focused tests

* fixup! fix unicode chars in F# compiler diagnostic messages

* remove focused tests...

* remove debug prints

Co-authored-by: Jimmy Byrd <[email protected]>

---------

Co-authored-by: Jimmy Byrd <[email protected]>

* - remove an ignored call to protocolRangeToRange (#1266)

- remove an ignored instance of StreamJsonRpcTracingStrategy

* Place XML doc lines before any attribute lists (#1267)

* Don't generate params for explicit getters/setters as they are flagged invalid by the compiler (#1268)

* bump ProjInfo to the next version to get support for loading broken projects and loading traversal projects (#1270)

* only allow one GetProjectOptionsFromScript at a time (#1275)

ionide/ionide-vscode-fsharp#2005

* changelog for v0.72.0

* changelog for v0.72.1

* Use actualRootPath instead of p.RootPath when peeking workspaces. (#1278)

This fix the issue where rootUri was ignored when using AutomaticWorkspaceInit.

* changelog for v0.72.2

* Add support for Cancel a Work Done Progress  (#1274)

* Add support for Cancel WorkDoneProgress

* Fix up saving cancellation

* package the tool for .NET 8 as well (#1281)

* update changelogs

* Adds basic OTel Metric support to fsautocomplete (#1283)

---------

Co-authored-by: Brian Rourke Boll <[email protected]>
Co-authored-by: Florian Verdonck <[email protected]>
Co-authored-by: Krzysztof Cieślak <[email protected]>
Co-authored-by: MrLuje <[email protected]>
Co-authored-by: dawe <[email protected]>
Co-authored-by: Chet Husk <[email protected]>
Co-authored-by: oupson <[email protected]>
Co-authored-by: Chet Husk <[email protected]>
TheAngryByrd added a commit that referenced this pull request May 9, 2024
* Shift multiline paren contents less aggressively (#1242)

* Shift multiline paren contents less aggressively

* Make it actually work

* Disambiguate AsSpan overload

* Add some code fixes for type mismatch. (#1250)

* Migrate FAKE to Fun.Build (#1256)

* Migrate FAKE to Fun.Build

* Add default Build pipeline.

* Purge it with fire (#1255)

* Bump analyzers and Fantomas (#1257)

* Add empty, disabled tests for go-to-def on C# symbol scenario

* fix unicode characters in F# compiler diagnostic messages (#1265)

* fix unicode chars in F# compiler diagnostic messages

* fix typo in ShadowedTimeouts focused tests

* fixup! fix unicode chars in F# compiler diagnostic messages

* remove focused tests...

* remove debug prints

Co-authored-by: Jimmy Byrd <[email protected]>

---------

Co-authored-by: Jimmy Byrd <[email protected]>

* - remove an ignored call to protocolRangeToRange (#1266)

- remove an ignored instance of StreamJsonRpcTracingStrategy

* Place XML doc lines before any attribute lists (#1267)

* Don't generate params for explicit getters/setters as they are flagged invalid by the compiler (#1268)

* bump ProjInfo to the next version to get support for loading broken projects and loading traversal projects (#1270)

* only allow one GetProjectOptionsFromScript at a time (#1275)

ionide/ionide-vscode-fsharp#2005

* changelog for v0.72.0

* changelog for v0.72.1

* Use actualRootPath instead of p.RootPath when peeking workspaces. (#1278)

This fix the issue where rootUri was ignored when using AutomaticWorkspaceInit.

* changelog for v0.72.2

* Add support for Cancel a Work Done Progress  (#1274)

* Add support for Cancel WorkDoneProgress

* Fix up saving cancellation

* package the tool for .NET 8 as well (#1281)

* update changelogs

* Adds basic OTel Metric support to fsautocomplete (#1283)

* Some parens fixes (#1286)

See dotnet/fsharp#16901

* Keep parens around outlaw `match` exprs (where the first `|` is
  leftward of the start of the `match` keyword).

* Ignore single-line comments when determining offsides lines.

* Don't add a space when removing parens when doing so would result in
  reparsing an infix op as a prefix op.

* Run LSP tests sequenced (#1287)

I'm tired of all the weird failures because of parallelism

---------

Co-authored-by: Brian Rourke Boll <[email protected]>
Co-authored-by: Florian Verdonck <[email protected]>
Co-authored-by: Krzysztof Cieślak <[email protected]>
Co-authored-by: MrLuje <[email protected]>
Co-authored-by: dawe <[email protected]>
Co-authored-by: Chet Husk <[email protected]>
Co-authored-by: oupson <[email protected]>
Co-authored-by: Chet Husk <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants