Заметки о выпуске Visual Studio 2019 версии 16.3
Сообщество разработчиков System Requirementsy | Compatibilitable | Code | Release History | Terms Blogs | New in Visual Studio Docs | (Новые возможности в документации Visual Studio) |
Примечание.
Этот выпуск — не последняя версия Visual Studio. Чтобы скачать последний выпуск, посетите сайт Visual Studio .
Новые возможности Visual Studio 2019 версии 16.3
Поддержка диапазона времени
Эта версия теперь не поддерживается. Дополнительные сведения о поддержке Visual Studio см. в политике поддержки Visual Studio 2019.
Ознакомьтесь с последней версией заметок о выпуске или посетите сайт Visual Studio , чтобы скачать последнюю поддерживаемую версию Visual Studio 2019.
Выпуски Visual Studio 2019 версии 16.3
- 20 ноября 2019 г. — Visual Studio 2019 версии 16.3.10
- 12 ноября 2019 г. — Visual Studio 2019 версии 16.3.9
- 5 ноября 2019 г. — Visual Studio 2019 версии 16.3.8
- 29 октября 2019 г. — Visual Studio 2019 версии 16.3.7
- 22 октября 2019 г. — Visual Studio 2019 версии 16.3.6
- 15 октября 2019 г. — Visual Studio 2019 версии 16.3.5
- 10 октября 2019 г. — Visual Studio 2019 версии 16.3.4
- 8 октября 2019 г. — Visual Studio 2019 версии 16.3.3
- 1 октября 2019 г. — Visual Studio 2019 версии 16.3.2
- 25 сентября 2019 г. — Visual Studio 2019 версии 16.3.1
- 23 сентября 2019 г. — Visual Studio 2019 версии 16.3.0
Архивные примечания к выпуску
- Заметки о выпуске Visual Studio 2019 версии 16.2
- Заметки о выпуске Visual Studio 2019 версии 16.1
- Заметки о выпуске Visual Studio 2019 версии 16.0
Блог Visual Studio 2019
Блог Visual Studio 2019 является официальным источником сведений о продукте от группы разработчиков Visual Studio. Более подробные сведения о выпусках Visual Studio 2019 версии 15.9 можно найти в следующих записях:
- Поддержка .NET Core и другие возможности в Visual Studio 2019 версии 16.3 — выполните обновление сейчас!
- Выпущены Visual Studio 2019 версии 16.3, предварительная версия 2, и Visual Studio 2019 для Mac версии 8.3, предварительная версия 2!
- Visual Studio 2019 версии 16.2 и 16.3, предварительная версия 1, теперь доступна
- Visual Studio 2019 версии 16.2, предварительная версия 2
- Visual Studio 2019 версии 16.1 и 16.2, предварительная версия
- Visual Studio 2019. Пишите код быстрее. Автоматизируйте работу. Создавайте будущее.
Visual Studio 2019 версии 16.3.10
Выпущено 20 ноября 2019 г.
Основные проблемы, исправленные в Visual Studio 2019 версии 16.3.10
- Xamarin fastlane: "При синхронизации сведений о разработчике произошла ошибка: "Достигнуто ограничение запросов к iTunes Connect".
- Проект пакета MSIX с приложениями WPF. Создавать пакеты приложений больше не удается.
Visual Studio 2019 версии 16.3.9
Выпущено 12 ноября 2019 г.
Основные проблемы, исправленные в Visual Studio 2019 версии 16.3.9
- "Изменить и продолжить" вызывает аварийное завершение работы IDE.
- Link.exe завершает работу с кодом 1073741819 при создании файлов сопоставления.
- Необходимый компонент vcredist 14 (x64) для установщика ClickOnce недопустим после скачивания.
- В каждой точке останова при применении изменений с помощью "Изменить и продолжить" Visual Studio аварийно завершает работу и отображает рабочий стол.
- Исправлено аварийное завершение работы при правке кода во время отладки приложений ASP.NET.
Visual Studio 2019 версии 16.3.8
Выпущено 5 ноября 2019 г.
Основные проблемы, исправленные в Visual Studio 2019 версии 16.3.8
- Добавлена поддержка Xcode 11.2
- TypeConverter не может выполнить преобразование из System.String после обновления до Visual Studio 2019.
- Исправлена проблема, из-за которой при загрузке существующих расширений (.design dll) в UWP происходит сбой Visual Studio.
Visual Studio 2019 версии 16.3.7
Дата выпуска: 29 октября 2019 г.
Основные проблемы, исправленные в Visual Studio 2019 версии 16.3.7
- Проект C++ в Linux. Синхронизация удаленных заголовков не работает в Visual Studio 16.3
- Visual Studio 16.3 открывает некоторые файлы с помощью Блокнота
- Исправлена проблема, из-за которой окно отображения выходных данных слишком быстро закрывается.
- Исправлена проблема, из-за которой Visual Studio 2019 перестает отвечать на запросы в нескольких сценариях, включая открытие и закрытие решения, а также изменение его конфигурации.
Visual Studio 2019 версии 16.3.6
Дата выпуска: 22 октября 2019 г.
Основные проблемы, исправленные в Visual Studio 2019 версии 16.3.6
- Автоматическое преобразование файла RC ANSI в формат UTF8! (нежелательно!)
- Исправлено неверное сообщение об ошибке при попытке разработчиков опубликовать приложения .NET Core 3.0 в Azure.
- Повышение стабильности выполнения команды MSBuild/dotnet restore при использовании подключаемых модулей для восстановления из веб-каналов, прошедших проверку подлинности.
Visual Studio 2019 версии 16.3.5
Выпущено 15 октября 2019 г.
Основные проблемы, исправленные в Visual Studio 2019 версии 16.3.5
- Обновление поврежденной установки VS 2019
- Исправлена дополнительная проблема, вызывающая сбой установки для корпоративных пользователей, создающих автономные кэши, и автономных пользователей.
Visual Studio 2019 версии 16.3.4
Выпущено 10 октября 2019 г.
Основные проблемы, исправленные в Visual Studio 2019 версии 16.3.4
- Обновление конструктора Xamarin.iOS для поддержки Xcode 11.1
- Публикация не работает в Visual Studio 16.3.1
Visual Studio 2019 версии 16.3.3
Выпущено 8 октября 2019 г.
Основные проблемы, исправленные в Visual Studio 2019 версии 16.3.3
- Исключение InvalidOperationException. Запись не допускается после завершения работы модуля записи
- ICE на допустимом коде после обновления до версии 16.2.0
- Не выполняется переход в контекстном меню средства загрузки ЦП
- Неправильная сборка при преобразовании результата оператора преобразования в ссылку на базовый класс.
- DockerUpdateComposeVsGeneratedFiles выдает исключение "Значение не может быть равно null" ("Путь к параметру: path1") после обновления до Visual Studio 16.3
- Не выполняется переход в контекстном меню средства загрузки ЦП.
- Не работает публикация в Visual Studio 16.3.1.
- Устранена проблема со Snapshot Debugger, при которой клиенты использовали учетные записи MSA.
- Устранена проблема, при которой клиенты, устанавливающие пакет NuGet Microsoft.Visualstudio.Shell.15.0, получали предупреждающее сообщение о том, что платформа не найдена.
- Устранена ошибка компилятора MSVC, включающая неявное преобразование лямбда-выражения в указатель на функцию.
- Устранена проблема с аварийным завершением работы Visual Studio из-за исключения, вызванного пустой ссылкой.
- Устранена внутренняя ошибка компилятора, при которой в коде есть внешнее определение статического элемента данных вложенного класса внутри частичной специализации.
Visual Studio 2019 версии 16.3.2
Выпущено 1 октября 2019 г.
Основные проблемы, исправленные в Visual Studio 2019 версии 16.3.2
- Исправлена ошибка поддержки Xcode 11.
Visual Studio 2019 версии 16.3.1
Выпущено 25 сентября 2019 г.
Основные проблемы, исправленные в Visual Studio 2019 версии 16.3.1
- 16.3 — Конструктор XAML не отображается для приложений .NET Core 3.0.
- Исправлена проблема, из-за которой Visual Studio перестает отвечать на запросы.
Visual Studio 2019 версии 16.3.0
Выпущено 23 сентября 2019 г.
Сводка новых возможностей Visual Studio 2019 версии 16.3
- Поддержка добавления новых ссылок на службу Open API & GRPC для проектов .NET Core 3.0.
- Поддержка F# 4.7 и различные усовершенствования в инструментах F#
- Улучшения для разработчиков C++, включая переключаемые комментарии строк и улучшенную фильтрацию списка элементов IntelliSense.
- Поиск по последним проектам, решениям и папкам в начальном окне.
- Поиск шаблонов в диалоговом окне создания проекта с расширенными возможностями поиска.
- Публикация рабочих проектов .NET Core 3.0 в реестре контейнеров Azure, DockerHub и т. д.
- Дополнения к повышению производительности .NET в этом выпуске включают возможность переименовать содержащий файл при переименовании класса, а также улучшения функции "Изменить и продолжить" в отладчике.
- Отладка функций Azure, выполняемых в контейнерах Linux.
- Поиск отдельных компонентов во время установки или изменения в Visual Studio Installer.
- Усовершенствование интерфейса обновления Visual Studio, который включает обновления для Visual Studio IDE и Installer.
- Разделение рабочих нагрузок и компонентов при их добавлении в Visual Studio IDE.
- Поиск кода с помощью функции поиска VS (CTRL+Q)
- Позволяет с легкостью находить новые установленные шаблоны проектов, просматривать выбранные значения в фильтрах и закреплять недавно использованные шаблоны в диалоговом окне создания проекта.
- Легкая настройка зависимостей приложений в профилях публикации с помощью нового мастера "Добавление зависимости".
- В компоненты Visual Studio Installer для .NET Core 2.1 и 2.2 теперь включены шаблоны (в дополнение к среде выполнения).
- Поддержка средства для обслуживания статических ресурсов из библиотеки классов Razor.
- Обновлен интерфейс тестирования Python на основе новой платформы тестирования Python pytest, а также изменен интерфейс unittest.
- Сокращено время, необходимое для индексации крупных папок и поиска файлов в них.
- Добавлена поддержка для Xcode 11 и iOS 13.
- Добавлена поддержка для Android 10.
- Используйте горячую перезагрузку XAML для Xamarin.Forms, чтобы быстро выполнять перебор элементов пользовательского интерфейса Xamarin.Forms.
- Материальное исполнение Android в средстве предварительного просмотра XAML для Xamarin.Forms.
- Новый редактор ограничений в Xamarin Designer для iOS.
- Реализована публикация приложений iOS в Windows.
- Новые способы редактирования файлов PLIST.
- Оптимизировано представление задач при отладке в окне параллельных стеков.
- Различные улучшения, связанные с производительностью C++, в том числе новые правила C++ Core Check, новая схема семантической раскраски по умолчанию, а также включенная по умолчанию технология IntelliCode.
- Поддержка параллельных сборок в проектах Linux C++ на основе MSBuild, использующих собственный интерфейс WSL.
- Улучшения, связанные с производительностью .NET, в этом выпуске: возможность свертывания цепочек вызовов Fluent, введение локальной переменной сразу же после написания ее инициализатора, поддержка средств .NET Core для анализаторов, а также возможность расширения списков завершения для неимпортируемых типов.
- Более гибкие возможности классификации синтаксиса JavaScript/TypeScript и рефакторинга в файлах.
- Обновлена базовая модель IntelliCode C++: теперь она включена по умолчанию, и для C# включены повторяющиеся изменения.
- Поддержка TypeScript 3.6 и более гибких возможностей рефакторинга JavaScript и TypeScript.
- Профилировщик производительности (ALT-F2) теперь предоставляет средство для работы с базами данных в проектах .Net Core.
- Добавлен запрос на установку Docker Desktop при добавлении поддержки Docker.
- Добавлена возможность загрузки символов вручную для Azure Watson и удаленной отладки .NET Core.
- Восстановлена возможность создания сертификатов и улучшена процедура подписывания пакетов UWP.
Основные проблемы, исправленные в Visual Studio 2019 версии 16.3.0
- Команда "Создать тестовый сертификат" отсутствует в пакете SDK для UWP в Visual Studio 2019
- Visual Studio 2019 — прекращена работа конструктора запросов
- Свойства проекта — анализ кода — неверный текст
- Visual Studio 2019 перестает отвечать на запросы и аварийно завершает работу при создании проекта
- Редактор и функции повышения производительности локализованы не полностью в Visual Studio 2019 версии 16.3, предварительная версия 3
- Проблема с последовательностью перехода по командам (в режиме конструктора)
- Ошибка. Не удалось преобразовать некоторые или все ссылки на удостоверения.
- Visual Studio 16.2 зависает при открытии любого диалогового окна для редактирования
- ошибка MSB6006: "CL.exe" завершился с кодом 2.
- Пустое окно результатов метрики кода
- При запуске сеанса отладки Visual Studio 2019 аварийно завершает работу, если параметр «Включить функцию "Изменить и продолжить"» отключен.
- Visual Studio 2019 (16.0.2) генерирует неправильный код при использовании inline+/O2 в Qt 5.12.3 QBezier
- Ошибка при входе в средство обратной связи VS
- Рефакторинг переименования не работает в файлах, включенных в общие проекты — операция переименования была отменена или недопустима
- Функция завершения фигурных скобок для заполненного списка членов не помещает символ в нужную позицию
- Проблема с последовательностью перехода по командам (в режиме конструктора)
- ошибка MSB6006: "CL.exe" завершился с кодом 2.
- Ошибка при входе в средство обратной связи VS
- Пустое окно результатов метрики кода
- Рефакторинг переименования не работает в файлах, включенных в общие проекты — операция переименования была отменена или недопустима
- Ошибка в C++/CLI с заголовком встроенных пространств имен
- Ошибка. Не удалось преобразовать некоторые или все ссылки на удостоверения.
- rvalue-reference-to-array можно привязать к lvalue-reference-to-array
- Функция завершения фигурных скобок для заполненного списка членов не помещает символ в нужную позицию
- Защищенные секреты в Azure Key Vault не входят в список подключенных служб
- Поиск файлов в VS выполняется значительно медленнее по сравнению с поиском файлов VA
- Сбой Visual Studio, если TFS не найден.
- Ошибка Visual Studio при отображении файла RAZOR.
- Увеличение времени ожидания AndroidClientHandler.
- Команда "Создать тестовый сертификат" отсутствует в пакете SDK для UWP в Visual Studio 2019.
Сведения о новых возможностях Visual Studio 2019 версии 16.3.0
.NET Framework 4.8
Для поддержки целевой платформы .NET Framework 4.8 были добавлены средства разработки .NET Framework 4.8. Платформа .NET Framework версии 4.8 включает несколько новых функций и улучшений, а также многочисленные улучшения надежности, стабильности, безопасности и производительности. Дополнительные сведения о .NET Framework 4.8 см. в анонсе блога по .NET Framework 4.8
Производительность .NET
- Теперь разработчики могут переименовывать файл при переименовании интерфейса, перечисления или класса. Поместите курсор в имя класса и введите (CTRL + R, R), чтобы открыть диалоговое окно переименования и установить флажок "Переименовать файл".
- Теперь функция "Изменить и продолжить" поддерживает проекты с несколькими целевыми платформами, включая модули, загружаемые несколько раз в одном процессе в разных доменах или контекстах загрузки. Кроме того, разработчики могут изменять исходные файлы, даже если содержащий их проект не загружен или приложение работает.
- Теперь вы можете свертывать цепочку вызовов Fluent с использованием рефакторинга. Наведите указатель мыши в цепочку вызовов и нажмите клавиши (CTRL+.), чтобы открыть меню Быстрые действия и рефакторинг. Выберите Свернуть цепочку вызовов или Свернуть и выровнять цепочку вызовов.
- Теперь пользователь может вводить локальную переменную непосредственно после написания ее инициализатора. Сначала напишите выражение. Затем наведите указатель мыши на имя выражения и нажмите клавиши (CTRL+.), чтобы открыть меню Быстрые действия и рефакторинг. Выберите параметр, чтобы ввести локальную переменную.
- Теперь предусмотрена поддержка средств .NET Core для анализаторов. Пользователь может добавить рекомендованный пакет анализатора, щелкнув имя проекта в обозревателе решений и выбрав пункт Свойства. Выберите Анализ кода, чтобы установить пакет анализатора и настроить момент выполнения анализа кода.
- Ранее мы добавили возможность завершения IntelliSense для неимпортируемых типов. Данная возможность позволяет пользователю отключить технологию IntelliSense для завершения неимпортируемых типов. Если завершение для неимпортируемых типов отключено, пользователю будет проще вернуться в список завершения при добавлении нового фильтра импортируемого типа в переключатели IntelliSense.
- Теперь поддерживается стиль краткого описания для комментариев XML. Наведите указатель мыши на имя метода. В поле кратких сведений будут показаны поддерживаемые стили из комментариев XML к коду.
Инструментарий WPF/UWP
Клиенты, создающие приложения WPF/UWP, заметят следующие усовершенствования в инструментарии XAML Visual Studio.
Конструктор:
- Конструктор WPF теперь полностью доступен (GA) для проектов WPF .NET Core: конструктор XAML для приложений WPF .NET Core теперь общедоступен для всех клиентов без необходимости предварительного просмотра флаг функции. Конструктор XAML для приложений .NET Core WPF немного отличается от конструктора .NET Framework WPF некоторыми видами поведения и функциональных возможностей. Обратите внимание, что это было задумано изначально. Учитывая разницу, мы хотели бы попросить клиентов сообщать о любых возникающих проблемах или ограничениях с помощью функции обратной связи Visual Studio.
Средства отладки XAML.
- Поддержка xaml Горячая перезагрузка добавлена для изменений словарей ресурсов WPF: XAML Горячая перезагрузка теперь поддерживает обновление словарей ресурсов WPF для обновлений в режиме реального времени в приложении. Ранее эта функция была доступна только для универсальной платформы Windows (UWP), но теперь поддерживается для приложений UWP, .NET Framework WPF и .NET Core WPF. Поддерживаемые действия включают в себя добавление определения нового раздела ресурсов, добавление, удаление и изменение новых или существующих разделов ресурсов.
- Теперь панель инструментов в приложении перемещается: панель инструментов в приложении улучшена, чтобы она перемещалась в работающем приложении WPF/UWP, что позволяет разработчикам перетаскивать его влево или вправо в приложении, чтобы разблокировать пользовательский интерфейс приложения. Обратите внимание, что расположение, куда перемещается панель инструментов, не сохраняется между сеансами и при перезапуске приложения она возвращается в положение по умолчанию.
Подписывание пакетов UWP.
- Возвращена возможность создания и импорта файлов сертификатов для подписи (PFX) с помощью конструктора манифеста.
- Появилась возможность создания и импорта сертификатов для подписи с помощью мастера упаковки, которая упрощает процесс подписывания.
Средства .NET
- Поддержка добавления новых ссылок на службу Open API & GRPC для проектов .NET Core 3.0.
- Публикация рабочих проектов .NET Core 3.0 в реестре контейнеров Azure, DockerHub и т. д.
- Шаблоны .NET Core 3.0 для Worker, gRPC, библиотеки классов Razor и Blazor отображаются в диалоговом окне создания проекта.
- Любые обновления, внесенные в шаблоны .NET Core 3.0 с помощью интерфейса командной строки .NET, также отображаются в Visual Studio.
C++
- Теперь разработчики C++ могут переключать комментарии строк с помощью сочетания клавиш CTRL + K, CTRL + /.
- Списки элементов IntelliSense теперь отфильтрованы на основе квалификаторов типа, например
const std::vector
теперь отфильтровывает методы, такие какpush_back
. - Добавлены следующие функции предварительной версии стандартной библиотеки C++20 (с
/std:c++latest
): - Новые правила проверки рекомендаций C++ Core, в том числе новый набор правил перечисления, а также дополнительные правила для констант, перечислений и типов.
- Новая схема семантической раскраски по умолчанию, благодаря которой повышается удобство чтения кода. Также предусмотрена возможность настроить скрытие аргументов шаблона в окне стека вызовов и по умолчанию включена технология C++ IntelliCode.
- Для настройки целевых объектов отладки и пользовательских задач с переменными среды можно использовать файлы CMakeSettings.json или CppProperties.json, а также новый тег "env" для отдельных целевых объектов и задач в файлах launch.vs.json и tasks.vs.json.
- Теперь с помощью быстрого действия для отсутствующих пакетов vcpkg пользователи могут автоматически открывать консоль и устанавливать заданную по умолчанию версию пакета vcpkg.
- Оптимизирована функция копирования удаленного заголовка для проектов Linux (CMake и MSBuild), которая теперь может выполняться параллельно.
- Собственная поддержка WSL в Visual Studio теперь также включает поддержку параллельных сборок для проектов Linux на основе MSBuild.
- Теперь пользователь может указать список локальных результатов сборки, которые будут развертываться в удаленной системе с проектами Makefile в Linux.
- Описание параметров в редакторе параметров CMake теперь содержит больше контекстной информации и дополнительные ссылки на полезную документацию.
Инструменты контейнера
- Разработчики функций Azure (версия 2) теперь могут добавлять в проекты C# поддержку контейнеров Docker (только для Linux). Для этого достаточно щелкнуть правой кнопкой мыши имя проекта в обозревателе решений и выбрать "Добавить" --> "Поддержка Docker". В проект будет добавлен Dockerfile, а кроме этого будет задан целевой объект отладки "Docker". Таким образом, отладка кода функций будет осуществляться внутри работающего контейнера. Пользователи смогут переходить в точки останова, проверять переменные и использовать другие эффективные возможности отладки, предоставляемые в Visual Studio.
Профилирование баз данных в проектах .Net Core
В этом выпуске в состав набора средств для повышения производительности и диагностики, предоставляемых профилировщиком производительности (ALT+F2), включено новое средство. Это средство для работы с базами данных предоставляет сведения о запросах из проектов .NET Core, в которых используется ADO.Net или Entity Framework. Средство предоставляет команду перехода к источнику для связывания с исходным кодом, а также подробные сведения о времени выполнения каждого запроса в течение сеанса профилирования. Это средство может работать одновременно с другими средствами профилировщика производительности. При использовании в сочетании со средством загрузки ЦП вы получаете подробные сведения о характеристиках производительности кода .Net Core, который использует базу данных.
Отладчик
- Оптимизирована визуализация задач и их зависимостей в процессе в окне параллельных стеков, что позволяет упростить диагностику проблем в асинхронном коде.
F# и средства для F#
В этом выпуске реализована поддержка F# 4.7, последней версии языка F#.
Основное внимание в F# 4.7 было уделено изменениям базовой инфраструктуры, позволяющим более эффективно предоставлять функциональные возможности этой предварительной версии языка F#. Однако, помимо этого, есть и ряд новых полезных функций.
Язык и основная библиотека F#
Мы добавили поддержку F# 4.7, вспомогательной версии языка, и предоставили инфраструктуру компилятора, чтобы дать возможность ознакомиться с возможностями новой версии и получить о них отзывы на ранних этапах разработки.
Полный набор возможностей F# 4.7:
- Поддержка флага
LangVersion
, который позволяет настроить в качестве версии языка F#, используемой компилятором, версию F# 4.6 или более позднюю. - Поддержка неявных операций yield в массивах, списках и выражениях последовательности.
- Менее строгие требования к отступам для статических членов и конструкторов
- Упразднение требования использовать двойной символ подчеркивания (
__
) в объявлениях членов и циклахfor
согласно предложению Густаво Леона (Gustavo Leon) - Целевой платформой для FSharp.Core теперь является
netstandard2.0
, а неnetstandard1.6
, вследствие прекращения поддержки .NET Core 1.x. - FSharp.Core в .NET Core теперь поддерживает
FSharpFunc.FromConverter
,FSharpFunc.ToConverter
иFuncConvert.ToFSharpFunc
- FSharp.Core теперь поддерживает
Async.Sequential
и необязательный параметрmaxDegreeOfParallelism
дляAsync.Parallel
согласно предложению Фрейзера Уотерса (Fraser Waters)
Помимо набора возможностей F# 4.7, в этом выпуске реализована поддержка следующих функций предварительной версии языка F#:
nameof
Поддержка выражений- Поддержка открытия статических классов
Из можно включить, задав параметр <LangVersion>preview</LangVersion>
в файле проекта.
Этот выпуск также включает в себя следующие исправления ошибок и улучшения компилятора F#:
- Устранена старая проблема, из-за которой компилятор F# мог вызывать переполнение стека при работе с большими записями, структурами или другими типами (#7070)
- Устранена проблема, из-за которой работа Visual Studio могла завершаться аварийно при указании недопустимого встроенного кода IL (#7164)
- Устранена проблема, из-за которой копирование структуры не выполнялось, если она была определена на C# и изменена в вызове члена (#7406)
- Хэш шифрования для содержимого переносимого PDB-файла, созданного компилятором, не включается в каталог отладки PE, если по умолчанию выбран настраиваемый хэш SHA-256 (#4259, #1223)
- Ошибка, которая заключалась в том, что модуль
LeafExpressionConverter
игнорировалValueType
и принималSystem.Tuple
(#6515), устранена Кевином Маленфантом (Kevin Malenfant) - Ошибка, которая заключалась в том, что метод
List.transpose
отклонял данные вместо вызова исключения (#6908), устранена Патриком Макдональдом (Patrick McDonald) - Ошибка, которая заключалась в том, что функция
List.map3
выдавала неправильную ошибку при применении к спискам разной длины (#6897), устранена пользователем reacheight
Инструменты F#
Кроме того, в этом выпуске представлено несколько улучшений в инструментах F# для Visual Studio:
- Записи форматируются так, чтобы больше походить на канонические объявления и значения в подсказках и F# Interactive (#7163)
- Для свойств в подсказках теперь указывается, поддерживают ли они только метод
get
, только методset
или иget
, иset
(#7007) - Проблема, из-за которой функция "Перейти к определению" и другие функции не всегда работали в проектах, когда в файлах использовалась косая черта (#4446, #5521, #4016), была устранена при участии пользователя chadunit
- Устранены проблемы с анонимными записями и отладкой (#6728, #6512)
- Исправлена ошибка, которая заключалась в том, что из-за пустых директив хэширования в исходном коде раскрашивание текста могло казаться случайным (#6400, #7000)
IDE
- Поле поиска в начальном окне позволяет быстро найти недавно использовавшиеся проекты, решения и папки. Кроме того, эти контейнеры кода MRU интегрируются с глобальным поиском в Visual Studio, чтобы разработчики могли их найти в поле поиска Visual Studio.
- Оптимизирован интерфейс диалогового окна Installer в Visual Studio IDE, благодаря чему стало проще идентифицировать отдельные рабочие нагрузки, добавляемые в Visual Studio.
- Функция поиска VS поддерживает возможность поиска по типам и членам C# и VB, а также поиск по файлам для всех других языков. Результаты отображаются по мере ввода поискового запроса пользователем, а также в отдельной группе "Код", которую можно открыть с помощью сочетания клавиш или щелчка кнопкой мыши.
- Новые устанавливаемые шаблоны проектов получают метку "Новый" для более удобной идентификации. Выбранные значения фильтров отображаются в диалоговом окне создания проекта. Кроме того, разработчики могут закреплять, откреплять шаблоны и удалять их из списка.
- Используйте поиск шаблонов в диалоговом окне создания проекта с помощью более надежного поиска нечетких совпадений, который адаптируется к опечаткам и множественному числу, чтобы выделять совпадающие ключевые слова и располагать результаты на основе релевантности критериев поиска и фильтра.
Установщик
- Теперь в Visual Studio обновления Visual Studio IDE и Installer устанавливаются одновременно одним нажатием кнопки, что позволяет повысить производительность.
- Компоненты Visual Studio Installer для .NET Core 2.1 и 2.2 использовались только для среды выполнения. Начиная с этой предварительной версии и в дальнейшем, компоненты будут содержать шаблоны в дополнение к среде выполнения.
- С помощью поля поиска на вкладке "Отдельные компоненты" Visual Studio Installer можно быстро найти все доступные для установки компоненты.
IntelliCode
- Базовая модель C++ включена по умолчанию.
- Чтобы изменить этот параметр, последовательно выберите Сервис>Параметры>IntelliCode.
- Мы включили функцию повторяющихся изменений для C#, которая анализирует локальные изменения на наличие повторений и определяет другие места в файле, где могут потребоваться такие же изменения.
- Предлагаемые повторные изменения приводятся в списке ошибок и в виде предупреждений в файле кода.
JavaScript/TypeScript
- Классификация JavaScript и TypeScript (чаще называется "цветовой раскраской синтаксических конструкций") намного быстрее применяется к большим файлам. Также быстрее отображается список исправлений и действий по рефакторингу (лампочка) кода JavaScript и TypeScript.
- В редакторе теперь поддерживается TypeScript 3.6.
- При изменении файла tsconfig.json в Visual Studio проект теперь обновляется быстрее.
Тесты Python
- Теперь разработчики на Python могут выполнять тесты с использованием популярной платформы тестирования Python pytest как в проектах Python, так и в сценариях рабочей области "Открыть папку".
- Чтобы включить платформы pytest и unittest для проектов Python, щелкните правой кнопкой мыши имя решения проекта и выберите пункт Свойства. Перейдите на вкладку Тестирование для настройки параметров тестирования. Обратите внимание, что для unittest необходимо указать каталог для размещения тестов (по умолчанию используется корневой каталог), а также шаблон, которому будут соответствовать имена тестов. Обнаружение тестов инициативируется, как только изменения сохраняются на вкладке "Тест ".
- Интерфейс тестирования unittest был переработан. Теперь пользователю необходимо вручную настраивать тесты для проектов Python и рабочих областей "Открыть папку", поскольку эти тесты более не обнаруживаются автоматически:
- Чтобы включить тесты для папок Python, щелкните значок , чтобы показать все файлы в обозревателе решений. Затем щелкните файл PythonSettings.json, расположенный в папке "Local Settings" (если такой файл отсутствует, создайте его). В этом файле можно указать файл TestFramework, который вы хотите использовать, а также шаблоны имени тестового файла и каталог, содержащий тесты (оба варианта применяются к unittest):
- В новой версии для отладочного тестирования используется PTVSD 4. Если вы по-прежнему предпочитаете устаревший отладчик или столкнулись с проблемами при работе с новым отладчиком, выберите >Сервис > Параметры > Python Отладка > Использовать устаревший отладчик и установите соответствующий флажок.
- Кроме того, мы реализовали быстрый способ продолжить работу с кодом в Visual Studio 2019 для пользователей, у которых есть существующие проекты или рабочие области "Открыть папку", содержащие тестовые файлы. Когда пользователи открывают проект, содержащий тестовые файлы конфигурации (например, файл .ini для pytest), но они не установили или включили pytest, им будет предложено установить необходимые пакеты и настроить их для среды Python, которую они работают:
- Аналогичным образом, для файлов тестов unittest в проекте или рабочей области "Открыть папку" будет появляться запрос на установку и/или включение соответствующей платформы тестирования. В обоих случаях разработчик может игнорировать сообщение и выполнить настройку платформы вручную.
Профилировщик производительности Visual Studio
- Инструмент "Загрузка ЦП" в профилировщике производительности автоматически отображает индикатор "Горячий путь" с красным значком пламени при отображении дерева вызовов. Поэтому теперь не придется нажимать на общий анализ производительности загрузки ЦП. Средства загрузки ЦП доступны с помощью сочетания клавиш ALT + F2 или из меню "Отладка".
- Профилировщик производительности теперь участвует в переходах вперед и назад в интегрированной среде разработки Visual Studio. Когда разработчики переходят к различным представлениям инструментов в профилировщике производительности, точки навигации сохраняются вместе с другими элементами навигации. Их можно применять, нажимая кнопки навигации или используя команды навигации в Visual Studio.
Веб-инструменты
- Позволяют легко настраивать зависимости приложений в профилях публикации с помощью нового мастера "Добавление зависимости". На данный момент поддерживается добавление зависимостей для службы Azure SignalR, Azure SQL Server и Azure Storage, благодаря чему пользователи могут подготавливать новые или выбирать существующие экземпляры, не покидая интегрированную среду разработки.
- В связи с большим количеством обращений команда разработчиков среды выполнения ASP.NET реализовала поддержку обслуживания статического содержимого из библиотеки классов Razor. В этой предварительной версии Visual Studio была добавлена поддержка средств для реализации такого сценария.
Xamarin
Этот выпуск включает в себя следующие обновления в пакете SDK Xamarin:
- Xamarin.iOS 13
- Xcode 11 теперь поддерживает сборку и отладку приложений для iOS 13, tvOS 13 и watchOS 6. Дополнительные сведения о новых возможностях см. в разделе Введение в iOS 13.
- Xamarin.Android 10
- Теперь приложения Android могут нацелиться на Android 10, задав параметр "Компиляция с помощью версии Android" (Target Framework) на Android 10.0 (Q) на вкладке "Приложение" страницы свойств проекта. В Android 10 появились такие возможности, как темная тема, навигация жестами и оптимизация для складных устройств. Дополнительные сведения об этих новых возможностях см. на странице Android 10 с Xamarin.
В этом выпуске также имеется ряд новых возможностей и усовершенствований инструментов:
- В этом выпуске добавлена общедоступная предварительная версия горячей перезагрузки XAML для Xamarin.Forms. С помощью горячей перезагрузки XAML вы можете быстро выполнять итерации по пользовательскому интерфейсу, осуществляя отладку приложений в эмуляторе, симуляторе или на физическом устройстве. Просто внесите изменения в XAML и сохраните файл, чтобы изменения мгновенно отразились в работающем приложении. Чтобы включить горячую перезагрузку XAML, выберите Сервис > Параметры > Xamarin > Горячая перезагрузка.
- Средство предварительного просмотра XAML для Xamarin.Forms теперь отображает материальное исполнение для iOS и Android при использовании Xamarin.Forms Visual.
- В Xamarin Designer для iOS есть новый способ работы с ограничениями. Теперь когда вы выбираете представление с ограничениями, на панели инструментов рядом с селектором режима закрепления ограничений появляется значок многоточия. Нажмите кнопку с многоточием, чтобы отобразить контекстное меню для изменения ограничений в выбранном представлении.
- Теперь можно архивировать и публиковать приложения iOS из Visual Studio в Windows. Установив соединение с компьютером Mac, создайте архив, выбрав конфигурацию Выпуск|iPhone, щелкнув проект iOS правой кнопкой мыши в обозревателе решений и выбрав в меню пункт Архивация.... В диспетчере архивов можно сохранить IPA-файл на диске для динамического распространения или отправить его в App Store Connect, чтобы опубликовать приложение в App Store.
- В контекстном меню файла PLIST в обозревателе решений доступны новые команды, позволяющие быстро открыть файл в универсальном конструкторе PLIST или в редакторе XML.
Известные проблемы
Просмотрите все проблемы и доступные решения в Visual Studio 2019 версии 16.3, перейдя по ссылке ниже.
Отзывы и предложения
Мы будем рады узнать ваше мнение! Вы можете сообщить о проблемах, щелкнув пункт Сообщить о проблеме в правом верхнем углу установщика или самой IDE-среды Visual Studio. Значок находится в правом верхнем углу. Вы можете предлагать для продукта новые функции, задавать вопросы, находить ответы и отслеживать решение своих проблем в сообществе разработчиков Visual Studio. Кроме того, вам доступна бесплатная поддержка в чате по вопросам с установкой.
Блоги
Воспользуйтесь аналитикой и рекомендациями с сайта Developer Tools Blogs. Там вы найдете актуальные сведения обо всех новых выпусках и сможете читать публикации с подробным анализом самых разных функций.
Журнал заметок о выпуске Visual Studio 2019
Дополнительные сведения о предыдущих версиях Visual Studio 2019 см. на странице Журнал заметок о выпуске Visual Studio 2019.