Microsoft’s Visual Studio Code has come a long way from being just a source code editor (which it’s defined as). With the plugins and contributions it has become a full-fledged IDE supporting multiple workflows and technologies. I’ve been using it recently for all my development projects.
Last week, I’ve been notified that there’s an update (February 2019 –
v1.32.1). VS Code’s updates are automatic so you just restart the IDE and you should see the newest version and be greeted with the Release notes screen. As usual, this latest update is packed with features that most users don’t really notice but make the development experience easier.
Except that this one broke something!
No more hot-reload.
I’ve been developing Flutter apps lately and I heavily rely on the hot-reload feature. In fact, this is one of the reasons why I chose Flutter over the other technologies for my main mobile app development.
It’s a great pain to just restart everything after one small change.
Another problem that I noticed after updated VS Code is an error in Debug Console:
Launching lib\main.dart on Android SDK built for x86 in debug mode... Built build\app\outputs\apk\debug\app-debug.apk. D/ ( 3296): HostConnection::get() New Host Connection established 0xaaf12800, tid 3319 D/EGL_emulation( 3296): eglMakeCurrent: 0xa82af120: ver 3 0 (tinfo 0xaaf03360) D/skia ( 3296): Program linking failed. I/chatty ( 3296): uid=10095(io.pocketsteem) 1.gpu identical 11 lines D/skia ( 3296): Program linking failed. D/skia ( 3296): Program linking failed. D/skia ( 3296): Program linking failed.
My first thought is that, they’re related. They should be. Both showed up after the update!
A quick Google search gave me this article which claimed to have a solution for the “Program linking failed”. Which I found out later that it is totally unrelated and has something to do with my video card or the emulator (I haven’t learned too much on this yet).
I followed the instructions and while it did solve the “Program linking failed” message in the Debug Console, it didn’t fix hot-reload and I was now running on software mode.
Who does that?
As I was getting ready to file an issue on the VS Code GitHub repository when I realized that this could be a Flutter/Dart plugin incompatibility with the new VS Code version.
So I went to the issues tab of Dart-Code/Dart-Code and before I could add an issue, I saw that other people experienced this too so I followed along on the conversation. It turned out that it was indeed a problem on the VS Code side and other debugging features were also affected.
There’s already a fix for it but it’s scheduled for the next release (probably next month) with a possibility of a recovery build.
The consensus now is to just downgrade to the January 2019 update (
v1.31) and wait for the next update for the fix (or the recovery build if it comes out).
Don’t forget to disable automatic updates as that will download the latest version and bring back the problem.
I still get the “Program linking failed” message but everything is working as I expect it so this one is solved for now.