Nuget обновляет Azure webjobs SDK 2.3 до 3.0 при использовании ServiceBus

#azure #nuget #azure-webjobs #azure-webjobssdk

#azure #nuget #azure-webjobs #azure-webjobssdk

Вопрос:

Версия Webjobs 3 выпущена примерно с сентября, поэтому я хочу обновиться с 2.3.0 до последней версии, в настоящее время 3.0.4.

Microsoft.Azure.Однако пакет Webjobs.servicebus блокирует мне это. Я попытался просмотреть образцы webjobs sdk, но у них была точно такая же проблема с пакетом servicebus, блокирующим обновление.

Вопросы

  1. Как правильно обновить пакет webjobs nuget?
  2. Я ошибаюсь, что версия 3 уже готова к производству?

Ответ №1:

На момент написания этой статьи это была новейшая версия Microsoft.Azure.WebJobs.Версия ServiceBus 2.3.0. Просматривая пакет на nuget.org и расширении зависимостей, я вижу это:

 Microsoft.Azure.ServiceBus.EventProcessorHost (>= 2.2.10)
Microsoft.Azure.WebJobs (= 2.3.0)
Microsoft.Extensions.Logging.Abstractions (>= 1.1.1) Newtonsoft.Json
(>= 9.0.1) WindowsAzure.ServiceBus (>= 3.4.5)
  

Обратите внимание, как меняется номер версии для Microsoft.Azure.Зависимость WebJobs использует = и не >= похожа на другие зависимости. Поэтому NuGet получает указание не разрешать разные версии пакета.

Вы могли бы попробовать несколько бета-пакетов версии 3.0.0, которые, что интересно, используют >= для зависимости WebJobs, поэтому вы можете использовать последнюю «релизную» версию пакета WebJobs при использовании бета-пакета ServiceBus. Или, если вы можете выполнить миграцию из packages.config в PackageReference, NuGet может разрешить вам использовать «несовместимые» версии пакетов с предупреждением, но если автор пакета сообщает вам, что их пакет работает только с определенной версией зависимости, повышается риск сбоев во время выполнения при использовании другой версии.

Ответ №2:

Просматривая пакет Microsoft.Azure.WebJobs.ServiceBus на nuget.org похоже, что он не поддерживается:

  • Последний выпуск был выпущен 29 ноября 2018 года — более года назад.
  • Последняя бета-версия была выпущена 30 августа 2018 года, также более года назад. Несколько бета-версий, за которыми не следует выпуск.

Это выглядит заброшенным. Был ли переименован пакет? Или функциональность, вложенная в другой пакет? Почему здесь нет указаний по пути обновления?

Несоответствие между зависимостями этого пакета и других используемых пакетов начинает вызывать у нас проблемы.