microsoft / vscode-makefile-tools

MAKE integration in Visual Studio Code
Other
184 stars 55 forks source link

On workspace restart, Makefile Tools deletes previous build? #474

Closed ringohoffman closed 11 months ago

ringohoffman commented 1 year ago

I have been trying to use Makefile Tools while developing pytorch on my 2021 16 GB M1 Pro. I am not touching any of the C++ code, but there is a massive C++ component to pytorch, and a pre-req to Python development is running cmake to compile all the dependencies, which takes like 1-2 hours.

When I have Makefile Tools installed, from the time I open up my pytorch workspace, a Code Helper and a cpptools process utilize 2 of my cpus @ 100% constantly. The workspace will be normally responsive for some time, but it consistently reaches a point that specifically my pytorch workspace becomes extremely slugging to the point of being unusable. My only option is to kill VS Code manually...

Unsure if related, but when I reopen my workspace I get a pop-up window that Makefile Tools is doing something and my previous build is gone. All the stub files I need for Python development are gone, and I have to recompile the entire project for another 1-2 hours. I've gone through this process multiple times today and it was a pretty terrible experience on account of how much time I am losing every time I have to rebuild.

Is this repeatable for you that your build gets deleted at workspace initialization?

gcampbell-msft commented 1 year ago

@ringohoffman Thanks for the report! I don't believe that we've had any other reports of this issue.

Could you possibly reproduce this with a smaller project so that we can use that project to investigate the issue? For now, we'll add it to the backlog and investigate it as soon as possible based on bandwidth.

andreeis commented 1 year ago

@ringohoffman, we are not intentionally deleting any build folders. Only some files that our extension creates and uses. Of course, there may be bugs and we'll try to figure out what happens.

You confirm that you intend to use Makefile Tools for the project in question or you use it for other projects, that is why it is installed, but it interferes with this project for which you don't want to use Makefile Tools? I am asking because I see use of cmake and usually CMake Tools and Makefile Tools are not used together.

If you don't want to use Makefile Tools for this project, without uninstalling it, set "makefile.configureOnOpen": "false" and let's see if that helps.

If you want to use Makefile Tools (and not CMake Tools) for this project, then... set "makefile.loggingLevel": "Debug", "makefile.extensionOutputFolder": "./MyOutputFolder", "makefile.extensionLog": "extension.log"

and share with us from ./MyOutputFolder the files dryrun.log and extension.log. You can do this for a fresh reopen and also after the issue with the delete. I'd like to have a look at these files as they are written in these both different scenarios.

andreeis commented 11 months ago

@ringohoffman, I am closing this ticket since there hasn't been an update in a while but please reactivate if this still occurs and give us extra info so that we can reproduce on our side, plus answer the questions above, that would help narrow down the root cause.