
馃悰 Clicking on Install, installs PHP extensions locally.
Expected to install remotely
The fix in the code to analyze the dependencies has to be deferred to May.
The impacted extension packs are extension packs without a main/code. For example, the Java Extension Pack works fine since it has code.
The work around is to install the extensions from the packs individually or when using remote-containers in the devcontainer.json.
Popular affected extension packs are listed below.
We should consider fixing this for stable as IMO installing extension packs is broken. In terms of risk, it is low because it is already implemented correctly for dependencies and fixing is to use the same strategy.
An extension pack is an extension that comprises of multiple other extensions. Included extension can be any extension (pack or ui or workspace). So it means an extension pack can be
When an extension pack is installed, included extensions should be installed at the appropriate location. Following is my proposal:
An extension pack is considered as workspace extension kind unless specified by the extension.
A workspace extension pack is installed on the remote and if it includes any UI extensions, then they will be installed locally. When a workspace extension pack comprises UI extensions, then user will be notified that installing such a pack also installs some extensions locally.
A UI extension pack is always installed locally and there will be no special treatment.
@alexandrudima FYI
@sandy081 I think this makes sense, but I am concerned about our isUIExtension implementation. The definition you propose would make isUIExtension no longer work on a single package.json. i.e. by looking at the package.json of an extension pack it would no longer be possible to determine where it should execute...
An extension pack is considered as workspace extension kind unless specified by the extension.
@alexandrudima Its isUIExtension that determines above. So it still holds the logic to determine whether an extension is ui extension or not.