К обсуждениям

WinGet экспортировал JSON, но import считает его неверным: безопасная проверка

Редакция VOne Технологии

Как проверить файл winget export перед массовым import на другом ПК: синтаксис JSON, схема, Sources, Packages и dry-run граница без установки приложений.

Сохраните исходный export неизменным

Сделайте копию экспортированного JSON и вычислите для неё SHA-256, чтобы отличать исходник от последующих правок. Не пересохраняйте файл офисным редактором и не удаляйте строки наугад. Запишите версии WinGet на исходном и целевом ПК, Windows build и команду export без пользовательских путей. Официальная документация подтверждает, что export создаёт JSON со списком приложений, а связка export/import предназначена для пакетного восстановления среды. Это не гарантирует, что любой файл любой версии будет принят, но устанавливает ожидаемый контракт. До проверки не запускайте import с ключами, подавляющими предупреждения.

Отделите синтаксис от содержания

Сначала выполните пассивную проверку JSON любым локальным валидатором, которому не нужно отправлять файл в интернет. Файл может содержать перечень установленного ПО, поэтому публичные сайты-валидаторы не подходят. Если синтаксис неверен, зафиксируйте позицию ошибки в копии, но не «лечите» исходник. Если синтаксис корректен, проверьте обязательную иерархию Sources, Packages и PackageIdentifier, описанную Microsoft Learn. Отсутствующий пакет или источник — это содержательная проблема, а сообщение JSON file is not valid относится к более ранней границе разбора. Такая развилка не устанавливает баг, но сужает отчёт.

Сравните версии и источники без установки

Официальная страница import описывает последовательную установку пакетов и параметры вроде ignore unavailable и ignore versions. Не используйте их до того, как файл успешно принят: они не исправляют синтаксис. Сравните версии клиента и список настроенных источников на двух ПК, не добавляя новые источники и не принимая соглашения автоматически. Проверьте, отличается ли только версия клиента или также структура JSON. Если файл был вручную отредактирован, повторите export в новый путь и сравните копии по структуре, не публикуя список приложений. Критерий остановки — начало реальной установки или запрос повысить права до завершения проверки формата.

Подготовьте минимальное воспроизведение

Для issue полезны версии WinGet и Windows, SHA исходного файла, результат локального JSON parser, названия верхнеуровневых полей и обезличенный минимальный пример с одним публичным PackageIdentifier. Не прикладывайте полный export: он раскрывает установленное ПО и источники. Если минимальный файл принимается, а полный нет, добавляйте пакеты по одному только в копии до выявления границы. Если даже неизменённый минимальный export отвергается той же версией import, это сильнее указывает на совместимость клиента. Свежий issue остаётся неподтверждённым, поэтому материал обещает локализацию, а не автоматическое исправление.

Материал подготовлен редакцией VOne с применением ИИ для дерева JSON-проверок; контракт export/import сверён по Microsoft Learn, пользовательский список программ не использовался.

Источники и проверка

Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.

Ответы

0 опубликовано
Ответов пока нет. Вы можете начать обсуждение.

Ваш ответ

Добавьте свой опыт или уточнение по теме.

Вы публикуете как Аноним Аватар отличает разговоры, но не раскрывает личные данные.

Ответ появится сразу. Не публикуйте личные данные, ключи и приватные ссылки.