microsoft / microsoft/vscode-cmake-tools

Cancel reconfigure and restart it

Open
#4,326 12 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
1.7k
Forks
546
Avg merge
2d 16h
Merged PRs (30d)
32

Description

### Brief Issue Summary

We have a project where cmake configure takes quite some time to complete (magnitude of minutes)
In such a project, the automatic reconfigure when you change a CMakeLists.txt is causing quite a slowdown in the workflow.
The flow:
- Make a change: triggers the reconfigure
- Fix your type: reconfigure can't start until the previous one is fixed
- Wait until reconfigure is done
- Start the configuration again (happens automatically)
- Wait until configure is done

It would be nice if the previous cmake process (tree) can be canceled whenever a configure is requested. (Either implicitly by changing the CMakeLists.txt or explicitly pressing the "clear cache and configure")

### CMake Tools Diagnostics

```shell

```

### Debug Log

```shell

```

### Additional Information

_No response_

Contributor guide

Open the contributing guide

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

Start by tracing the automatic reconfigure request and the explicit “clear cache and configure” command to the active CMake process management. Ensure a pending configure cancels the previous CMake process tree before starting, and verify that both request paths avoid overlapping configure runs.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, typescript
Domain
build-system, developer-experience
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.