Как я могу ограничить минимальную версию VS Code Engine для моего расширения VS Code? - PullRequest
0 голосов
/ 21 сентября 2019

Я разрабатываю расширение VS Code.Старая версия 1.0.0.Я добавляю новую функцию, которая использует новую функцию VS Code Remote-development, которая доступна только с версией ядра VS Code выше 1.36.1.Я добавил новую функцию в свое расширение и обновил свое расширение до 2.0.0.

. Я бы хотел ограничить использование кода VS для пользователя при установке моего расширения.Если пользователь хочет установить мое расширение v2.0.0, у него должна быть версия ядра VS Code выше 1.36.1.

Я установил минимальное ограничение версии VS Code в файле package.json расширения, полях engines, следующие VS Code Официальные документы: Манифест расширения .Но позже я выяснил, что пользователь с версией ядра VS Code ниже 1.36.1 все еще может найти мое расширение 2.0.0 и установить его.VS Code не выдвигает никаких предложений по обновлению своего движка.И расширение не может работать должным образом, конечно.

// package.json
"engines": {
    "vscode": "^1.36.1"
  }

Я что-то пропустил?Как я могу ограничить пользователя с более низкой версией подсистемы VS Code либо для обновления своей подсистемы VS Code, либо для установки старого выпуска расширения?

Теперь пользователь с более низкой версией подсистемы VS Code просто устанавливает мою новую версию расширения, и расширение не можетработай.Любая помощь приветствуется!

1 Ответ

0 голосов
/ 23 сентября 2019

Я сам выяснил причину:

  1. VS Code package.json Поле engines работает.Если ядро ​​пользователя ниже требуемой минимальной версии движка, VS Code установит более низкое расширение версии для пользователя.

  2. В моем сценарии у меня есть расширение зависимости, требования к движку которого не соответствуютглавное расширение.Это основная причина сбоя установки основного расширения.Когда пользователь с более низкой версией подсистемы VS Code пытается установить мое расширение, VS Code проверяет требования механизма расширения зависимостей и не может найти основную версию расширения с соответствующей версией зависимостей.В этом случае установка основного расширения завершается неудачно.

Решение: мне нужно найти способ удалить мой предыдущий выпуск расширений с рынка, чей двигатель не соответствует требованиям.

Спасибо всем за внимание.

...