leanprover / leanprover/vscode-lean4

Better handling when LeanClient not 'running'

Open
#143 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
313
Forks
104
Avg merge
1h 56m
Merged PRs (30d)
1

Description

We have async promises that do nothing when the leanclient is not running, which leaves the infoview in perhaps a weird state sometimes. It might be better to wrap the client functionality in Promises such that if it's running, the promise resolves immediately with the appropriate call, whereas if the client is just starting up it would wait for that first and then make the call and if the startup fails, reject the promise.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files or tests. Start by tracing the async promises around LeanClient and its running and starting-up states; verify that calls resolve immediately when running, wait through startup, and reject on startup failure. Done means infoview operations no longer silently do nothing when the client is not running.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript, vscode
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.