Заметки о выпуске NuGet 6.10
Средства распространения NuGet:
Версия NuGet | Доступно в версии Visual Studio | Доступно в пакетах SDK для .NET |
---|---|---|
6.10.2 | Visual Studio 2022 версии 17.10 | 8.0.3xx1 |
1 Установлен с Visual Studio 2022 с любой рабочей нагрузкой .NET
Сводка. Новые возможности 6.10.2
Исправления в этом выпуске
- Повторное включение централизованного управления пакетами неявно при наличии Directory.Packages.props — #11834
Список фиксаций в этом выпуске
1 Установлен с Visual Studio 2022 с любой рабочей нагрузкой .NET
Сводка. Новые возможности 6.10.1
Исправления в этом выпуске
Восстановление и обновление Visual Studio и PMC завершается ошибкой, если несколько проектов packages.config в решении имеют одинаковое имя (элемент с одним ключом уже добавлен) — #13465
##[error]Команда nuget завершилась сбоем с кодом выхода(1) и ошибкой(Элемент с тем же ключом уже добавлен. - #13456
Список фиксаций в этом выпуске
Сводка. Новые возможности версии 6.10
[Функция]: добавление команды конфигурации dotnet nuget — #12469
Предупреждение об обнаружении уязвимостей во время восстановления packages.config — #12307
Отображение панели сведений об уязвимостях при наличии уязвимостей в проектах на основе packages.config. - #13271
[Ошибка]: поставщик учетных данных VS неправильно задает значение
isRetry
- #11210Пакет dotnet list --уязвимый требует постоянного входа в 3-й сторонний веб-канал nuget - #12456
Известные проблемы 6.10.0
NuGet.exe 6.10.0 и Visual Studio 17.10.0 могут иметь сбои во время операций NuGet для проектов с помощью packages.config в следующих сценариях:
- Два или более проектов в решении имеют одинаковое имя
- Два или более проектов в решении используют один и тот же файл packages.config (файлы проекта существуют в одном каталоге).
Эти проблемы были исправлены в NuGet.exe 6.10.1 и Visual Studio 17.10.2.
Проблемы и обсуждения для общедоступного отслеживания можно найти в следующих местах:
- Не удается восстановить nuget после обновления сообщества Visual Studio до версии 17.10.0. элемент с тем же ключом уже был добавлен.
- Visual Studio и PMC restore/update завершается сбоем, если несколько проектов packages.config в решении имеют одинаковое имя (элемент с одним ключом уже добавлен)
- ##[error]Команда nuget завершилась сбоем с кодом выхода(1) и ошибкой(Элемент с тем же ключом уже добавлен.
Критические изменения
Добавление заметок, допускающих значение NULL, в NuGet.Configuration — #13250
[Поиск пакетов Dotnet] Результат поиска пакета должен быть "версия" вместо "latestVersion" при выполнении команды "dotnet package search <Name> --exact-match --format json" - #13158
ResolvedDependencyKey должен быть структурой для уменьшения выделения памяти — #13138
[DCR]: централизованное управление пакетами — уважайте props-файл как способ согласия на эту функцию. - #11834
Удаление NuGet.Packaging.Core — #12495
Исправления в этом выпуске
Предупреждайте при обнаружении уязвимостей во время восстановления packages.config в сценариях CLI. - #13253
Остановите использование JObject в файле ресурсов для чтения, чтобы сократить выделение. #12715
Добавление трассировки событий для восстановления для измерения производительности — #13274
Чтение auditSources из файлов конфигурации nuget.config — #13211
SourceRepository.GetResourceAsync должен быть отменен. - #13234
CreateWalkAsync не должен быть рекурсивным — #13222
ProjectModel.HashObjectWriter.OnFlush использует хэш SHA512 по сравнению с более дешевым хэшом, который кажется, как перекилль - #13214
Метаданные пакета владельца — это массив в ФОРМАТЕ JSON, но строка в типах протокола — #13186
Поиск пакета dotnet --подробный подробный выходной таблицы слишком широкий — #13162
Вызовы в SetWarningProperties() имеют расходы на выделение из-за нескольких перечислений - #13151
Использование ConcurrentStack в реализации пула объектов создает большие объемы выделений — #13147
В полях IsBestVersion перечислители HashSet<T> приводят к большому объему расходов на выделение во время восстановления. - #13146
Нерекомендуемый список NuGet.exe в пользу поиска NuGet.exe — #7912
[Поиск пакетов Dotnet] Необработанное исключение возникает при поиске с подробными сведениями о "--детализации" и "-format json" - #13300
dotnet package search
аварийно завершает работу в .NET 9( предварительная версия 2 ночью) — #13286Используйте StringBuilderPool вместо выделения нового StringBuilder - #13285
Передайте соответствующий размер списка<T> - #13284
JsonTextWriter выделяет большое число строк — #13283
Использование StringBuilder.Append() выделяется при добавлении int - 13282
Ненужный бокс перечислителей структур — #13281
Объекты обработки должны быть удалены, чтобы средство завершения не выполнялось — #13280
Избегайте перечисления бокса для коллекций — #13279
[.NET 9 Preview 3] восстановление no-op больше не является не op - #13269
Уменьшение выделения при вызове IVsProjectAdpater.IsCapabilityMatchAsync — #13268
Консолидация реализаций восстановления packages.config путем минимизации несоответствий — #13233
Отмена использования LINQ для обрезки некоторых выделений в AddMSBuildAssets — #13223
PackageSpecWriter вызывает Any в экземплярах ICollection<T>/IList<T> вместо . Count - #13213
StringBuilder.Append(int) вызывает ненужные выделения — #13207
Результаты кэширования задач могут привести ко всем продолжениям в одном потоке — #13206
LibraryDependency создает коллекцию, которая в основном пуста — #13184
PackageSpecWriter должен записывать исходную строку для версий вместо выделения новой версии — #13183
SetCentralDependencies вызывает OrderBy без указания сравнения по умолчанию для сравнения с учетом культуры — #13182
Результаты поиска в формате JSON из поиска пакетов dotnet не должны содержать поля, для которых не указаны значения — #13166
Результат поиска пакета должен быть "totalDownloads" вместо "total downloads" при выполнении команды dotnet package search <Name> -format json - #13165
[поиск пакета dotnet] ошибка загрузки серивного индекса должна быть ошибкой, а не предупреждением. - #13163
Формат поиска пакета dotnet показывает выходные данные справки в дополнение к json-файлу - #13161
Отмена восстановления на основе статического графа не завершает процесс восстановления — #13140
Используйте строку. Содержит вместо IEnumerable.Contains в синтаксическом анализе VersionRange — #13124
Восстановление статического графа не восстанавливает только решение packages.config — #13109
Восстановление NuGet всегда касалось файла project.assets.json, даже если он не нуждается в сообщениях об ошибках журнала. - #13098
Аудит во время восстановления не должен вызывать и завершаться сбоем операции — #13085
При восстановлении элемента с тем же ключом уже добавлена ошибка. - #13067
Прокрутка пользовательского интерфейса PM больше не загружает дополнительные пакеты. - #13063
Проверка кэша восстановления NuGet больше не использует кэш существования файлов — #13058
Добавление ссылки на esproj из проекта ASP.Net приводит к ошибке NU1105 - #12986
RemoteDependencyWalker выделяет много из-за того, что он называется рекурсивно - #12748
[Ошибка]: отмена восстановления msbuild медленна, если настроен недопустимый или недоступный источник — #11813
Восстановление: чрезмерное глубокое клонирование ProjectSpec — #9041
Список фиксаций в этом выпуске
Вклад сообщества
Спасибо всем участникам, которые помогли сделать этот выпуск NuGet потрясающим!
- Эрарндт
- 5659 Сокращение бокса при перечислении списков
- 5662 Использование StringBuilder.AppendInt() в других местах для уменьшения выделения при добавлении целых чисел к StringBuilder
- 5663 Удаление выделений из реализации TextWriter.NewLine
- 5665 Use pooled StringBuilder
- 5661 Избегайте бокса перечислителя в PackageSpecificWarningProperties.AddRangeOfCodes и TransitiveNoWarnUtils.AddToSeen
- 5660 Убедитесь, что объекты процесса удаляются при запуске подключаемых модулей проверки подлинности
- 5664 Указание размера списка в topologicalSortUtility.CalculateRelationships
- 5624 Switch CreateNodeAsync к итеративному подходу
- 5584 Unroll LINQ usage to trim some allocations in AddMSBuildAssets
- 5574 Отмена регистрации нескольких вызовов LINQ
- 5593 Дальнейшее сокращение выделений в CreateGraphNodeAsync
- 5592 Избегайте нескольких перечислений при написании объектов Json
- 5600 Избегайте выделения промежуточной строки, вызванной добавлением StringBuilder(i...
- 5555 Unroll Linq in GetFlags
- 5588 Избегайте бокса перечисления HashSet в IsBestVerion
- 5589 Обновление реализации пула для использования стека с блокировкой, чтобы избежать al...
- 5568 Change ResolvedDependencyKey to astruct
- 5553 Избегайте некоторых выделений в GetCompatibilityData
- 5554 Переключение из кортежа в ValueTuple для ключей словаря
- 5552 Избегайте создания класса записи для вызовов WithExtension
- 5556 Переключение из ConcurrentDictionary в словарь с блокировкой, чтобы избежать повторения...
- 5551 Use string. Содержит вместо IEnumerable.Contains
- 5550 Избегайте перечисления списка<T> бокса
- GenelleM
- Никола Милошавльевич
- 5673 Включение публикации в VMR
- Предварительно созданный пакет System.CommandLine 5625
- брайанроб
- 5650 Добавление инструментирования восстановления