Azure Data Studio Extension Install Error – “Not Compatible”

Unable to install version <0.0.0> of extension ‘drewsk.newprojectforfun’ as it is not compatible with Azure Data Studio ‘1.9.0’

Curses! You’ve created an extension, tested it with the VS Code debug extension for Azure Data Studio, packaged it up and now want to install it in your Azure Data Studio instance – but you get an error message. What gives?

The Fix

the extension is not compatible with Azure Data Studio '1.9.0'
Azure Data Studio "About" window

Fear not, the issue may stem from the underlying VS Code engine behind Azure Data Studio and is a quick fix. In Azure Data Studio, go to the Help menu and select About. The resulting dialog box has a bunch of version numbers – Azure Data Studio, VS Code, Electron, Chrome, NodeJS, etc.

Head back to VS Code and open the package.json file for your Azure Data Studio extension. You want to compare the versions listed for engines in the file. In this example, the Azure Data Studio application is built with VS Code 1.34.0 but the extension pulled in version 1.36.0 as the minimum.

extension package.json file showing vscode engine version ^1.36.0

Update the engine specified for vscode to the version in from the Azure Data Studio dialog box. Make sure to leave the carrot ahead of the version number! This is the syntax for greater than or equal to in version numbers.

Much better.

What Happened?

While the Azure Data Studio team does a great job keeping the VS Code version up to date behind Azure Data Studio, the VS Code team makes it tough on them with their own monthly updates! When you built your extension, npm grabbed the most recent VS Code version it could find.

At the time of writing, Azure Data Studio is unbelievably only 2 months behind on the VS Code engine.

Update: Error Message Changed

As of November 2020, the error message provided in Azure Data Studio has been updated to more clearly explain the situation. You may receive the message “Unable to install extension ‘{0}’ as it is not compatible with VS Code ‘{1}’” as an indicator that the extension you are trying to install has a more recent VS Code engine defined in the package.json (package manifest).