The beta of the Makecode editor is very problematic if you are updating extensions which other extensions are dependent on.
For some fun I experimented with some assembler code. I therefore have an extension (the “main extension”) which has a ts file and some C++ in a .cpp file and also this is dependent on another extension (the “second” extension) which houses the assembly and .ts file with the appropriate shim functions.
In order to alter the second extension I seem to need to push the changes to the Github repository and then do “refresh” in the main extension and also with any project that uses these extensions.
I can’t edit the assembly from within the project - I have to go to the editor project list and edit the second extension directly and then go back and reload the project.
So, I have a project and I add the main extension to it and it correctly loads the second extension too because I have set the appropriate dependency. I then need to edit the assembler code for some reason. I load the second extension to edit it, commit it and try and reload the project. The Makecode editor sometimes hangs indefinitely. Project code therefore lost forever.
In order to get round this, I first deleted the main extension from the within the project code, went to edit the assembler, pushed the changes, updated the main extension and then went back to the project and reinstantiated the main extension (which also adds the second).
But sometimes the act of deleting the main extension from the project results in the deletion of the entire project code!