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


Расширения: изменения ссылки на пакеты, влияющие на некоторые пакеты NuGet

При переносе некоторых пакетов NuGet Microsoft.Extensions.* из репозитория dotnet/extensions в dotnet/runtime, как описано на странице aspnet/Announcements#411, изменения в пакетах применяются к некоторым перенесенным пакетам. Обсуждение этого вопроса см. на странице dotnet/aspnetcore#21033.

Представленные версии

5.0, предварительная версия 4

Старое поведение

Некоторые пакеты Microsoft.Extensions.* включают ссылки на пакеты для API, использовавшиеся приложением.

Новое поведение

Приложению может потребоваться добавить зависимости пакета Microsoft.Extensions.*.

Причина изменения

Политики упаковки были обновлены для согласованности с репозиторием dotnet/runtime. В новой политике неиспользуемые ссылки на пакеты удаляются из файлов NUPKG во время упаковки.

Пользователи затронутых пакетов должны добавить прямую зависимость от удаленной зависимости пакета в своем проекте, если используются API из удаленной зависимости пакета. В следующей таблице перечислены затронутые пакеты и соответствующие изменения.

Имя пакета Описание изменения
Microsoft.Extensions.Configuration.Binder Удалена ссылка на Microsoft.Extensions.Configuration
Microsoft.Extensions.Configuration.Json Удалена ссылка на System.Threading.Tasks.Extensions
Microsoft.Extensions.Hosting.Abstractions Удалена ссылка на Microsoft.Extensions.Logging.Abstractions
Microsoft.Extensions.Logging Удалена ссылка на Microsoft.Extensions.Configuration.Binder
Microsoft.Extensions.Logging.Console Удалена ссылка на Microsoft.Extensions.Configuration.Abstractions
Microsoft.Extensions.Logging.EventLog Удалена ссылка на System.Diagnostics.EventLog для моникера целевой платформы .NET Framework 4.6.1
Microsoft.Extensions.Logging.EventSource Удалена ссылка на System.Threading.Tasks.Extensions
Microsoft.Extensions.Options Удалена ссылка на System.ComponentModel.Annotations

Например, ссылка на пакет Microsoft.Extensions.Configuration была удалена из Microsoft.Extensions.Configuration.Binder. В пакете не использовался API из зависимости. Пользователи Microsoft.Extensions.Configuration.Binder, которые зависят от API из Microsoft.Extensions.Configuration, должны добавить прямую ссылку на него в своем проекте.

Затронутые API

Нет