Прошлая проблема затронула пользователей Windows, обновляющих Azure CLI через установщик MSI с версии 2.76.0 или более ранней до версии 2.77.0 или более поздней. Это обновление вызывало немедленный сбой при запуске с ошибкой ImportError, связанной с отсутствующей DLL win32file. Проблема в основном затронула пользователей, которые обновились без полного удаления, в то время как чистые установки обычно работали без проблем. Основной причиной было взаимодействие между правилами управления версиями файлов Windows Installer и изменением в сторонней зависимости, pywin32. В новых двоичных файлах pywin32 отсутствовали метаданные ресурса версии Windows, что приводило к тому, что MSI некорректно отдавал приоритет старым, версионированным двоичным файлам. Во время обновления MSI мог удалить необходимые новые файлы, не сумев их установить, что приводило к неполной установке. Это приводило к отсутствию критических файлов расширений Python в каталоге установки Azure CLI. Для восстановления пользователям было рекомендовано обновиться до последней версии или выполнить чистую переустановку. Процесс обновления MSI с тех пор был оптимизирован, чтобы пропустить сравнения версий для каждого файла и вместо этого выполнить упрощенную перезапись установки. Эта оптимизация делает обновления значительно быстрее и надежнее. Это достигается путем сначала удаления старых файлов и удаления медленных проверок версий для каждого файла. Пользователям рекомендуется обновиться до последней версии Azure CLI, чтобы решить проблему и получить выгоду от улучшенной производительности установки. О любых дальнейших проблемах можно сообщить на GitHub Azure CLI.
techcommunity.microsoft.com
Azure CLI Windows MSI Upgrade Issue: Root Cause, Mitigation, and Performance Improvements
