Skip to content

Make it possible to know if WorkDoneProgressReporter is a NullProgressReporter #1811

Description

@rchl

Back in the days I've reported an issue in pyright about wrong handling of client-initiated progress. This was fixed (worked around) in microsoft/pyright#2546 and that fix was later changed to use a small utility function from https://github.com/microsoft/pyright/blob/ede08a0211b7558ebd5eedee6d7fd539c753486b/packages/pyright-internal/src/common/lspUtils.ts#L67-L73 (due to attachWorkDone from this library becoming internal).

The whole issue stemmed from how this library implements progress handling and how it makes it very hard to know if the progress reporter is "null" or delivered by the client. I think this library should make some change to make this distinction clear so that servers can make an informed decision on how to handle progress.

@dbaeumer

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions