Поделиться через


Значок Visual StudioЗаметки о выпуске Visual Studio 2019 версии 16.9



Сообщество разработчиков System Requirementsy | Compatibilitable | Code | Release History | Terms Blogs | New in Visual Studio Docs | (Новые возможности в документации Visual Studio) |


Примечание.

Этот выпуск — не последняя версия Visual Studio. Чтобы скачать последний выпуск, посетите сайт Visual Studio .



Новые возможности Visual Studio 2019 версии 16.9

Поддержка диапазона времени

Visual Studio 2019 версии 16.9 является четвертой поддерживаемой базовой версией Visual Studio 2019. Клиентам Enterprise и Professional, которым нужно применить долгосрочную стабильную и безопасную среду разработки, мы рекомендуем основывать свои стандарты именно на этой версии.  Как разъясняется в нашей политике жизненного цикла и поддержки, выпуск исправлений и обновлений безопасности для версии 16.9 продолжится до конца октября 2022 г. В октябре 2022 г. будет год с момента выпуска Visual Studio 2019 версии 16.11, которая была объявлена как последняя обслуживаемая базовая версия.

Кроме того, с момента выпуска версии 16.9 в течение 12 месяцев будет поддерживаться версия 16.7, которая была предыдущей базовой версией и поддержка которой прекратится в апреле 2022 года. Обратите внимание, что версия 16.8 также уже не поддерживается. Эти промежуточные выпуски получают исправления только до выпуска следующего дополнительного обновления.

Последнюю безопасную версию Visual Studio 2019 версии 16.9 можно получить в разделе скачивания my.visualstudio.com. Ознакомьтесь с последней версией заметок о выпуске или посетите сайт Visual Studio , чтобы скачать последнюю поддерживаемую версию Visual Studio 2019. Дополнительные сведения о базовых версиях Visual Studio см. в статье о политике поддержки Visual Studio 2019.

Выпуски Visual Studio 2019 версии 16.9

Помещенные в архив заметки о выпуске Visual Studio 2019

Блог Visual Studio 2019

Блог Visual Studio 2019 является официальным источником сведений о продукте от группы разработчиков Visual Studio. Более подробные сведения о выпусках Visual Studio 2019 версии 15.9 можно найти в следующих записях:


Значок заметок о выпуске Visual Studio 2019 версии 16.9.26Значок нового выпуска

Выпущено 11 октября 2022 г.

Проблемы, устраненные в этом выпуске

  • Администраторы смогут обновить установщик VS на автономном клиентском компьютере из макета без обновления VS.

Советы по безопасности


Значок заметок о выпуске Visual Studio 2019 версии 16.9.25

Советы по безопасности

  • CVE-2022-38013 .NET С уязвимостью типа "отказ в обслуживании " существует в ASP.NET Core 3.1 и .NET 6.0, где вредоносный клиент может вызвать переполнение стека, что может привести к атаке типа "отказ в обслуживании", когда злоумышленник отправляет настраиваемую полезные данные, анализируемые во время привязки модели.

Значок заметок о выпуске Visual Studio 2019 версии 16.9.24

Выпущено 9 августа 2022 г.

Проблемы, устраненные в этом выпуске

  • Обновляет Git для Windows до версии 2.37.1.1, обращаясь к CVE-2022-31012.

Советы по безопасности


Значок заметок о выпуске Visual Studio 2019 версии 16.9.23

Выпущено 14 июня 2022 г.

Проблемы, устраненные в этом выпуске

  • Обновленный LibraryManager для размещения изменений в API cdnjs

Советы по безопасности


Значок заметок о выпуске Visual Studio 2019 версии 16.9.21

Дата выпуска: 10 мая 2022 г.

Проблемы, устраненные в этом выпуске

  • Версия Git для Windows, используемая Visual Studio, и устанавливаемый дополнительный компонент обновлены до версии 2.36.0.1.
  • Исправлена проблема с интеграцией Git, из-за которой при извлечении или синхронизации расходящихся ветвей в окне вывода не отображалась локализованная подсказка о том, как ее решить.

Советы по безопасности

CVE-2022-29117 уязвимость .NET, связанная с отказом в обслуживании В .NET 6.0, .NET 5.0 и .NET Core 3.1 существует уязвимость, при которой вредоносный клиент может манипулировать файлами cookie и вызывать отказ в обслуживании.

CVE-2022-23267 уязвимость .NET, связанная с отказом в обслуживании В .NET 6.0, .NET 5.0 и .NET Core 3.1 существует уязвимость, при которой вредоносный клиент может вызывать отказ в обслуживании из-за избыточного выделения памяти через HttpClient.

CVE-2022-29145 уязвимость .NET, связанная с отказом в обслуживании В .NET 6.0, .NET 5.0 и .NET Core 3.1 существует уязвимость, при которой вредоносный клиент может вызывать отказ в обслуживании при анализе HTML-форм.

Уязвимость к повышению прав CVE-2022-24513. Существует потенциальная уязвимость к повышению прав, когда служба обновления Microsoft Visual Studio неверно анализирует данные локальной конфигурации.


Значок заметок о выпуске Visual Studio 2019 версии 16.9.20

Дата выпуска: 19 апреля 2022 г.

Проблемы, устраненные в этом выпуске

  • Исправлена регрессия vctip.exe из версии 16.9.19.

Значок заметок о выпуске Visual Studio 2019 версии 16.9.19

Дата выпуска: 12 апреля 2022 г.

Проблемы, устраненные в этом выпуске

Советы по безопасности

Уязвимость к повышению прав CVE-2022-24765. В Git для Windows существует потенциальная уязвимость к повышению прав, связанная с возможностью выполнять операции Git вне репозитория при поиске каталога Git. Версия Git для Windows обновлена до 2.35.2.1.

Уязвимость загрузки DLL CVE-2022-24767. В установщике Git для Windows существует потенциальная уязвимость загрузки DLL при запуске средства удаления с учетной записью пользователя SYSTEM. Версия Git для Windows обновлена до 2.35.2.1.

Уязвимость к повышению прав CVE-2022-24513. Существует потенциальная уязвимость к повышению прав, когда служба обновления Microsoft Visual Studio неверно анализирует данные локальной конфигурации.


Значок заметок о выпуске Visual Studio 2019 версии 16.9.18

Выпущено 8 марта 2022 г.

Проблемы, устраненные в этом выпуске

Советы по безопасности

Уязвимость CVE-2020-8927 — уязвимость удаленного выполнения кода в .NET 5.0 и .NET Core 3.1, где в версиях библиотеки Brotli, предшествующих версии 1.0.8, имеется ошибка, связанная с переполнением памяти.

Уязвимость CVE-2022-24464 — уязвимость типа "отказ в обслуживании" в .NET 6.0, .NET 5.0 и .NET CORE 3.1 при анализе определенных типов HTTP-запросов форм.

Уязвимость CVE-2022-24512 — уязвимость удаленного выполнения кода в .NET 6.0, .NET 5.0 и .NET Core 3.1 при переполнении буфера стека в подпрограмме двойного анализа .NET.

CVE-2021-3711: уязвимость переполнения буфера OpenSSL — потенциальная уязвимость переполнения буфера в OpenSSL, который используется Git для Windows. Git для Windows теперь обновлен до версии 2.35.1.2, в которой эта проблема устранена.


Значок заметок о выпуске Visual Studio 2019 версии 16.9.17

Дата выпуска: 8 февраля 2022 г.

Проблемы, устраненные в этом выпуске

Советы по безопасности

Уязвимость CVE-2022-21986 В .NET версий 5.0 и 6.0 обнаружена уязвимость атаки типа "отказ в обслуживании" при обработке веб-сервером Kestrel определенных HTTP/2-запросов и HTTP/3-запросов.

CVE-2022-21871 Уязвимость несанкционированного повышения привилегий в среде выполнения стандартного сборщика Центра диагностики Уязвимость несанкционированного повышения привилегий возникает, когда стандартный сборщик Центра диагностики неправильно обрабатывает операции с данными.


Значок заметок о выпуске Visual Studio 2019 версии 16.9.16

Выпущено 11 января 2022 г.

Проблемы, устраненные в этом выпуске

  • Исправлен периодический сбой с link.exe при создании больших проектов с помощью Visual Studio 16.8.5 или более поздней версии.
  • Исправлена проблема с невозможностью многократной отладки приложений, когда Терминал Windows используется в качестве терминала по умолчанию.
  • Исправлен процесс установки для разблокировки клиентов в конфигурациях с ограниченным доступом.
  • Исправлена ошибка, из-за которой клиент не мог обновить более новую версию начального загрузчика. Если клиент использует начальный загрузчик и установщик, выпущенные в январе 2022 года или позже, все обновления, использующие последующие начальные загрузчики, должны работать в течение всего жизненного цикла продукта.

От сообщества разработчиков


Значок заметок о выпуске Visual Studio 2019 версии 16.9.15

Дата выпуска: 14 декабря 2021 г.

Проблемы, устраненные в этом выпуске

  • В рабочую нагрузку Python добавлена версия Python 3.9.7. Версия Python 3.7.8 удалена из-за уязвимости системы безопасности.

Советы по безопасности

CVE-2021-43877 Уязвимость В модуле ASP.NET Core существует уязвимость несанкционированного повышения привилегий при размещении приложений .NET Core, .NET 5 и .NET 6 в IIS.


Значок заметок о выпуске Visual Studio 2019 версии 16.9.14

Дата выпуска: 16 ноября 2021 г.

Проблемы, устраненные в этом выпуске

  • Теперь начальные загрузчики учитывают параметр --useLatestInstaller, который приводит к интеграции последнего установщика в макет. Этот последний установщик, который поставляется с Visual Studio 2022, обеспечивает сценарий, в котором предприятиям нужно перевести клиенты из одного расположения в другое. Дополнительные сведения см. в [руководстве администратора Visual Studio](*Теперь начальные загрузчики учитывают параметр --useLatestInstaller, который приводит к интеграции последнего установщика в макет. Этот последний установщик, который поставляется с Visual Studio 2022, обеспечивает сценарий, в котором предприятиям нужно перевести клиенты из одного расположения в другое. Дополнительные сведения см. в руководстве администратора Visual Studio.).

Значок заметок о выпуске Visual Studio 2019 версии 16.9.13

Дата выпуска: 9 ноября 2021 г.

Проблемы, устраненные в этом выпуске

  • Исправлена ошибка, из-за которой ссылка на ярлык меню "Пуск" исчезает. Ошибка возникает только при обновлении нескольких экземпляров разных номеров SKU продукта на одном компьютере.

Советы по безопасности

CVE-2021-42319 Уязвимость к повышению привилегий В поставщике WMI, включенном в установщик Visual Studio, есть уязвимость к повышению привилегий.

CVE-2021-42277 Уязвимость к повышению прав в стандартной службе сборщика Центра диагностики Уязвимость, которая может привести к несанкционированному повышению привилегий, возникает, когда стандартный сборщик концентратора диагностики неправильно обрабатывает операции с файлами.


Значок заметок о выпуске Visual Studio 2019 версии 16.9.12

Дата выпуска: 12 октября 2021 г.

Проблемы, устраненные в этом выпуске

  • Обновления интерфейсов ARM64 и ARM64EC между двоичным кодом и средой выполнения инструментирования POGO.

Советы по безопасности

CVE-2021-41355 Уязвимость к раскрытию информации в .NET 5.0

В .NET есть уязвимость к раскрытию информации, которая вызвана тем, что System.DirectoryServices.Protocols.LdapConnection отправляет учетные данные в виде обычного текста в Linux.

CVE-2020-1971 Уязвимость OpenSSL, приводящая к отказу в обслуживании

Существует потенциальная уязвимость отказа в обслуживании в библиотеке OpenSSL, используемой GIT.

CVE-2021-3449 Уязвимость OpenSSL, приводящая к отказу в обслуживании

Существует потенциальная уязвимость отказа в обслуживании в библиотеке OpenSSL, используемой GIT.

CVE-2021-3450 Уязвимость OpenSSL, приводящая к отказу в обслуживании

Возможный обход флага в библиотеке OpenSSL, используемой GIT.


Значок заметок о выпуске Visual Studio 2019 версии 16.9.11

Выпущено 14 сентября 2021 г.

Проблемы, устраненные в этом выпуске

  • Исправлена неустранимая внутренняя ошибка компилятора, вызванная неименованными структурами, на поля которых имеются ссылки в аннотациях SAL.
  • Исправлен редкий сбой при анализе шаблона кода, использующего __uuidof.

Советы по безопасности

CVE-2021-26434 Уязвимость, связанная с повышением привилегий некорректного назначения разрешений в Visual Studio

В Visual Studio существует уязвимость, связанная с назначением разрешений после установки рабочей нагрузки "Разработка игр на C++" и выбора рабочей нагрузки "Установщик Unreal Engine". Система уязвима для LPE — во время установки она создает каталог с доступом на запись для всех пользователей.

От сообщества разработчиков


Значок заметок о выпуске Visual Studio 2019 версии 16.9.10

Выпущено 10 августа 2021 г.

Проблемы, устраненные в этом выпуске

  • При создании отчетов об установленных расширениях пути больше не отправляются на диск.
  • Исправлена ошибка IntelliSense, возникавшая при обработке статических членов данных в специализациях шаблонов в классе.
  • Исправлена проблема, которая затрагивала выполнение команды обновления в командной строке. Если первая попытка обновления завершается сбоем, то при последующем выполнении команды обновление начинается с того места, на котором остановилась предыдущая операция.

Советы по безопасности

CVE-2021-26423 — уязвимость .NET Core к отказу в обслуживании

Существует приводящая к отказу в обслуживании уязвимость, из-за которой серверные приложения .NET (Core), предоставляющие конечные точки WebSocket, могут быть обманным путем втянуты в бесконечный цикл при попытке считать отдельный кадр WebSocket.

CVE-2021-34485 — уязвимость к раскрытию информации в .NET Core

Существует связанная с раскрытием информации уязвимость, когда средство для сбора аварийных дампов и дампов по запросу создает дампы, имеющие глобальные разрешения на чтение в Linux и macOS.

CVE-2021-34532 — уязвимость к раскрытию информации в ASP.NET Core

Существует связанная с раскрытием информации уязвимость, когда регистрируется маркер JWT, который не удается проанализировать.


Значок заметок о выпуске Visual Studio 2019 версии 16.9.9

Выпущено 13 июля 2021 г.

Проблемы, устраненные в этом выпуске

  • Исправлена проблема ARM64X, при которой Outlook аварийно завершал работу при использовании надстроек.
  • Исправлена проблема, из-за которой компилятор C++ некорректно выполнял преобразования if.
  • Исправлена проблема ASan с совместимостью с последними обновлениями Windows.
  • ASan больше не сообщает о ложной ошибке перекрытия областей памяти memcpy.
  • Шаблон функции с неименованным параметром функции типа массива приводил к тому, что средство синтаксического анализа пропускало последующие определения функции, что приводило к ложной ошибке constexpr о том, что функция не определена, при вычислении вызова к ней в константном выражении. Исправление включает синтаксический анализ пропущенного определения функции.
  • Исправлена проблема с производительностью и ложноположительные результаты, вызываемые одним из выражений средства проверки, которое обнаруживало ошибки при неправильном использовании VARIANT.
  • Исправлена проблема с производительностью, вызываемая одним из выражений средства проверки, которое обнаруживало ошибки при неправильном использовании значений перечисления в качестве индекса.
  • Исправлена утечка памяти при компиляции нескольких единиц пропускной способности.
  • Анализатор параллелизма больше не должен выдавать ложные предупреждения C26110 (не удалось получить блокировку) с шаблонами автоматической блокировки.
  • Это исправление восстанавливает поведение внешних заголовков, пропуская анализ внешних заголовков и подавляя предупреждения от внешних заголовков.
  • Проверка параллелизма в анализе кода стала более интеллектуальной. Они реже дают неверные результаты для сложных потоков управления.
  • Исправлена проблема, связанная с созданием макета.
  • Устранена проблема, из-за которой обновления могли завершаться сбоем из-за отсутствия сведений о канале обновления.

От сообщества разработчиков


Значок заметок о выпуске Visual Studio 2019 версии 16.9.8

Дата выпуска: 15 июня 2021 г.

От сообщества разработчиков


Значок заметок о выпуске Visual Studio 2019 версии 16.9.7

Дата выпуска: 8 июня 2021 г.

Проблемы, устраненные в этом выпуске

  • Исправлена проблема в средстве клонирования инструкций SSA.
  • Исправлена проблема, которая приводила к сбою mspdbcore.dll.
  • Исправлена сборка баз кода клиента, которая работала длительное время, а затем время ожидания истекало.
  • Исправлена проблема, которая не позволяла разработчикам выполнять сборку PyTorch.
  • Исправляет внутреннюю ошибку MSBuild (MSB0001), возникавшую при создании большой базы кода с помощью 32-разрядного процесса MSBuild.exe.
  • Исправлена проблема в окне средства контейнера, вызывающая сбой Visual Studio 2019, возникающая, когда разработчики пытаются просмотреть сопоставленные порты, а затем переключаются на другой контейнер.

Советы по безопасности

CVE-2021-31957 Уязвимость ASP.NET, приводящая к отказу в обслуживании

В ASP.NET Core существует уязвимость, приводящая к отказу в обслуживании из-за неправильной обработки отключения клиента.

От сообщества разработчиков

На сайте сообщества разработчиков Visual Studio доступен полный список элементов, поставляемых в этом выпуске.

Вот лишь некоторые из проблем с наибольшим числом голосов, устраненные в выпуске 16.9.7:

Значок заметок о выпуске Visual Studio 2019 версии 16.9.6

Дата выпуска: 18 мая 2021 г.

Проблемы, устраненные в этом выпуске

  • Устранена ошибка "Не удается обратиться к удаленному объекту. Имя объекта: 'System.Net.Http.StringContent'" при попытке создать сертификат или запустить автоматическую подготовку.
  • Исправлена проблема, из-за которой функция Горячего перезапуска iOS работала неправильно.

От сообщества разработчиков

На сайте сообщества разработчиков Visual Studio доступен полный список элементов, поставляемых в этом выпуске.

Вот лишь некоторые из проблем с наибольшим числом голосов, устраненные в выпуске 16.9.6:


Значок заметок о выпуске Visual Studio 2019 версии 16.9.5

Выпущено 11 мая 2021 г.

Проблемы, устраненные в этом выпуске

  • Исправлена проблема, при которой инструменты Office не работали должным образом при использовании экспорта.
  • Исправлена ошибка, при которой происходило аварийное завершение Visual Studio 2019 во время определенных виртуальных вызовов между DLL-библиотеками x64 и ARM64EC.
  • Исправлена ложная ошибка при выполнении многопоточного кода, инструментированного с помощью ASan.
  • Исправлена проблема, из-за которой происходил сбой проекта и возникала ошибка "В результате вызова компонента COM возвращена ошибка в формате HRESULT E_FAIL".
  • Устранена проблема, из-за которой программа Visual Studio 2019 переставала отвечать на запросы при открытии файла C++ на этапе запуска.
  • Исправлена проблема с файлами конфигурации CmakeSettings.json, в которых не удавалось сохранить новые параметры.
  • Исправлена внутренняя ошибка компилятора, возникавшая при анализе исходного файла, если путь к нему содержал один или несколько символов, указанных не в кодировке ASCII.
  • Исправлена проблема с открытием файлов покрытия, в которых содержалось несколько записей для одной библиотеки.
  • Исправлена ошибка, приводившая к отказу в доступе для пользователей, которые выполняли вход с учетными записями, не являющимися рабочими, если удаленный рабочий стол был включен.
  • Исправлена ошибка, приводившая к сбою Visual Studio 2019 при настройке меню и нажатии на разделитель в диалоговом окне настройки.
  • Плавающие окна документов теперь восстанавливаются при открытии решения.
  • Исправлена проблема, которая приводила к сбою обновлений при создании администратором нового макета Visual Studio для развертывания обновлений. Обновление клиентского компьютера завершалось сбоем, так как менялось расположение макета.
  • Исправлена проблема, при которой сборка проекта с включенным быстрым развертыванием завершалась ошибкой или развертывание занимало много времени.
  • Добавлена поддержка Xcode 12.5.
  • Исправлена проблема, которая приводила к сбою обновлений при создании администратором нового макета Visual Studio для развертывания обновлений. Обновление клиентского компьютера завершалось сбоем, так как менялось расположение макета.

Советы по безопасности

CVE-2021-27068 При внедрении python.exe во вложенную папку возможно удаленное выполнение кода

Существует уязвимость, связанная с удаленным выполнением кода, при открытии рабочей области с кодом Python, которая содержит файл python.exe в подпапке scripts.

CVE-2021-31204 Уязвимость, связанная с повышением привилегий в .NET Core

В .NET 5.0 и .NET Core 3.1 существует уязвимость, связанная с повышением уровня привилегий, когда пользователь запускает приложение с одним файлом в операционных системах на основе Linux или macOS.

От сообщества разработчиков

На сайте сообщества разработчиков Visual Studio доступен полный список элементов, поставляемых в этом выпуске.

Вот лишь некоторые из проблем с наибольшим числом голосов, устраненных в выпуске 16.9.5:


Значок заметок о выпуске Visual Studio 2019 версии 16.9.4

Выпущено 13 апреля 2021 г.

Проблемы, устраненные в этом выпуске

  • Исправлена ошибка SFINAE с некоторыми формами имен шаблонов в независимых базовых классах.
  • Исправлена ситуация, в которой доступ к временному каталогу блокировался при попытке IntelliCode записать журнал во временный каталог.
  • Устранена проблема, из-за которой функциональность Visual Studio была ограничена, если было также установлено стороннее программное обеспечение для управления привилегиями.
  • Устранена проблема, когда клиенты многократно запускают на Xbox отладку с постоянным увеличением объема используемых ресурсов ядра и в конечном итоге требуется перезапуск Xbox, который приводит к потере состояния.
  • Устранено зависание при отладке машинного кода в сборках Windows выпуска Insider Preview.
  • Устранена ошибка специальных возможностей, связанная с фокусом клавиатуры.
  • В диалоговом окне "Новый проект" возвращены отсутствующие шаблоны Xamarin (библиотека классов iOS/Android, библиотека привязок iOS/Android, Android Wear, Xamarin.UITest). Эти шаблоны были скрыты по ошибке.
  • Для проектов C++ на основе CMake, предназначенных для Linux и использующих подключение SSH, восстановлено предыдущее поведение каталога назначения, задаваемого в CMakeSettings.json с помощью свойства remoteCMakeListsRoot, аналогичное версии 16.8, при котором назначение копирования соответствует корню исходного каталога. Подробные сведения см. в заявке Подключение к удаленному компьютеру Linux использует неверный путь назначения.

Советы по безопасности

CVE-2021-27064 — уязвимость к повышению прав в Visual Studio Installer

Существует уязвимость к удаленному выполнению кода, при котором Visual Studio Installer запускает Feedback Client в состоянии с повышением прав.

CVE-2021-28313 / CVE-2021-28321 / CVE-2021-28322 — уязвимость к повышению прав в стандартной службе сбора данных Центра диагностики

Уязвимость, которая может привести к несанкционированному повышению привилегий, возникает, когда стандартный сборщик центра диагностики неправильно обрабатывает определенные операции с данными.

От сообщества разработчиков

На сайте сообщества разработчиков Visual Studio доступен полный список элементов, поставляемых в этом выпуске.

Вот лишь некоторые из проблем с наибольшим числом голосов, устраненных в выпуске 16.9.4:


Значок заметок о выпуске Visual Studio 2019 версии 16.9.3

Выпущено 30 марта 2021 г.

Проблемы, устраненные в этом выпуске

  • Исправлена ошибка, при которой в MSBuild возникал сбой при попытке сборки решения, содержащего проект веб-сайта, с помощью файла MSBuild.exe.
  • Исправлена ошибка, при которой возникал сбой, вызванный некоторыми зависимостями ServiceHub.
  • Исправлена проблема с блокировкой, из-за которой пользователям средства визуальной диагностики XAML на устройствах Xbox или IoT была запрещена удаленная отладка.

От сообщества разработчиков

На сайте сообщества разработчиков Visual Studio доступен полный список элементов, поставляемых в этом выпуске.

Вот лишь некоторые из проблем с наибольшим числом голосов, устраненных в выпуске 16.9.3.


Значок заметок о выпуске Visual Studio 2019 версии 16.9.2

Выпущено 16 марта 2021 г.

Проблемы, устраненные в этом выпуске

  • Обновлены имена указателей на глобальные функции ARM64X.
  • Исправлена ошибка, возникающая при извлечении первого OBJ из ARM64X LIB с помощью link -lib -extract.
  • Исправлена ошибка, когда код, скомпилированный с помощью санитайзера адресов и оптимизаций, мог привести к созданию неверного кода, вызывавшему сбой Visual Studio 2019.
  • Исправлена проблема, приводящая к сбою из-за добавления функций через редактор диалоговых окон в редакторе ресурсов.
  • Nuget.org больше не требуется удалять дважды в качестве источника пакета.
  • Улучшена производительность анализа пакета NuGet.
  • Исправлено сообщение об ошибке, информирующее о нерекомендуемых API, которое клиенты получали при использовании узла Базы данных SQL Azure в обозревателе сервера.
  • Исправлена проблема, которая приводила к выводу сообщения об ошибке, указывающего на неправильную загрузку CascadePackage.
  • Исправлена проблема, из-за которой было невозможно развернуть проект сборки с включенным быстрым развертыванием либо для развертывания требовалось дополнительное время.
  • Исправлена проблема, из-за которой после горячей перезагрузки сохраненные изменения отображались в полностраничном режиме.
  • Исправлена проблема, из-за которой горячая перезагрузка приводила к нарушению работы или применению изменений для динамического визуального дерева.

От сообщества разработчиков

На сайте сообщества разработчиков Visual Studio доступен полный список элементов, поставляемых в этом выпуске.

Вот лишь некоторые из проблем с наибольшим числом голосов, устраненных в выпуске 16.9.2:


Значок заметок о выпуске Visual Studio 2019 версии 16.9.1

Выпущено 9 марта 2021 г.

Советы по безопасности

CVE-2021-21300 — уязвимость к удаленному выполнению кода в Git для Visual Studio

Существует уязвимость удаленного выполнения кода, когда Visual Studio клонирует вредоносный репозиторий.

CVE-2021-26701 — уязвимость к удаленному выполнению кода в .NET Core

В .NET 5 и .NET Core есть уязвимость удаленного выполнения кода. Она обусловлена методами обработки кодировки текста.

Проблемы, устраненные в этом выпуске

  • Исправлена выдача неверных метаданных ARM64EC для объектов.
  • Исправлена проблема, из-за которой C++ с включенными FixIt (настройка по умолчанию) отображал ненужные подчеркивания ошибок при открытии любого кода.
  • В некоторых случаях механизм IntelliSense в C++ пытается использовать чрезмерно большое число путей для включения файлов, что приводит к прекращению его работы.
  • Повышена стабильность Live Share при работе с C++.
  • Исправлена проблема, из-за которой в IntelliCode прекращалась загрузка символов.
  • Улучшено время загрузки и закрытия решений в ситуациях, когда у пользователей включен новый экспериментальный редактор Razor.
  • Исправлена проблема со сбоем ServiceHub, который мог проявляться после открытия диалогового окна "Расширения и обновления" и приводить к завершению работы Visual Studio.
  • Исправлена ошибка, из-за которой выдавалось сообщение о недоступности обновлений при проверке обновлений на медленных компьютерах.
  • Улучшено поведение при запуске проектов WAP из Visual Studio в ходе выполнения добавочных изменений.
  • Исправлена проблема, из-за которой установка не запускалась при использовании итальянского языкового стандарта.
  • Исправлен сценарий обновления, из-за которого установщик переставал отвечать в течение очень долгого времени, пока инициализировался кэш шаблонов .NET Core.

От сообщества разработчиков

На сайте сообщества разработчиков Visual Studio доступен полный список элементов, поставляемых в этом выпуске.

Вот лишь некоторые из проблем с наибольшим числом голосов, устраненных в выпуске 16.9.1:


Значок заметок о выпуске Visual Studio 2019 версии 16.9.0

Выпущено 2 марта 2021 г.

Сводка новых возможностей этого выпуска Visual Studio 2019 версии 16.9.0

C++

  • Санитизатор адресов:
    • Поддержка санитайзера адресов в Windows теперь не считается экспериментальной и стала общедоступной.
    • Расширена поддержка RtlAllocateHeap, устранена проблема совместимости для перехватчиков RtlCreateHeap и RtlAllocateHeap при создании исполняемых пулов памяти.
    • Добавлена поддержка устаревших функций работы с памятью GlobalAlloc и LocalAlloc. Эти перехватчики можно включить с помощью ASAN_OPTIONS=windows_hook_legacy_allocators=true.
    • Обновлены сообщения об ошибках, связанные с пересечением теневой памяти и сбоями перехвата, чтобы предоставлять четкие сведения о проблемах и методах решения.
    • Интеграция с интегрированной средой разработки теперь поддерживает полную коллекцию исключений, о которых может сообщать ASan.
    • Компилятор и компоновщик предложат выдавать отладочную информацию, если обнаружат выполнение сборки с помощью ASan без выдачи отладочной информации.
  • Теперь вы можете ориентироваться на версию LLVM среды выполнения OpenMP с помощью нового ключа компилятора /openmp:llvm. Это добавит поддержку предложения lastprivate в разделах #pragma omp и переменных индексов без знака в параллельных циклах for. Ключ /openmp:llvm в настоящее время доступен только для целевой платформы amd64 и считается экспериментальным.
  • Проекты Visual Studio CMake теперь имеют поддержку первого класса для удаленной разработки Windows. Сюда включается настройка проекта CMake для целевой платформы Windows ARM64, развертывание проекта на удаленном компьютере Windows и его отладка на удаленном компьютере Windows из Visual Studio.
  • Версия Ninja, поставляемая с Visual Studio в Windows, была обновлена до 1.10. Дополнительные сведения о новых возможностях см. в заметках о выпуске для Ninja 1.10.
  • Версия CMake, поставляемая с Visual Studio, была обновлена до 3.19. Дополнительные сведения о новых возможностях см. в заметках о выпуске для CMake 3.19.
  • В библиотеке STL многие типы блокировок и предохранителей помечены тегом nodiscard: https://github.com/microsoft/STL/pull/1495
  • IntelliSense:
  • MSVC теперь определяет правильные среды выполнения для санитайзера адресов, необходимые для двоичных файлов. Проект Visual Studio автоматически получит новые изменения. При использовании средства санитайзера адресов в командной строке теперь необходимо передать компилятору только /fsanitize=address.
  • Диспетчер соединений Visual Studio теперь поддерживает закрытые ключи с помощью алгоритма открытого ключа ECDSA.
  • LLVM и Clang, поставляемые в нашем установщике, обновлены до версии 11. Дополнительные сведения см. в заметках о выпуске для LLVM и Clang.
  • Теперь Visual Studio будет использовать переменные CMake из файлов цепочки инструментов для настройки IntelliSense. Это обеспечит лучшую производительность при разработке встраиваемых приложений и Android.
  • Реализация предложения о дополнительных контейнерах constexpr, которая позволяет деструкторам и новым выражениям представлять constexpr. Это создает условия для использования таких служебных программ, как constexpr std::vector и std::string.
  • Расширенная поддержка IntelliSense для модулей C++20, включая переход к определению, переход к модулю и завершение элементов.
  • Сокращенные шаблоны функций теперь поддерживаются в компиляторе MSVC.

Javascript/TypeScript

  • Добавлена поддержка отладки WebView2 JavaScript/TypeScript на основе Edge Chromium для приложений WPF, WinForms и проектов WinUI 3. Чтобы ее включить, выберите отладчик JavaScript в диалоговом окне "Свойства проекта". Сведения о том, как начать работу с ним, можно найти здесь.

Debugger

  • Добавлен новый автоматический анализатор, который проверяет потоки на наличие взаимоблокировок.
Автоанализатор, проверяющий потоки для взаимоблокировок
  • Добавлен новый автоматический анализатор, который проверяет очередь метода завершения .NET Core и обнаруживает потенциально блокирующие объекты.
Автоанализатор, проверяющий очередь завершения .NET Core
  • Теперь Visual Studio отфильтровывает избыточные повторяющиеся кадры из стека вызовов при остановке отладчика в исключении StackOverflow. Теперь можно просмотреть базу стека, в которой возникла бесконечная рекурсия, что должно упростить изучение таких ошибок.
Фильтрует избыточные повторяющиеся кадры из стека вызовов, когда отладчик останавливается в исключении StackOverflow

Profiler

  • Добавлен новый сценарий динамического инструментирования, который работает быстрее (не требует VSInstr) и позволяет инструментировать приложения .NET Core без PDB-файлов.
Динамическое профилирование инструментирования

F# и средства для F#

В этом выпуске добавлено несколько возможностей для повышения производительности и скорости работы со средствами F# для Visual Studio.

  • Поддержка .NET Core FSI.
  • Справка по сигнатурам для приложений-функций.
  • 14 новых быстрых исправлений.
  • Значительные улучшения производительности и отзывчивости для инструментария F#.

Вы можете прочитать о них в заметках об обновлении F# и средств для F# для Visual Studio 16.9 или о выпуске продукта.

Производительность .NET

  • Теперь IntelliSense поддерживает заполнение для символов препроцессора.
  • Обозреватель решений теперь отображает новые генераторы исходного кода .NET 5.0.
  • Go To All (Перейти ко всем) не будет отображать дубликаты результатов, полученные от netcoreapp3.1 и netcoreapp2.0.
  • Окно Quick Info (Краткая информация) теперь отображает идентификаторы или номера предупреждений компилятора для возможности их подавления.
  • Директивы using теперь автоматически добавляются при копировании и добавлении типов в новый файл.
  • Теперь когда вы нажимаете ;, чтобы принять метод из списка завершения, IntelliSense автоматически вставляет круглые скобки и точку с запятой при создании объектов и вызове методов.
  • Семантическая цветовая раскраска для записей C# 9.0.
  • Рефакторинг, удаляющий ненужные пустые переменные.
  • Рефакторинг, который преобразует буквальную и обычную строки в интерполированную строку с сохранением фигурных скобок, которые были предназначены для выходных данных.
  • Исправление кода в Visual Basic, которое удаляет ключевое слово shared при преобразовании методов, общих для модуля.
  • Возможность рефакторинга с предложением использовать new(…) в неконфликтных сценариях
  • Исправление кода для устранения избыточных выражений равенства для C# и Visual Basic
  • Анализаторы стиля кода .NET (IDE) теперь могут применяться при сборке.
  • В Syntax Visualizer отображается текущий цвет переднего плана для расширенных цветов
  • Новая всплывающая подсказка при наведении указателя мыши на идентификатор диагностики для предупреждений прагма
  • При вводе ключа возврата из комментария теперь автоматически выполняется закомментирование новой строки.
  • Усовершенствованы подсказки имен встроенных параметров.
  • Отладка .NET Core с использованием WSL 2

Звуковые подсказки и обновления специальных возможностей Обозревателя тестов

  • Теперь вы можете настраивать звуковые подсказки для обозревателя тестов, меню Group By (Группировать по) стало более доступным для средств чтения с экрана, а просмотр длинных результатов теста упрощается благодаря ссылкам, позволяющим напрямую открывать файлы журналов.

Обновления экспериментального редактора Razor

  • Семантическая раскраска HTML и C#.
  • Переименование символов C#, отраженных в закрытых файлах Razor.
  • Дополнительные лампочки C# в файлах Razor.
  • Улучшено форматирование смешанного содержимого в файлах Razor.

Веб-инструменты .NET

  • Развертывайте приложения Steeltoe для Azure Spring Cloud с помощью публикации Visual Studio (например, щелкните правой кнопкой мыши > Опубликовать в обозревателе решений).

Веб-инструменты

Средства XAML (WPF, WinUI, UWP и Xamarin.Forms)

Инструментарий MVVM

  • Улучшенная поддержка MVVM. В этом выпуске в редактор XAML добавлены лампочки, позволяющие создавать свойства и команды в существующих моделях представления. Также добавлены лампочки, помогающие настроить DataContext для существующих моделей представления в XAML с целью улучшения привязок IntelliSense.

Xamarin.Forms

В этом выпуске мы внесли несколько улучшений для разработчиков Xamarin.Forms:

  • Режим "Только изменения" Горячей перезагрузки XAML теперь используется по умолчанию для проектов Xamarin.Forms 5.x. Начиная с Visual Studio версии 16.9 режим "Только изменения" используется по умолчанию в Горячей перезагрузке XAML для проектов, предназначенных для Xamarin.Forms версии 5.x или более поздней. Проекты для версии 4.x будут автоматически использовать интерфейс "Полная страница" Горячей перезагрузки XAML, так как интерфейс "Только изменения" совместим только с Xamarin.Forms версии 5.x или более поздней. Если вы используете Xamarin.Forms 5.x и по какой-либо причине хотите открыть старый интерфейс "Полная страница" Горячей перезагрузки XAML, перейдите для этого к параметрам Горячей перезагрузки в разделе Сервис > Параметры > Отладка > Горячая перезагрузка.

  • Обновления состояния XAML Горячая перезагрузка в окне вывода: клиенты Xamarin.Forms с помощью XAML Горячая перезагрузка теперь могут просмотреть дополнительные сведения о том, что происходит с конвейером XAML Горячая перезагрузка с помощью окна вывода. Чтобы начать работу, откройте окно выходных данных через пункт меню Вид > Вывод и выберите Горячая перезагрузка Xamarin из раздела Показать выходные данные из в верхней части этого окна.

XAML Горячая перезагрузка — сведения о окне вывода
  • Xamarin.Forms + UWP — разрешено System.ExecutionEngineException: начиная с выпуска Visual Studio 2019 версии 16.8 мы непреднамеренно представили исключение среды выполнения, которое активирует ошибки System.ExecutionEngineException, когда разработчики будут отладить приложение Xamarin.Forms, предназначенное для Windows (UWP). Начиная с этого выпуска (версия 16.9, предварительная версия 4) в сочетании с обновлением пакета NuGet Microsoft.NETCore.UniversalWindowsPlatform (версия 6.2.12 и более поздних версий) эта проблема устранена. Примечание. Это исправление не только для Visual Studio 2019 версии 16.9. При переводе проектов на новый пакет NuGet эта проблема также должна быть устранена для Visual Studio версии 16.9.

Средства для Unity

  • Просмотр корневых игровых объектов при отладке в новом узле Active Scene (Активная сцена) окна Locals (Локальные).
  • Просмотр всех компонентов GameObject при отладке в новом узле this.gameObject окна Locals (Локальные).
  • Просмотр всех дочерних игровых объектов и компонентов с помощью узлов Children (Дочерние объекты) и Components (Компоненты) в окне Locals (Локальные).
  • Просмотр расположения GameObject в сцене при изучении свойства Active Scene (Активная сцена).
  • Поддержка JobEntityBatch/Lambdas при использовании сущностей с генераторами исходного кода.
  • Улучшена поддержка отображения для крупных массивов с группированием индексов.
  • Подсветка синтаксиса для шейдеров лучей, UXML- и USS-файлов.
  • Visual Studio теперь будет отслеживать отсутствующие компоненты и предлагать установить их при использовании проектов Unity.
  • API сообщений Unity обновлен для всех методов, используемых как сопрограммы.

Производительность Git

  • Мы обновили флаг предварительной версии функции для нового интерфейса Git, используя встроенную ссылку на предоставление отзыва, которая позволяет связаться напрямую с группой разработчиков.
  • На домашней странице Team Explorer и на странице подключения представлены подробные сведения о переходе на новый интерфейс Git.
  • Поддержка пользовательских удаленных репозиториев в push-уведомлениях ветвей.
  • Извлечение ветви двойным щелчком в окне репозитория Git.
  • Фиксация изменений с помощью клавиш CTRL+ВВОД.
  • Отправка всех тегов из окна изменений Git.

Visual Studio Installer

  • Visual Studio Installer больше не требует повышенных прав при запуске
  • Visual Studio Installer теперь поддерживает HDR-отображение
  • Visual Studio Installer поддерживает средство чтения с экрана Navigator
  • Обновления Installer теперь встроены в обновления Visual Studio для простоты
  • Visual Studio Installer добавляет поддержку темной темы

Сведения о новых возможностях Visual Studio 2019 версии 16.9.0

Производительность Git

  • Фиксация изменений с помощью сочетания клавиш CTRL+ВВОД
CTRL+ВВОД для фиксации
Фиксация изменений с помощью сочетания клавиш CTRL+ВВОД
  • Отправка всех тегов из окна изменений Git.
Отправка всех тегов
Отправка всех тегов в удаленный репозиторий

Производительность .NET

  • Отладка .NET Core с использованием WSL 2 позволяет запускать и отлаживать консоль и веб-приложения .NET Core в WSL 2 из Visual Studio. Это предоставляет разработчикам Windows, создающим продукты для рабочих сред Linux, более точные возможности локальной отладки.
Отладка .NET Core с использованием WSL 2
Отладка .NET Core с использованием WSL 2
  • Теперь доступна возможность рефакторинга с предложением использовать new(…) в неконфликтных сценариях. Наведите курсор на объявление поля. Нажмите CTRL+., чтобы открыть меню Быстрые действия и рефакторинг. Выберите Использовать new(…).
Рефакторинг с помощью возможности
Рефакторинг с помощью возможности "Использовать new(...)"
  • Теперь доступно исправление кода для устранения избыточных выражений равенства для C# и Visual Basic. Наведите курсор на избыточное выражение равенства. Нажмите CTRL+., чтобы открыть меню Быстрые действия и рефакторинг. Выберите Удалить избыточное выражение равенства.
Исправление с возможностью удаления избыточных выражений равенства
Исправление с возможностью удаления избыточных выражений равенства
  • Анализаторы стиля кода .NET (IDE) теперь могут применяться при сборке. Анализаторы стиля кода .NET можно установить как пакет NuGet для C# и Visual Basic или включить в свойствах проекта. Чтобы открыть свойства проекта, щелкните правой кнопкой мыши проект в Обозревателе решений и выберите Свойства. Затем выберите вкладку Code Analysis, где можно выбрать Принудительно применять CodeStyle при сборке (экспериментальная версия).
Окно свойств проекта для включения анализаторов стиля кода .NET
Окно свойств проекта для включения анализаторов стиля кода .NET
  • В Syntax Visualizer (устанавливается с пакетом SDK .NET Compiler Platform) теперь отображается текущий цвет переднего плана для расширенных цветов. Просто используйте визуализатор для перехода к тексту, для которого нужно изменить цвета, или выберите его в редакторе, а затем щелкните классифицированный цвет, чтобы изменить его.
Раскраска в Syntax Visualizer
Раскраска в Syntax Visualizer
  • Теперь доступна всплывающая подсказка при наведении указателя мыши на идентификатор диагностики для предупреждений прагма. В подсказке диагностики также есть ссылка, которую можно щелкнуть для перехода к документации.
Всплывающая подсказка диагностики для предупреждений прагма
Всплывающая подсказка диагностики для предупреждений прагма
  • При вводе ключа возврата из комментария вы можете заметить, что новая строка теперь автоматически закомментирована. Это новый параметр, который включен по умолчанию. Чтобы отключить автоматическое закомментирование новой строки, выберите Средства>Параметры>Текстовый редактор>C# или Основные>Расширенные и снимите флажок Вставлять // в начале новых строк при написании комментариев //.

В выпуск 16.8, предварительная версия 2 мы добавили подсказки для имен встроенных параметров, которые вставляют элементы оформления для литералов, приведенных литералов и создаваемых экземпляров объектов перед каждым аргументом в вызовах функций. В этом выпуске мы добавили следующие усовершенствования:

  • Дополнительные параметры настройки для типов оформлений, которые вы хотите вставить.

  • Подсказки по встроенным типам для переменных с выводимыми типами и типами лямбда-параметров.

  • Возможность отключения подсказки имен встроенных параметров, если они совпадают с намерениями метода или отличаются только суффиксом.

  • Директивы using теперь автоматически добавляются при копировании и добавлении типов в новый файл. Чтобы включить эту функцию, перейдите в раздел Сервис>Параметры>Текстовый редактор>C# или Basic>Дополнительно и выберите Добавлять отсутствующие директивы using при вставке.

Добавлять отсутствующие директивы using при вставке
Добавлять отсутствующие директивы using при вставке
  • Теперь когда вы нажимаете ;, чтобы принять метод из списка завершения, IntelliSense автоматически вставляет круглые скобки и точку с запятой при создании объектов и вызове методов.
Завершение вызова метода
Завершение вызова метода
  • Теперь используется семантическая цветовая раскраска для записей C# 9.0. Вы можете настроить цвета в разделе Сервис>Параметры>Среда>Шрифты и цвета. В списке Отображаемые элементы прокрутите до пункта Типы пользователей — записи и выберите цвет, который вы хотите применить к записям.
Семантическая цветовая раскраска для записей
Семантическая цветовая раскраска для записей
  • В C# 9.0 пустые переменные являются лишними в некоторых случаях сопоставления шаблонов. Мы отбрасываем ненужные пустые переменные и предлагаем исправление кода для их удаления. Поместите курсор на отброшенную пустую переменную. Нажмите CTRL+., чтобы открыть меню Быстрые действия и рефакторинг. Выберите Удалить ненужную пустую переменную.
Удалить ненужную пустую переменную
Удалить ненужную пустую переменную
  • Теперь мы используем рефакторинг, который преобразует буквальную и обычную строки в интерполированную строку с сохранением фигурных скобок, которые были предназначены для выходных данных. Этот рефакторинг не предлагается, если строка назначена константе. Поместите курсор на строку. Нажмите CTRL+., чтобы открыть меню Быстрые действия и рефакторинг. Выберите Преобразовать в интерполированную строку.
Преобразование в интерполированную строку с сохранением фигурных скобок
Преобразование в интерполированную строку с сохранением фигурных скобок
  • Мы внесли исправление кода в Visual Basic, которое удаляет ключевое слово shared при преобразовании методов, общих для модуля.

  • Теперь IntelliSense поддерживает заполнение для символов препроцессора. Начните вводить директиву #if, чтобы увидеть новые возможности завершения для символов, которые в текущий момент определены в области.

Поддержка IntelliSense для символов препроцессора
Поддержка IntelliSense для символов препроцессора
  • Обозреватель решений теперь отображает новые генераторы исходного кода для .NET 5.0 в узле Analyzer (Анализатор), чтоб позволяет легко просматривать созданный код и перемещаться по нему.
Узел Source Generators (Генераторы источника) в Обозревателе решений
Узел Source Generators (Генераторы источника) в Обозревателе решений
  • В окне Go To All (Перейти ко всем) не будут отображаться дублирующиеся результаты, полученные из netcoreapp3.1 и netcoreapp2.0, а также результаты для разделяемых типов, которые существуют только в качестве оболочки для другого вложенного типа. Это поможет устранить беспорядок в результатах, быстрее находить нужный код и переходить к нему. Теперь в результаты включаются имена файлов для частичных символов.
Окно Go To All (Перейти ко всем) не будет отображать дубликаты результатов, полученные от netcoreapp3.1 и netcoreapp2.0
Окно Go To All (Перейти ко всем) не будет отображать дубликаты результатов, полученные от netcoreapp3.1 и netcoreapp2.0
  • Окно Quick Info (Краткая информация) теперь отображает идентификаторы или номера предупреждений компилятора для возможности их подавления. Наведите указатель мыши на идентификаторы или номера предупреждений, чтобы просмотреть краткие сведения по этому идентификатору диагностики.
Окно Quick Info (Краткая информация) отображает идентификаторы или номера предупреждений компилятора для возможности их подавления
Окно Quick Info (Краткая информация) отображает идентификаторы или номера предупреждений компилятора для возможности их подавления

Спасибо

И, наконец, большая благодарность людям, которые в этом месяце трудились над производительностью .NET (Roslyn):

Веб-инструменты .NET

  • Развертывайте приложения Steeltoe для Azure Spring Cloud с помощью публикации Visual Studio (например, щелкните правой кнопкой мыши > Опубликовать в обозревателе решений). Если вы не видите этот параметр, убедитесь, что проект содержит пакет NuGet Microsoft.Azure.SpringCloud.Client версии 1.0.0-preview.1 или более поздней.
Развертывание приложений Steeltoe в Azure Spring Cloud
Развертывание приложений Steeltoe в Azure Spring Cloud

Веб-инструменты

Добавление Конфигурации приложений в качестве подключенной службы автоматически подключает это приложение к ресурсу Конфигурации приложений Azure. Теперь поддерживается автоматическое создание кода для консольных проектов .NET Core, а также автоматическое добавление пакетов NuGet для проектов .NET Framework. Чтобы интегрировать в приложение эту подключенную службу, щелкните Подключенные службы и добавьте Конфигурацию приложений Azure в качестве зависимости службы.

Добавление конфигурации приложения в подключенные службы
Добавление Конфигурации приложений в качестве подключенной службы
  • Вкладка "Подключенные службы" теперь поддерживает Конфигурацию приложений Azure. Конфигурация приложений позволяет централизованно управлять параметрами приложений и флагами функций. При добавлении этой зависимости службы код автоматически обновляется для подключения к ресурсу Конфигурации приложений. В обновление входит установка наиболее актуальных пакетов NuGet и сохранение секретов в локальном хранилище или Key Vault.
Управление конфигурациями с помощью Конфигурация приложений Azure
Управление конфигурациями с помощью подключения к службе "Конфигурация приложений Azure"

Visual Studio Installer

В Visual Studio Installer появилось несколько новых функций в ответ на запросы клиентов.

Многие пользователи теперь используют установщик для обнаружения, запуска нескольких копий Visual Studio и управления ими. Чтобы поддержать этот процесс, Visual Studio Installer больше не требует повышения прав при запуске, а только для внесения изменений в Visual Studio и на компьютер. Другие действия, такие как экспорт конфигураций установки, просмотр новостей и сведений об обновлениях, больше не требуют от пользователя сначала повысить права.

Более ранние версии установщика иногда запрашивают у пользователей дополнительные действия для обновлению установщика. После этого обновления необходимые обновления установщика обрабатываются в ходе операции установки, поэтому лишний шаг отсутствует.

Теперь установщик позволяет выбрать темную тему. Пользователи могут изменить тему установщика, нажав на кнопку с солнцем и луной (☼/☽) в заголовке окна. Обновления, запущенные в интегрированной среде разработки Visual Studio, будут использовать текущий выбор темы Visual Studio.

Установщик VS с темной темой и встроенным обновлением установщика
Установщик VS с темной темой и встроенным обновлением установщика

Звуковые подсказки и обновления специальных возможностей Обозревателя тестов

  • Обозреватель тестов теперь может воспроизводить звуковой сигнал при завершении тестового запуска. Вы можете выбрать два звука: один как свидетельство об успешном прохождении всех тестов, а другой — о том, что как минимум один из них в тестовом запуске не пройден. Эта возможность возникла на основе пользовательского запроса с целью улучшить доступность обозревателя тестов, добавляя звуковую подсказку для тех разработчиков, которые имеют нарушения зрения. Для выбора звука используется стандартное диалоговое окно выбора звука в Windows 10, которое позволяет выбрать один из готовых звуков или любой звуковой файл с компьютера.
  • Предложение GROUP BY в обозревателе тестов стало более доступным благодаря улучшению фраз и порядка слов для воспроизведения в средстве чтения с экрана.
  • Просмотр длинных тестовых данных в области результатов теста в обозревателе тестов теперь стал проще благодаря наличию ссылки, которая напрямую открывает файл журнала вместо перехода к элементу управления документами.

Работа с тестами

  • Добавлена поддержка сбора объема протестированного кода для тестовых проектов .NET Core, использующих Fakes.
  • Сокращено время, необходимое для слияния нескольких отчетов об объеме протестированного кода.

IntelliCode

  • IntelliCode теперь предоставляет повторяющиеся предложения по редактированию непосредственно в списке завершений IntelliSense. Вы можете выполнить предварительный просмотр предлагаемого изменения, применить его в этом расположении или игнорировать такие предложения непосредственно из элемента завершения. Дополнительные сведения о предложениях IntelliCode.

Обновления экспериментального редактора Razor

  • Семантическая раскраска HTML и C#.
  • Переименование символов C#, отраженных в закрытых файлах Razor.
  • Дополнительные лампочки C# в файлах Razor:
    • Добавлен атрибут DebuggerDisplay.
    • Создание и назначение свойства.
    • Создание и назначение поля.
    • Реализуйте интерфейс или абстрактный класс, включая поддержку "с шаблоном", т. е. "Реализация интерфейса с шаблоном Dispose"
    • Создание равных значений, хэш-кода, конструктора.
  • Добавление одной и всех проверок на NULL для параметров.
  • Улучшено форматирование смешанного содержимого в файлах Razor.

Чтобы включить экспериментальный редактор Razor, перейдите в раздел Сервис>Параметры>Среда>Предварительная версия функций, выберите Включить экспериментальный редактор Razor, а затем перезапустите Visual Studio.

От сообщества разработчиков

На сайте сообщества разработчиков Visual Studio доступен полный список элементов, поставляемых в этом выпуске.

Вот лишь некоторые из проблем с наибольшим числом голосов, устраненных в выпуске 16.9.0:


Известные проблемы

Просмотрите все открытые проблемы и доступные решения в Visual Studio 2019, перейдя по ссылке ниже.

Отзывы и предложения

Мы будем рады узнать ваше мнение! Вы можете сообщить о проблемах, щелкнув пункт Сообщить о проблеме в правом верхнем углу установщика или самой IDE-среды Visual Studio. Значок Значок обратной связи находится в правом верхнем углу. Вы можете предлагать для продукта новые функции, задавать вопросы, находить ответы и отслеживать решение своих проблем в сообществе разработчиков Visual Studio. Кроме того, вам доступна бесплатная поддержка в чате по вопросам с установкой.


Блоги

Воспользуйтесь аналитикой и рекомендациями с сайта Developer Tools Blogs. Там вы найдете актуальные сведения обо всех новых выпусках и сможете читать публикации с подробным анализом самых разных функций.


Журнал заметок о выпуске Visual Studio 2019

Дополнительные сведения о предыдущих версиях Visual Studio 2019 см. на странице Журнал заметок о выпуске Visual Studio 2019.


К началу страницы